Provided by: librdf-trine-perl_1.019-4_all bug

NAME

       RDF::Trine::Iterator::Bindings - Iterator class for bindings query results

VERSION

       This document describes RDF::Trine::Iterator::Bindings version 1.019

SYNOPSIS

        use RDF::Trine::Iterator::Bindings;

        my $iterator = RDF::Trine::Iterator::Bindings->new( \&data, \@names );
        while (my $row = $iterator->next) {
          # $row is a HASHref containing variable name -> RDF Term bindings
          my @vars = keys %$row;
          print $row->{ 'var' }->as_string;
        }

METHODS

       Beyond the methods documented below, this class inherits methods from the RDF::Trine::Iterator class.

       "new ( \@results, \@names, %args )"
       "new ( \&results, \@names, %args )"
           Returns  a  new  SPARQL  Result  interator  object.  Results  must  be either a reference to an array
           containing results or a CODE reference that acts as an  iterator,  returning  successive  items  when
           called, and returning undef when the iterator is exhausted.

       "materialize"
           Returns  a  materialized  version  of the current binding iterator.  The materialization process will
           leave this iterator empty. The materialized iterator that is returned should be used for  any  future
           need for the iterator's data.

       "project ( @columns )"
           Returns a new stream that projects the current bindings to only the given columns.

       "join_streams ( $stream, $stream )"
           Performs a natural, nested loop join of the two streams, returning a new stream of joined results.

       "nested_loop_join ( $outer, $inner )"
           Performs a natural, nested loop join of the two streams, returning a new stream of joined results.

           Note  that  the values from the $inner iterator are fully materialized for this join, and the results
           of the join are in the order of values from the $outer iterator. This suggests that:

           * If sorting needs to be preserved, the $outer iterator  should  be  used  to  determine  the  result
           ordering.

           *  If  one  iterator  is much smaller than the other, it should likely be used as the $inner iterator
           since materialization will require less total memory.

       "sorted_by"
       "binding_value_by_name ( $name )"
           Returns the binding of the named variable in the current result.

       "binding_value ( $i )"
           Returns the binding of the $i-th variable in the current result.

       "binding_values"
           Returns a list of the binding values from the current result.

       "binding_names"
           Returns a list of the binding names.

       "binding_name ( $i )"
           Returns the name of the $i-th result column.

       "bindings_count"
           Returns the number of variable bindings in the current result.

       "is_bindings"
           Returns true if the underlying result is a set of variable bindings.

       "as_json ( $max_size )"
           Returns a JSON serialization of the stream data.

       "as_xml ( $max_size )"
           Returns an XML serialization of the stream data.

       "as_string ( $max_size [, \$count] )"
           Returns a string table serialization of the stream data.

       "as_statements ( $pattern | @names )"
           Returns a RDF::Trine::Iterator::Graph with the statements of the stream.

           If $pattern, an RDF::Trine::Pattern object, is  given  as  an  argument,  each  of  its  triples  are
           instantiated   with   variable   bindings   from   each   row   of  the  iterator,  and  returned  as
           RDF::Trine::Statement objects from a new RDF::Trine::Iterator::Graph iterator.

           If 3 variable @names are supplied, their corresponding variable bindings in each row of the  iterator
           are  used  (in  order) as the subject, predicate, and object of new RDF::Trine::Statement objects and
           returned from a new RDF::Trine::Iterator::Graph iterator.

       "print_xml ( $fh, $max_size )"
           Prints an XML serialization of the stream data to the filehandle $fh.

       "construct_args"
           Returns the arguments necessary to pass to the stream  constructor  _new  to  re-create  this  stream
           (assuming the same closure as the first argument).

DEPENDENCIES

       JSON

       Scalar::Util

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.

perl v5.38.2                                       2024-01-13                RDF::Trine::Iterator::Bindings(3pm)