EKAW 2008: Polishing Diamonds in OWL 2

Last week I gave a presentation at the EKAW 2008 conference on the paper I wrote together with Joost Breuker entitled Polishing Diamonds in OWL 2:

Rinke Hoekstra and Joost Breuker. Polishing diamonds in OWL2. In Aldo Gangemi and Jérôme Euzenat, editors, Proceedings of the 16th International Conference on Knowledge Engineering and Knowledge Management (EKAW 2008), LNAI/LNCS. Springer Verlag, October 2008.

Unfortunately I cannot publish the paper itself here (though it is available from the Springer LNAI website under the DOI: http://dx.doi.org/10.1007/978-3-540-87696-0_8 ). The presentation can be downloaded at Polishing Diamonds in OWL 2 (EKAW 2008).

Seven OWL 2 Drafts Published

From the W3C Website:

The OWL Working Group published seven documents yesterday relating to the OWL 2 Web Ontology Language. OWL 2 extends OWL, a core standard of the Semantic Web, adding new features that users have requested and that software providers are prepared to implement. The documents are:

  1. Structural Specification and Functional-Style Syntax
  2. Direct Semantics
  3. RDF-Based Semantics (First Public Draft)
  4. Mapping to RDF Graphs
  5. XML Serialization
  6. Profiles
  7. Conformance and Test Cases (First Public Draft)

The first three documents form the technical core of OWL 2, which has both a traditional “direct” semantics (for OWL DL) and a new “RDF-based” semantics (for OWL Full). Documents 4 and 5 specify two different serializations for OWL ontologies, one based on RDF and one using XML more directly. Document 6 defines useful subsets of OWL which may be easier to implement or may better meet certain performance requirements. Finally, document 7 specifies conformance and will later enumerate the OWL 2 test cases. Five other documents are under development; but they are not yet ready for public review. Learn more about the Semantic Web Activity.

AddMarkers Protege 4 plugin

While at the EKAW 2008, I wrote a small Protege 4 plugin that adds marker properties to all classes. The subproperty hierarchy will reflect your class hierarchy.

Marker properties are properties that ‘represent’ classes in the role box of your OWL 2 DL ontology. Classes are marked using a self restriction on their marker property, e.g. some class A will be defined to be a subclass of the restriction ‘self is_A‘. Role chains can then be used to trigger the inference of relations between individuals of certain classes. For instance, given two classes A and B and a property p1, we can define p2 as that property that holds between two individuals a and b related via p1 provided that a is of type A and b is of type B:

is_A o p1 o is_B -> p2

For more information, consult my (upcoming) PhD dissertation! (now really soon, seriously, I promise)

The plugin can be downloaded from: http://www.leibnizcenter.org/~hoekstra/addmarkers/addmarkers-0.1a.zip

Unzip, and put the jar in your Protege 4 plugins folder.

NB: This is alphaware (seriously)… it has not been thoroughly tested and may damage your ontology. Make backups!

Universal Role: topProperty

The OWL WG of the W3C is currently discussing whether the OWL2 language should include a universal role, i.e. a top property that relates all individuals in the domain (see e.g. ISSUE-112 and email thread). Although it was already present in the SROIQ description logic that lies at the heart of the new OWL2 DL proposal, the implementation of an efficient reasoning algorithm for this property is not solved yet.

However, the property itself can be defined by adding the following axioms (from this email by Boris Motik):

(1)  SubClassOf( owl:Thing hasValue( U ni ) )
(2)  ReflexiveProperty( U )
(3)  SymmetricProperty( U )
(4)  TransitiveProperty( U )

Alternative representations using property chains do not require the restriction on owl:Thing. See for examples the papers by Markus Krötzsch, available on his homepage, which describe alternative representations, proofs, and interesting use cases.

You can import the above definitions for use in your own ontology from:

http://www.leibnizcenter.org/ontostore/universal-role.owl

Steven Pinker: The Stuff of Thought

Nice (short) talk by Steven Pinker on his book “The Stuff of Thought”:

Knowledge Representation in the Legal Domain

Last thursday I gave a talk at the University of Manchester KR course (Bijan Parsia and Sean Bechhofer) about issues for knowledge representation in the legal domain. The slides are online here.

Converting BibTeX to RSS feeds: bib2rss.pl

Yesterday I was playing around with Peter Mika’s BuRST to create an RSS 1.0 feed of the publications of the Leibniz Center. We already use bibtex2html to generate a weekly update of our publications page.
BuRST services are used, amongst others, by the openacademia.org project to generate RSS feeds of the documents in their RDF triple store. See also Ivan Herman’s blog post on this subject.

However, the RSS generated by BuRST is targeted at RDF-aware clients, and does not contain the Dublin Core metadata used by RSS viewers such as Thunderbird, Google Reader, Yahoo Pipes or Mail (Leopard) to show human readable information.

The BuRST service at openacademia.org uses a BibTex to RDF perl script by Michel Klein to generate a SWRC compliant RDF description of bibliographies stored using the BibTeX format. I have modified his script in such a way that it can now generate simple lightweight RSS representations of BibTeX files.

Voila: bib2rss.pl

You can download it, and use it at your choosing (Michel has GPL-ed the original).

Some examples:

Publications of the Leibniz Center, as RSS 1.0 feed
http://draco.leibnizcenter.org/cgi-bin/bib2rss.pl?url=http://svn.leibnizcenter.org/svn/LeibnizBib/trunk/leibniz.bib

Publications of the Leibniz Center, as RSS 1.0 feed with title and description
http://draco.leibnizcenter.org/cgi-bin/bib2rss.pl?url=http://svn.leibnizcenter.org/svn/LeibnizBib/trunk/leibniz.bib&title=LeibnizPubs&description=Publications%20of%20the%20Leibniz%20Center

Some issues:

  • How to determine the dc:date of a publication RSS-item? Currently: all publications are dated on the first of January of every year. Dates in RSS are an issue anyway.
  • Some RSS readers (Mail, Yahoo Pipes) do not show the dc:creator of RSS 1.0 items
  • Apple Mail seems to disregard any dc:date in 2001 (weird!)
  • bib2rss.pl depends on the Text::BibTeX module of the btOOL library.

SPARQL DL

Bijan Parsia introduced the ideas of a SPARQL-like language that uses DL constructs at the ESWC 2007 OWLED workshop. The guys at Clark&Parsia really got busy, and the first implementation of SPARQL-DL will be introduced as part of Pellet.

While reading the more recent post, about query optimization, I wondered whether it is foreseen that SPARQL-DL will support CONSTRUCT queries.

One of the bigger problems in OWL knowledge-base manipulation is that it is often necessary to assert new individuals or classes based on assertions already available in the KB, e.g. in computing the outcome of some process or change. This is where SPARQL-DL constructs would really come in handy, as we can then use variables to both match and construct OWL definitions. Regular SPARQL doesn’t really help, as it only allows you to query and construct an RDF graph.

SemanticWeb Nuts ‘n Bolts

Yesterday I gave a presentation at our monthly department meeting about the nuts ‘n bolts of the SemanticWeb. This was to give them a taste of its coolness.

If you’re interested, here it is: semweb-nuts-bolts.pdf

OWL Working Group

I am the representative for the University of Amsterdam at the newly started OWL Working Group. The OWLWG is to develop the next version of the Web Ontology Language.

Recent developments in the DL field are very promising (cf. the OWLED workshops), and I am excited about the new features that OWL 1.1 will bring us.

Next Page »