Provided by: librdf-trine-perl_1.014-1_all NAME

RDF::Trine::Graph - Materialized RDF Graphs for testing isomorphism

VERSION

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

SYNOPSIS

use RDF::Trine::Graph;
my \$a = RDF::Trine::Graph->new( \$model_a );
my \$b = RDF::Trine::Graph->new( \$model_b );
print "graphs are " . (\$a->equals( \$b ) ? "the same" : "different");

DESCRIPTION

RDF::Trine::Graph provdes a mechanism for testing graph isomorphism based on graph triples
from either a RDF::Trine::Model or a RDF::Trine::Iterator.  Isomorphism testing requires
materializing all of a graph's triples in memory, and so should be used carefully in
situations with large graphs.

METHODS

"new ( \$model )"
"new ( \$iterator )"
Returns a new graph from the given RDF::Trine::Model or RDF::Trine::Iterator::Graph
object.

"equals ( \$graph )"
Returns true if the invocant and \$graph represent two equal RDF graphs (e.g.  there
exists a bijection between the RDF statements of the invocant and \$graph).

"is_subgraph_of ( \$graph )"
Returns true if the invocant is a subgraph of \$graph. (i.e. there exists an injection
of RDF statements from the invocant to \$graph.)

"injection_map ( \$graph )"
If the invocant is a subgraph of \$graph, returns a mapping of blank node identifiers
from the invocant graph to \$graph as a hashref. Otherwise returns false. The solution
is not always unique; where there exist multiple solutions, the solution returned is
arbitrary.

"split_blank_statements"
Returns two array refs, containing triples with blank nodes and triples without any
blank nodes, respectively.

"get_statements"
Returns a RDF::Trine::Iterator::Graph object for the statements in this graph.

"error"
Returns an error string explaining the last failed "equal" call.

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