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 ... }
METHODS
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.
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.
AUTHOR
Toby Inkster <tobyink@cpan.org>
Based on RDF::Trine::Node::Literal by Gregory Todd Williams.
COPYRIGHT
Copyright (c) 2006-2010 Gregory Todd Williams.
Copyright (c) 2010 Toby Inkster.
All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.