NAME

RDF::RDB2RDF::R2RML - map relational database to RDF using R2RML

SYNOPSIS

my $mapper = RDF::RDB2RDF->new('R2RML', $r2rml);
print $mapper->process_turtle($dbh);

DESCRIPTION

This class offers support for W3C R2RML, based on the 20 Sept 2011 working draft. See the BUGS section below for a list on unimplemented areas.

This is a subclass of RDF::RDB2RDF::Simple. Differences noted below...

Constructor

  • RDF::RDB2RDF::R2RML->new($r2rml)

  • RDF::RDB2RDF->new('R2RML', $r2rml)

    A single parameter is expected, this can either be an R2RML document as a Turtle string, or an RDF::Trine::Model containing R2RML data. If a Turtle string, then the namespaces from it are also kept.

Methods

  • process_turtle($dbh, %options)

    The mapping is included as an R2RML comment at the top of the Turtle. Passing no_r2rml => 1 can disable that feature.

BUGS

Limitations

  • rr:RefObjectMap, rr:parentTriplesMap, rr:joinCondition, rr:JoinCondition, rr:child, rr:parent are only partially working.

  • rr:defaultGraph is not understood.

SEE ALSO

RDF::Trine, RDF::RDB2RDF, RDF::RDB2RDF::Simple.

http://www.perlrdf.org/.

http://www.w3.org/TR/2011/WD-r2rml-20110920/.

AUTHOR

Toby Inkster <tobyink@cpan.org>.

COPYRIGHT

Copyright 2011 Toby Inkster

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

DISCLAIMER OF WARRANTIES

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.