Raptor RDF Parser Plugin for RDF.rb
This is an RDF.rb plugin that adds support for parsing/serializing RDF/XML, Turtle and RDFa data using the Raptor RDF Parser library.
Features
- Requires the Raptor library and/or command-line utilities.
- Parses and serializes RDF data from/into the RDF/XML or Turtle formats.
- Extracts RDF statements from XHTML+RDFa documents.
- Provides serialization format autodetection for RDF/XML, Turtle and RDFa.
- Compatible with any operating system supported by Raptor and Ruby.
- Compatible with MRI 1.8.x, 1.9.x and JRuby (tested with JRuby 1.4).
Examples
require 'rdf/raptor'
Ensuring Raptor is installed and obtaining the version number
RDF::Raptor.available? #=> true RDF::Raptor.version #=> "1.4.21"
Parsing RDF statements from an RDF/XML file
RDF::Reader.open("http://datagraph.org/jhacker/foaf.rdf") do |reader| reader.each_statement do |statement| puts statement.inspect end end
Parsing RDF statements from a Turtle file
RDF::Reader.open("http://datagraph.org/jhacker/foaf.ttl") do |reader| reader.each_statement do |statement| puts statement.inspect end end
Extracting RDF statements from an XHTML+RDFa document
RDF::Reader.open(url = "http://bblfish.net/", :format => :rdfa, :base_uri => url) do |reader| reader.each_statement do |statement| puts statement.inspect end end
Serializing RDF statements into an RDF/XML file
data = RDF::Repository.load("http://datagraph.org/jhacker/foaf.nt") RDF::Writer.open("output.rdf") do |writer| data.each_statement do |statement| writer << statement end end
Serializing RDF statements into a Turtle file
data = RDF::Repository.load("http://datagraph.org/jhacker/foaf.nt") RDF::Writer.open("output.ttl") do |writer| data.each_statement do |statement| writer << statement end end
Obtaining the RDF/XML format specification class
RDF::Format.for(:rdfxml) #=> RDF::Raptor::RDFXML::Format RDF::Format.for("input.rdf") RDF::Format.for(:file_name => "input.rdf") RDF::Format.for(:file_extension => "rdf") RDF::Format.for(:content_type => "application/rdf+xml")
Obtaining the Turtle format specification class
RDF::Format.for(:turtle) #=> RDF::Raptor::Turtle::Format RDF::Format.for("input.ttl") RDF::Format.for(:file_name => "input.ttl") RDF::Format.for(:file_extension => "ttl") RDF::Format.for(:content_type => "text/turtle")
Obtaining the RDFa format specification class
RDF::Format.for(:rdfa) #=> RDF::Raptor::RDFa::Format RDF::Format.for("input.html") RDF::Format.for(:file_name => "input.html") RDF::Format.for(:file_extension => "html") RDF::Format.for(:content_type => "application/xhtml+xml")
Documentation
http://rdf.rubyforge.org/raptor/
Dependencies
Installation
The recommended installation method is via RubyGems.
To install the latest official release of the RDF::Raptor gem, do:
% [sudo] gem install rdf-raptor
To install the required Raptor command-line tools themselves, look for a
raptor or raptor-utils package in your platform's package management
system. For your convenience, here follow installation instructions for the
Mac and the most common Linux and BSD distributions:
% [sudo] port install raptor # Mac OS X with MacPorts % [sudo] fink install raptor-bin # Mac OS X with Fink % [sudo] aptitude install raptor-utils # Ubuntu / Debian % [sudo] yum install raptor # Fedora / CentOS / RHEL % [sudo] zypper install raptor # openSUSE % [sudo] emerge raptor # Gentoo Linux % [sudo] pacman -S raptor # Arch Linux % [sudo] pkg_add -r raptor # FreeBSD % [sudo] pkg_add raptor # OpenBSD / NetBSD
Download
To get a local working copy of the development repository, do:
% git clone git://github.com/bendiken/rdf-raptor.git
Alternatively, download the latest development version as a tarball as follows:
% wget http://github.com/bendiken/rdf-raptor/tarball/master
Mailing List
Authors
Contributors
License
This is free and unencumbered public domain software. For more information, see http://unlicense.org/ or the accompanying UNLICENSE file.