|
|
| |
RDF::Trine::Iterator::Bindings(3) |
User Contributed Perl Documentation |
RDF::Trine::Iterator::Bindings(3) |
RDF::Trine::Iterator::Bindings - Iterator class for bindings query results
This document describes RDF::Trine::Iterator::Bindings version 1.019
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;
}
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).
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.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |