- From: Simon Jupp <simon.jupp@manchester.ac.uk>
- Date: Wed, 18 Feb 2009 14:44:27 +0000
- To: Dan Brickley <danbri@danbri.org>
- Cc: SKOS <public-esw-thes@w3.org>
Dan, I don't know much about Ruby but i like the idea of having a scripting language to do some stuff with SKOS. This may be of some use to you if you, especially if you want to work with SKOS and Java. I have started a java API for SKOS [1] that is an extension of the OWL 2 API [2]. It is designed to provide a complete abstraction of the SKOS data model and supports all SKOS constructs that fall within OWL 2. Some advantages of this approach are: - You can work with SKOS objects at a high level abstraction without having to worry about any of the concrete syntaxes such as RDF/XML - Create, Edit and Read SKOS files (Nice and clean axiom based change control) - All the parsing and serialisation is handled by the OWL API - Because it's an extension of the OWL API, you have access to the underlying OWL objects (e.g. for handling extensions to SKOS) - All the reasoners supported by the OWL API (Pellet, Fact++ etc) mean you can work with a inferred SKOS model Anyway, sorry if I hijacked your thread! If it's of no us to you maybe someone else on this list who want to do Java programming with SKOS might be interested. Cheers, Simon 1- http://skosapi.sourceforge.net/ 2- http://owlapi.sourceforge.net/ Simon Jupp simon.jupp@manchester.ac.uk http://www.cs.man.ac.uk/~sjupp/ On 18 Feb 2009, at 11:12, Dan Brickley wrote: > > 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 14:45:03 UTC