RDF::TriN3 - notation 3 extensions for RDF::Trine
This module extends RDF::Trine in three ways:
In addition, a parser is provided for Notation 3 extended with ShorthandRDF notation - http://esw.w3.org/ShorthandRDF.
Implementing N3 logic and the cwm built-ins is considered outside the scope of this distribution, though I am interested in doing that as part of a separate project.
RDF::TriN3 currently relies entirely on RDF::Trine to provide implementations of the concept of graphs, and storage. Thus any graphs that can't be represented using RDF::Trine can't be represented in RDF::TriN3. RDF::Trine's graph model is a superset of RDF, but a subset of Notation 3's model. While this allows literal subjects, and literal and blank node predicates, these may not be supported by all storage engines; additionally top-level variables (?foo), and top-level @forSome and @forAll (i.e. not nested inside a formula) might cause problems.
RDF::Trine::Store::DBI has some issues with literal subjects,
and literal and blank node predicates,
allowing them to be stored,
but not retrieved.
From version 0.128,
RDF::Trine::Store::DBI offers a
clear_restrictions method that should resolve these issues.
RDF::Trine::Store::Memory is fine.
Other stores are not tested.
Please report any bugs to http://rt.cpan.org/.
Toby Inkster <email@example.com>.
Copyright 2010-2012 Toby Inkster
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
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.