- From: Dan Brickley <danbri@danbri.org>
- Date: Wed, 18 Feb 2009 12:12:18 +0100
- To: SKOS <public-esw-thes@w3.org>
Just a quick note to report on a work-in-progress I've been exploring
this week.
I started to make a Ruby API for SKOS.
The distinguishing feature here is that it uses jruby (a Ruby
implementation in pure Java). As such it can call on the full powers of
the Jena toolkit, which go far beyond anything available currently in
Ruby. At the moment it doesn't do much, I just parse SKOS and make a
tiny object model which exposes little more than prefLabel and
broader/narrower.
I think it's worth exploring because Ruby is rather nice for scripting,
but lacks things like OWL reasoners and the general maturity of Java
RDF/OWL tools (parsers, databases, etc.).
I've posted some example snippet in See
http://svn.foaf-project.org/foaftown/2009/skosdex/readme.txt which uses
the UKAT SKOS dataset.
The idea is to use some ruby idioms to explore the SKOS graph.
Quick example. This goes 2 levels down from some chosen concept:
s1 = SKOS.new()
s1.read("file:samples/archives.rdf")
c1 = s1.concepts["http://www.ukat.org.uk/thesaurus/concept/1366"]
puts "test concept is "+ c1 + " " + c1.prefLabel
c1.narrower do |uri|
c2 = s1.concepts[uri]
puts "\tnarrower: "+ c2 + " " + c2.prefLabel
c2.narrower do |uri|
c3 = s1.concepts[uri]
puts "\t\tnarrower: "+ c3 + " " + c3.prefLabel
end
end
See http://svn.foaf-project.org/foaftown/2009/skosdex/readme.txt for the
indented output, which I won't show here as it'll get lost in email
formatting.
I'm interested to hear if anyone else has explored this topic. Obviously
there is a lot more to SKOS than broader/narrower, so I'm very
interested to find collaborators or at least a sanity check before
taking this beyond a rough demo.
Thanks for any thoughts,
Dan
--
http://danbri.org/
Received on Wednesday, 18 February 2009 11:12:57 UTC