NAME¶
RDF::Redland::Model - Redland RDF Model Class
SYNOPSIS¶
use RDF::Redland;
my $storage=new RDF::Redland::Storage("hashes", "test", "new='yes',hash-type='memory'");
my $model=new RDF::Redland::Model($storage, "");
...
my(@sources)=$model->targets($predicate_node, $object_node);
...
DESCRIPTION¶
Manipulate the RDF model.
CONSTRUCTORS¶
- new STORAGE OPTIONS_STRING
- new_with_options STORAGE OPTIONS_HASH
- Create a new RDF::Redland::Model object using RDF::Redland::Storage object
STORAGE with a options. The options can be given either as a string
in the first form as OPTIONS_STRING. The options take the form
key1='value1',key2='value2'. The quotes are required. In the second case
OPTIONS_HASH is a reference to a Perl hash of options.
- new_from_model MODEL
- Create a new model from an existing RDF::Redland::Model MODEL (copy
constructor).
METHODS¶
- size
- Return the size of the model (number of statements).
- sync
- Synchronise the model to the underlying storage.
- add SUBJECT PREDICATE OBJECT
- Add a new statement to the model with SUBJECT, PREDICATE and
OBJECT. These can be RDF::Redland::Node, RDF::Redland::URI or perl
URI objects.
- add_typed_literal_statement SUBJECT PREDICATE STRING [XML_LANGUAGE
[DATATYPE]]
- Add a new statement to the model containing a typed literal string object
STRING with (optional) XML language (xml:lang attribute)
XML_LANGUAGE and (optional) datatype URI DATATYPE.
XML_LANGUAGE or DATATYPE can either or both be set to
undef.
- add_statement STATEMENT [CONTEXT] | NODE NODE NODE [CONTEXT]
- Add RDF::Redland::Statement STATEMENT or the statement formed by
NODE NODE NODE to the model. If the optional CONTEXT is
given, associate it with that context. Any of NODE or
CONTEXT can be a RDF::Redland::Node, RDF::Redland::URI or perl URI
object.
- add_statements STREAM [CONTEXT]
- Add the statements from the RDF::Redland::Stream STREAM to the
model. If the optional CONTEXT is given, associate it with that
context. CONTEXT can be a RDF::Redland::Node, RDF::Redland::URI or
perl URI object.
- remove_statement STATEMENT [CONTEXT] | NODE NODE NODE [CONTEXT]
- Remove RDF::Redland::Statement STATEMENT or the statement formed by
NODE NODE NODE from the model. If the optional CONTEXT is
given, remove only the statement stored with that context. Any of
NODE or CONTEXT can be a RDF::Redland::Node,
RDF::Redland::URI or perl URI object.
- remove_context_statements CONTEXT
- Remove all RDF::Redland::Statement STATEMENTs from the model with
the given CONTEXT context. CONTEXT can be a
RDF::Redland::Node, RDF::Redland::URI or perl URI object.
- contains_statement STATEMENT
- Return non 0 if the model contains RDF::Redland::Statement
STATEMENT.
- as_stream [CONTEXT]
- Return a new RDF::Redland::Stream object seralising the entire model, or
just those statements with CONTEXT, as RDF::Redland::Statement
objects. If given, CONTEXT can be a RDF::Redland::Node,
RDF::Redland::URI or perl URI object.
- find_statements STATEMENT [CONTEXT]
- Find all matching statements in the model matching partial
RDF::Redland::Statement STATEMENT (any of the subject, predicate,
object RDF::Redland::Node can be undef). If CONTEXT is given, finds
statements only in that context.
In an array context, returns an array of the matching
RDF::Redland::Statement objects. In a scalar context, returns the
RDF::Redland::Stream object representing the results.
- sources ARC TARGET
- Get all source RDF::Redland::Node objects for a given arc ARC,
target TARGET> RDF::Redland::Node objects as a list of
RDF::Redland::Node objects.
- arcs SOURCE TARGET
- Get all arc RDF::Redland::Node objects for a given source SOURCE,
target TARGET RDF::Redland::Node objects as a list of
RDF::Redland::Node objects.
- targets SOURCE ARC
- Get all target RDF::Redland::Node objects for a given source
SOURCE, arc ARC RDF::Redland::Node objects as a list of
RDF::Redland::Node objects.
- sources_iterator ARC TARGET
- Get all source RDF::Redland::Node objects for a given arc ARC,
target TARGET RDF::Redland::Node objects as an
RDF::Redland::Iterator or undef on failure.
- arcs_iterator SOURCE TARGET
- Get all arc RDF::Redland::Node objects for a given source SOURCE,
target TARGET RDF::Redland::Node objects as an
RDF::Redland::Iterator or undef on failure.
- targets_iterator SOURCE ARC
- Get all target RDF::Redland::Node objects for a given source
SOURCE, arc ARC RDF::Redland::Node objects as an
RDF::Redland::Iterator or undef on failure.
- source ARC TARGET
- Get one source RDF::Redland::Node object that matches a given arc
ARC, target TARGET RDF::Redland::Node objects or undef if
there is no match.
- arc SOURCE TARGET
- Get one arc RDF::Redland::Node object that matches a given source
SOURCE, target TARGET RDF::Redland::Node objects or undef if
there is no match.
- target SOURCE ARC
- Get one target RDF::Redland::Node object that matches a given source
SOURCE, arc ARC RDF::Redland::Node objects or undef if there
is no match.
- contexts
- Get all context RDF::Redland::Node objects in the model
- feature URI [VALUE]
- Get/set a model feature. The feature is named via RDF::Redland::URI
URI and the value is a RDF::Redland::Node. If VALUE is
given, the feature is set to that value, otherwise the current value is
returned.
- query_execute QUERY
- Execute the QUERY RDF::Redland::Query against the model returning a
result set RDF::Redland::QueryResults or undef on failure.
- load URI [SYNTAX-NAME [ MIME-TYPE [SYNTAX-URI [HANDLER ]]]
- Load content from URI into the model, guessing the parser.
- to_string [BASE-URI [SYNTAX-NAME [ MIME-TYPE [SYNTAX-URI]]]
- Serialize the model to a syntax. If no serializer name is given, the
default serializer RDF/XML is used.
OLDER METHODS¶
- serialise
- serialize
- Return a new RDF::Redland::Stream object seralising the model as
RDF::Redland::Statement objects. Replaced by as_stream to reduce confusion
with the RDF::Redland::Serializer class.
SEE ALSO¶
RDF::Redland::Storage, RDF::Redland::Node and RDF::Redland::Statement