This is not automatically built or installed at present since this interface may not be required. You can easily build it by hand as follows
cd perl make build-perl make test-perl # optional
To install it system wide (this is optional) do this as root:
root# make install-perl
The Redland interface has been tested with Perl 5.005, 5.6.0 and 5.6.1.
If you did the optional install above, run the perl example program with:
perl ./example.pl # ./example.pl might work if your perl is in /usr/bin/perl
Otherwise, to run in the source tree do:
perl -Iblib/arch -Iblib/lib ./example.pl
and the result should be:
Creating storage
Creating model
Creating statement
Adding statement to model
Parsing URI (file) dc.rdf
Parsing added 3 statements
Printing all statements
Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/title], "Dave Beckett's Home Page"}
Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/description], "The generic home page of Dave Beckett."}
Searching model for statements matching predicate http://purl.org/dc/elements/1.1/creator
Matching Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
Subject: [http://purl.org/net/dajobe/]
Predicate: [http://purl.org/dc/elements/1.1/creator]
Object: Dave Beckett
Matching Statement: {[http://purl.org/net/dajobe/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
Subject: [http://purl.org/net/dajobe/]
Predicate: [http://purl.org/dc/elements/1.1/creator]
Object: Dave Beckett
Writing model to test-out.rdf as rdf/xml
Done
The Perl API is an object-based API reflecting the same structure of the Redland objects with simple mappings between them:
| Concept | Redland Class | Perl Class | Purpose |
|---|---|---|---|
| Resource / Literal | librdf_node | RDF::Redland::Node | RDF Model & Syntax nodes |
| Statement / Triple | librdf_statement | RDF::Redland::Statement | RDF Model & Syntax arcs (statements, triples) [isa Resource] |
| Model | librdf_model | RDF::Redland::Model | Set of Statements usually held in one Storage. |
| Storage | librdf_storage | RDF::Redland::Storage | Storage for Models either persistant or in-memory. |
| Stream | librdf_stream | RDF::Redland::Stream | Providing sequences of Statements from Parsers, queries. |
| Parser | librdf_parser | RDF::Redland::Parser | Syntaxes parsers delivering Stream of Statements or writing to a Model |
| Serializer | librdf_serializer | RDF::Redland::Serializer | Serializes a Model into a syntax such as RDF/XML |
| Iterator | librdf_iterator | RDF::Redland::Iterator | Enumerating lists (of Node) from queries. |
| URI | librdf_uri | RDF::Redland::URI | Provides URIs for Resources, Parsers, ... |
| World | RDF::Redland | RDF wrapper class handling Redland startup/shutdown | |
| Digest | librdf_digest | Internal content digest class | |
| Hash | librdf_hash | Internal key:value maps class | |
| List | librdf_list | Internal list class | |
| RDF::Redland::RSS | Perl Module providing RSS 1.0 support. |
Either use any of the RDF::Redland:: module links above or start at the main RDF::Redland module and follow the references from there.
Copyright 2000-2002 Dave Beckett, Institute for Learning and Research Technology, University of Bristol