Lists in OWL

Hello,

Based on [1] I have made an implementation of Boris Motik's proposal [2] to
model list-like structures in OWL 1 DL and in OWL 2 DL. I think that the
solution may be regarded as a general design pattern to model typed lists
in OWL. My small OWL DL ontology is available at

    http://purl.org/net/vocabulary/list.owl

The ontology defines the following classes to represent lists:

    List: superclass of all list classes
    LiteralList: class representing lists of literals
    IndividualList: class representing lists of individuals
    EmptyList: a class with a single instance (nil) representing the empty list

Using the vocabulary it is possible to describe lists in OWL DL consisting
only of individuals or literals, or both.

It is also straightforward to subclass the list classes to model typed lists
(lists that contain only instances of a given class or datatype). To
demonstrate that the ontology defines the class IntegerList for handling
list of integers.

If the base list classes are subclassed appropriately, then class EmptyList
is a subclass of each list class implicitly (in our case EmptyList is also
a subclass of IntegerList).

For demonstration purposes the ontology also contains 4 List instances.
Notice that the type of the instances are not specified explicitly, it can
be inferred from the ontology. The inferred type of C and D is IntegerList,
C is an instance of LiteralList implicitly, while A is a List instance.

Maybe it would be worth to write a more detailed explanation, a paper is on
the way. (It would be really nice to have a note discussing best practices
about lists in OWL.)

Best regards,

Peter Jeszenszky
University of Debrecen, Faculty of Information Technology
http://www.inf.unideb.hu/~jeszy/

***

References:

[1] Nick Drummond: List Ontology http://www.co-ode.org/ontologies/lists/

[2] Boris Motik: A proposal for ISSUE-104 (built-in vocabulary)
    http://lists.w3.org/Archives/Public/public-owl-wg/2008Jun/0070.html

Received on Wednesday, 8 September 2010 12:05:38 UTC