Redland

Dave Beckett

Redland RDF API Redland RDF Language Bindings Raptor RDF Syntax Library Rasqal RDF Query Library
Hosted by
Dreamhost

since 2005.

Data

Redland librdf Language Bindings - Perl Interface

Installing the Redland Perl interface

This is built if --with-perl is given to the configure line, or --with-perl=perl5.8 to use a particular perl version/program. The standard 'make' at the top level will build it.

You can also compile the perl interface by hand as follows:

 cd perl
 make
 # optional
 make check

To install it system wide do this as root (or maybe via sudo make install):

 root# make install

The Redland Perl interface is mature has been tested with the following versions (5.6.0 is the likely minimum; 5.005 is too old).

5.8.3 on Solaris/Sparc
5.8.3 on Linux/x86
5.8.2 on Linux/x86
5.8.1-RC3 on OSX/PPC
5.8.0 on Linux/x86
5.8.0 on Linux/IA64

Testing the Redland Perl interface

If you did the optional install above, run the perl example program with:

 perl ./example.pl

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
 Adding statement (new Statement(n, n, n)) to model
 Adding statement (n,n,n) to model
 Parsing URI (file) ../data/dc.rdf
 Parsing added 3 statements
 Printing all statements
 Statement: {[http://example.org/foo], [http://example.org/foo], [http://example.org/foo]}
 Statement: {[http://example.org/foo], [http://example.org/foo], [http://example.org/foo]}
 Statement: {[http://www.dajobe.org/], [http://purl.org/dc/elements/1.1/title], "Dave Beckett's Home Page"}
 Statement: {[http://www.dajobe.org/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
 Statement: {[http://www.dajobe.org/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
 Statement: {[http://www.dajobe.org/], [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://www.dajobe.org/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
 Subject: [http://www.dajobe.org/]
 Predicate: [http://purl.org/dc/elements/1.1/creator]
 Object: Dave Beckett
 Matching Statement: {[http://www.dajobe.org/], [http://purl.org/dc/elements/1.1/creator], "Dave Beckett"}
 Subject: [http://www.dajobe.org/]
 Predicate: [http://purl.org/dc/elements/1.1/creator]
 Object: Dave Beckett
 Searching model for targets of subject http://www.dajobe.org/ predicate http://purl.org/dc/elements/1.1/creator
 Matching Node: Dave Beckett
 Matching Node: Dave Beckett
 Querying for dc:titles:
 result 1: {
 a=[http://www.dajobe.org/]
 c=Dave Beckett's Home Page
 }
 Writing model to test-out.rdf as rdf/xml
Done

Using the Redland Perl API

Read the Redland Perl POD documentation for full details of the classes and methods provided along with examples of use.

The Perl API is an object-based API reflecting the same structure of the Redland objects with simple mappings between them:

ConceptRedland ClassPerl ClassPurpose
Resource / Literallibrdf_node RDF::Redland::Node ,
RDF::Redland::BlankNode ,
RDF::Redland::URINode ,
RDF::Redland::LiteralNode and
RDF::Redland::XMLLiteralNode
RDF Model & Syntax nodes
Statement / Triplelibrdf_statement RDF::Redland::Statement RDF Model & Syntax arcs (statements, triples) [isa Resource]
Modellibrdf_model RDF::Redland::Model Set of Statements usually held in one Storage.
Storagelibrdf_storage RDF::Redland::Storage Storage for Models either persistant or in-memory.
Streamlibrdf_stream RDF::Redland::Stream Providing sequences of Statements from Parsers, queries.
Parserlibrdf_parser RDF::Redland::Parser Syntaxes parsers delivering Stream of Statements or writing to a Model
Querylibrdf_query RDF::Redland::Query Querying of an Model delivering a QueryResults
QueryResultslibrdf_query_results RDF::Redland::QueryResults Results of applying an Query to a Model giving either variable bindings with Node values or Stream of Statements
Serializerlibrdf_serializer RDF::Redland::Serializer Serializes a Model into a syntax such as RDF/XML
Iteratorlibrdf_iterator RDF::Redland::Iterator Enumerating lists (of Node) from queries.
URIlibrdf_uri RDF::Redland::URI Provides URIs for Resources, Parsers, ...
WorldRDF::Redland RDF wrapper class handling Redland startup/shutdown
Digestlibrdf_digest Internal content digest class
Hashlibrdf_hash Internal key:value maps class
RDF::Redland::RSS Perl Module providing RSS 1.0 support.

Perl API Reference Documentation

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 (C) 2000-2023

Copyright (C) 2000-2007

AltStyle によって変換されたページ (->オリジナル) /