NAME

Catmandu::Exporter::RDF - serialize RDF data

SYNOPSIS

In Perl code:

use Catmandu -all;

my $exporter = exporter('RDF',
    file => 'export.rdf',
    type => 'XML',
    fix  => 'rdf.fix'
);

$exporter->add( $aref ); # pass RDF data in aREF encoding

$exporter->commit;

DESCRIPTION

This Catmandu::Exporter exports RDF data in different RDF serializations.

CONFIGURATION

file
fh
encoding
fix

Default configuration options of Catmandu::Exporter. The option fix is supported as derived from Catmandu::Fixable. For every add or for every item in add_many the given fixes will be applied first.

type

A serialization form can be set with option type with default value NTriples. The option must refer to a subclass of RDF::Trine::Serializer, for instance Turtle for RDF/Turtle with RDF::Trine::Serializer::Turtle. The first letter is transformed uppercase, so format => 'turtle' will work as well. In addition there are aliases ttl for Turtle, n3 for Notation3, xml and XML for RDFXML, json for RDFJSON.

When the option type is set to 'NTriples' the export can be streamed in all other cases the results are exported in bulk after commit().

ns

The option ns can refer to an instance of or to a constructor argument of RDF::NS. Use a fixed date, such as "20130816" to make sure your URI namespace prefixes are stable.

METHODS

See also Catmandu::Exporter.

add( ... )

RDF data is added given in another RDF Encoding Form (aREF) as implemented with RDF::aREF and defined at http://github.com/gbv/aref.

count

Returns the number of times add has been called. In contrast to other Catmandu exporters, this does not reflect the number of exporter records because RDF data is always merged to one RDF graph.

uri( $uri )

Expand and abbreviated with RDF::NS. For instance "dc:title" is expanded to "http://purl.org/dc/elements/1.1/title".

SEE ALSO

Serialization is based on RDF::Trine::Serializer.