RDF::Core::Parser - RDF Parser
A module for parsing XML documents containing RDF data. It's based on
XML::Parser. Parser goes through XML and calls what is referenced in Assert
option for each statement found. CAUTION: If you parse more documents into one
model, you need to set distinct BNodePrefix (see below) for each document.
This way you avoid mixing anonymous resources from distinct documents
together.
require RDF::Core::Parser;
my %options = (Assert => \&handleAssert,
BaseURI => "http://www.foo.com/",
BNodePrefix => "genid"
);
my $parser = new RDF::Core::Parser(%options);
$parser->parseFile('./rdfFile.xml');
#or
$parser->parse($rdfString);
- •
- new(%options)
Available options are
- Assert
A reference to a subroutine, that is called for every
assertion that parser generates.
- BaseURI
A base URI of parsed document. It will be used to resolve
relative URI references.
- BNodePrefix
Blank node identifier is generated as "_:"
concatenated with BNodePrefix value concatenated with counter number.
Default BnodePrefix is "a".
- InlineURI
Deprecated.
- parse($string)
- parseFile($fileName)
Assert handler is called with key value pairs in a parameters array.
Keys are:
- subject_ns, subject_name, subject_uri
namespace, local value and URI of subject
- predicate_ns, predicate_name, predicate_uri
namespace, local value and URI of predicate
- object_ns, object_name, object_uri
namespace, local value and URI of object, if the object is a
resource
or
- object_literal, object_lang, object_datatype
object value for literal, it's language and datatype
This package is subject to the MPL (or the GPL alternatively).
Ginger Alliance, rdf@gingerall.cz