The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

RDF::SKOS::Redland - SKOS - RDF::Redland based implementation

SYNOPSIS

   my $model = ... # get an redland model

   use RDF::SKOS::Redland;
   my $skos = new RDF::SKOS::Redland ($model);

   # API like RDF::SKOS

DESCRIPTION

One way to experience an SKOS object is to extract it from an underlying RDF graph. As the SKOS vocabulary is defined on the basis of RDF, this is well-defined.

This package makes this translation, assuming an RDF::Redland model underneath. How you get that model is your problem.

At the moment, this is all read-only. That is, you cannot modify the SKOS object and expect that this is reflected in the underlying RDF graph.

Concept Identification

Of course, being in the RDF world, concepts are identified via their URI (IRI, whatever).

Annoyances

  • You will get a STDERR warning:

      C<Redland warning: Variable a was selected but is unused in the query.>

    That is harmless, but cause of the incomplete implementation of SPARQL on top of Redland. Maybe I find a trick of working around, or maybe drop SPARQL alltogether.

  • With some versions of Redland you may get

      C<1/0Name "swig_runtime_data::type_pointer3 ....>

    Not sure what this is caused by.

INTERFACE

Constructor

The constructor expects exactly one parameter: the RDF model from which the SKOS is derived. An exception is raised if this is not so.

Methods

See RDF::SKOS.

concept

Given a concept IRI, this returns an RDF::SKOS::Concept. This is read-only.

AUTHOR

Robert Barta, <drrho at cpan.org>

BUGS

Please report any bugs or feature requests to bug-rdf-skos at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=RDF-SKOS. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

COPYRIGHT & LICENSE

Copyright 2009 Robert Barta, all rights reserved.

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