table of contents
- experimental 0.09-2
RDF::Lazy::Node(3pm) | User Contributed Perl Documentation | RDF::Lazy::Node(3pm) |
NAME¶
RDF::Lazy::Node - A node in a lazy RDF graph
DESCRIPTION¶
You should not directly create instances of this class, but use RDF::Lazy as node factory to create instances of RDF::Lazy::Resource, RDF::Lazy::Literal, and RDF::Lazy::Blank.
$graph->resource( $uri ); # returns a RDF::Lazy::Resource $graph->literal( $string ); # returns a RDF::Lazy::Literal $graph->blank( $id ); # returns a RDF::Lazy::Blank
A lazy node contains a RDF::Trine::Node and a pointer to the RDF::Lazy graph where the node is located in. You can create a RDF::Lazy::Node from a RDF::Trine::Node just like this:
$graph->uri( $trine_node )
DESCRIPTION¶
This class wraps RDF::Trine::Node and holds a pointer to the graph (RDF::Lazy) which a node belongs to. In detail there are node types RDF::Lazy::Literal, RDF::Lazy::Resource, and RDF::Lazy::Blank.
METHODS¶
str¶
Returns a string representation of the node's value. Is automatically called on string conversion ("$x" equals "$x->str").
esc¶
Returns a HTML-escaped string representation. This can safely be used in HTML and XML.
is_literal / is_resource / is_blank¶
Returns true if the node is a literal, resource, or blank node.
graph¶
Returns the underlying graph RDF::Lazy that the node belongs to.
type ( [ @types ] )¶
Returns some rdf:type of the node (if no types are provided) or checks whether this node is of any of the provided types.
a ( [ @types ] )¶
Shortcut for "type".
is ( $check1 [, $check2 ... ] )¶
Checks whether the node fullfills some matching criteria, for instance
$x->is('') # is_literal $x->is(':') # is_resource $x->is('-') # is_blank $x->is('@') # is_literal and has language tag $x->is('@en') # is_literal and has language tag 'en' (is_en) $x->is('@en-') # is_literal and is_en_ $x->is('^') # is_literal and has datatype $x->is('^^') # is_literal and has datatype
ttl¶
Returns an RDF/Turtle representation of the node's bounded connections.
rel ( $property [, @filters ] )¶
Traverse the graph and return the first matching object.
rels¶
Traverse the graph and return all matching objects.
rev ( $property [, @filters ] )¶
Traverse the graph and return the first matching subject.
revs¶
Traverse the graph and return all matching subjects.
trine¶
Returns the underlying RDF::Trine::Node. DO NOT USE THIS METHOD!
qname¶
Returns a qualified string, if possible, or the empty string.
TRAVERSING THE GRAPH¶
Any other method name is used to query objects. The following three statements are equivalent:
$x->rel('foaf:name'); $x->graph->rel( $x, 'foaf_name' ); $x->rel('foaf_name'); $x->foaf_name;
You can also add filters in a XPath-like language (the use of RDF::Lazy in a template is an example of a "RDFPath" language):
$x->dc_title('@en') # literal with language tag @en $x->dc_title('@en-') # literal with language tag @en or @en-... $x->dc_title('') # any literal $x->dc_title('@') # literal with any language tag $x->dc_title('^') # literal with any datatype $x->foaf_knows(':') # any resource ...
2019-02-20 | perl v5.28.1 |