Attean::API::Binding(3)
Name to term bindings
VERSION
This document describes Attean::API::Binding version 0.017
DESCRIPTION
The Attean::API::Binding role defines a common API for all objects that map
names to Attean::API::Term objects. This includes triples, quads, and
SPARQL results (variable bindings).
REQUIRED METHODS
Classes consuming this role must provide the following methods:
- "value( $name )"
-
Returns the Attean::API::Term object mapped to the variable named $name,
or "undef" if no such term is mapped.
- "variables"
-
Returns a list of the variable names mapped to Attean::API::Term objects in
this mapping.
- "apply_map( $mapper )"
-
Returns a new mapping object (of the same class as the referent) with term
objects rewritten using the supplied Attean::Mapper object $mapper.
METHODS
This role provides default implementations of the following methods:
- "mapping"
-
Returns a HASH mapping variable names to Attean::API::Term objects.
- "values"
-
Returns a list of Attean::API::Term objects corresponding to the variable
names returned by the referent's "variables" method.
- "tuples_string"
-
Returns a string serialization of the Attean::API::Term objects in the order
they are returned by the referent's "values" method.
- "as_string"
-
Returns a string serialization of the variable bindings.
- "has_blanks"
-
Returns true if any variable is bound to an Attean::API::Blank term, false
otherwise.
- "is_ground"
-
Returns tue is all the bound values consume Attean::API::Term, false otherwise.
- "values_consuming_role( $role )"
-
Returns the list of bound values that consume $role.
- "tree_attributes"
-
Returns the variables which are bound in this object.
- "apply_bindings( $binding )"
-
Construct a new binding by replacing variables with their bound values from
$binding.
- "parse ( $string )"
-
Returns a triple or quad pattern object using the variables and/or terms
parsed from $string in SPARQL syntax.
- "project( @keys )"
-
Returns a new Attean::Result binding which contains variable-value mappings
from the invocant for every variable name in @keys.
COPYRIGHT
Copyright (c) 2014--2016 Gregory Todd Williams.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.