NAME
RDF::Trine::Node::Formula - RDF Node class for formulae / graph literals
DESCRIPTION
Formulae are implemented as a subclass of literals. Parts of Trine that have no special knowledge about formulae (e.g. the Turtle serialiser) will just see them as literals with a particular datatype URI (http://open.vocab.org/terms/Formula).
If your code needs to detect formulae nodes, try:
use Scalar::Util qw[blessed];
if (blessed($node) && $node->isa('RDF::Trine::Node::Formula'))
{ ... do stuff to formulae ... }
or perhaps
use Scalar::Util qw[blessed];
if (blessed($node) && $node->can('pattern'))
{ ... do stuff to formulae ... }
Constructor
new ( $pattern )
-
Returns a new Formula structure. This is a subclass of RDF::Trine::Node::Literal.
$pattern is an RDF::Trine::Pattern or a string capable of being parsed with RDF::Trine::Parser::Notation3->parse_formula.
Methods
pattern ( $node )
-
Returns the formula as an RDF::Trine::Pattern.
forAll
-
Returns the a list of nodes with the @forAll quantifier.
This is a fairly obscure bit of N3 semantics.
forSome
-
Returns the a list of nodes with the @forSome quantifier.
This is a fairly obscure bit of N3 semantics.
as_literal_notation
-
Returns the formula in Notation-3-like syntax, excluding the wrapping "{"..."}".
Uses absolute URIs whenever possible, avoiding relative URI references, QNames and keywords.
from_literal_notation ( $string, $base )
-
Modifies the formula's value using Notation 3 syntax, excluding the wrapping "{"..."}".
equal ( $node )
-
Returns true if the two nodes are equal, false otherwise.
TODO - really need a "not equal, but equivalent" method.
BUGS
Please report any bugs to http://rt.cpan.org/Dist/Display.html?Queue=RDF-TriN3.
SEE ALSO
RDF::Trine::Node, RDF::Trine::Pattern.
AUTHOR
Toby Inkster <tobyink@cpan.org>
Based on RDF::Trine::Node::Literal by Gregory Todd Williams.
COPYRIGHT AND LICENCE
Copyright (c) 2006-2010 Gregory Todd Williams.
Copyright (c) 2010-2012 Toby Inkster.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
DISCLAIMER OF WARRANTIES
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.