DOKK / manpages / debian 11 / librdf-trine-perl / RDF::Trine::VariableBindings.3pm.en
RDF::Trine::VariableBindings(3pm) User Contributed Perl Documentation RDF::Trine::VariableBindings(3pm)

RDF::Trine::VariableBindings - Variable bindings

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

  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.
"variables"
"project ( @keys )"
Returns a new binding with values for only the keys listed.
"as_string"
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 <gwilliams@cpan.org>

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.

2018-11-03 perl v5.28.0