RDF::Trine::VariableBindings(3) Variable bindings


This document describes RDF::Trine::VariableBindings version 1.014


use RDF::Trine qw(literal);
use RDF::Trine::VariableBindings;
my $vb = RDF::Trine::VariableBindings->new( {} );
$vb->set( foo => literal("bar") );
$vb->set( baz => literal("blee") );
$vb->variables; # qw(foo baz)

my $x = RDF::Trine::VariableBindings->new( { foo => literal("bar") } );
$x->set( greeting => literal("hello") );
my $j = $vb->join( $x ); # { foo => "bar", baz => "blee", greeting => "hello" }
my @keys = qw(baz greeting);
my $p = $j->project( @keys ); # { baz => "blee", greeting => "hello" }
print $p->{greeting}->literal_value; # "hello"


RDF::Trine::VariableBindings objects provide a mapping from variable names to RDF::Trine::Node objects. The objects may be used as a hash reference, with variable names used as hash keys.


"new ( \%bindings )"
"set ( $variable_name => $node )"
"join ( $row )"
Returns a new VariableBindings object based on the join of this object and $row. If the two variable binding objects cannot be joined, returns undef.
"project ( @keys )"
Returns a new binding with values for only the keys listed.
Returns a string representation of the variable bindings.
"label ( $label => $value )"
Sets the named $label to $value for this variable bindings object. If no $value is given, returns the current label value, or undef if none exists.
"copy_labels_from ( $vb )"
Copies the labels from $vb, adding them to the labels for this object.


Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/perlrdf/issues>.


 Gregory Todd Williams <[email protected]>


Copyright (c) 2006-2012 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.