---
name: "RDF::Trine::VariableBindings"
section: "3pm"
platform: "linux"
package: "librdf-trine-perl"
version: "1.019-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/RDF::Trine::VariableBindings"
---

# RDF::Trine::VariableBindings(3pm)

Variable bindings

## NAME

RDF::Trine::VariableBindings - Variable bindings

## VERSION

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

## SYNOPSIS

```
  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"
```

## DESCRIPTION

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.

## METHODS

- "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.

## BUGS

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

## AUTHOR

```
 Gregory Todd Williams <gwilliams@cpan.org>
```

## COPYRIGHT

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.
