Description logic for age 6 and up

October 4th, 2006

This morning I was thinking about rule formalisms and description logics. At first I believed that people in general understand rule formalisms better than description logics. Things like “if antecedent then consequent” and “applying one rule after an other rule” appear easier than things like “subsumption” , “limited existential quantification”, and “value restriction”.

Then I thought of the (almost classic) game “Wie Is Het?”. The game’s title is in Dutch and I don’t know if the game is internationally known as “Who Is It?”, so I will attempt to explain the game in this post. I can point to some instances of “Wie Is Het”: page by a reseller (in Dutch but includes a picture of the game) and an online playable version (again in Dutch and in flash but only a simple interface, so maybe playble for non-Dutch speakers). “Wie Is Het?” is a game for two players. One player chooses a person from a set of persons. The other player tries to guess which person the first player has chosen by asking questions (the online version has a drop-down box to select a question and a button “Vraag” to ask the question). Some example questions: “Does he/she wear glasses?”, “Is the person a woman?”.

So an essential part of description logics is contained within the game: classes. And people from age 6 and up understand these classes. We can use it to explain intersection, union, subsumption etc. The game is missing the other important concept of description logic: relations. Relations would be a nice addition to the game. They would allow us to explain description logics to evry person of age 6 and up. And they would allow players to ask questions like “Is the person (at least) married to a person wearing a blue sweater?”, “Has the person only childern with green eyes?”.

SPARQL CONSTRUCT as an alternative to SWRL

September 7th, 2006

(Sometimes) OWLDL is not expressive enough for completely defining a concept. When OWLDL falls short I use (OWL full or) SWRL to better capture the concept. Holger Knublauch suggested to use the CONTRUCT keyword of the query language SPARQL for merging ontologies. This made me thinking about using SPARQL instead of SWRL for expressing things beyond the expressive power of OWLDL.

How does SPARQL compare to SWRL for this use? What other options are available?
Some aspects to take into account:

  • Expressive power
  • Computational aspects
  • Tool support
  • Resulting re-usability

I have to do some work, so the post will contain only questions for now. I will search for the answers later.

Testing Ontologies

August 25th, 2006

Ontologies should describe the meaning of concepts. We can and should test whether an ontology captures the semantics.

The first method for testing is to make models and compare the results of the automatic inference to the results we intuitively expect. Some types of tests used in software engineering might be adaptable in testing ontologies. (I’ll try to add some information about this sometime in the future).
An ideal ontology should formalise a set of concepts without relying on informal interpretations. Normally when creating an ontology we choose meaningful labels for concepts and properties. To test if an ontology defines the concepts without relying on this information, replace its identifiers and labels with meaningless content and see if a human can understand what the ontology is about. It removes the advantage, of being able to understand the isolated labels, that humans have over computers.

It’s not difficult to see that not many ontologies will pass this test. This might have the following causes:

  • Distinguishing symbol “x167″ from symbol “x153″ and rembering the context in which there were used is difficult for most people. (This can be solved by using distinguishable symbols to replace the labels.)
  • Humans are good at recognising patterns. But do people have an ontology (in the form we represent it) in their head?
  • Are the ontologies we create good and complete enough?

Can’t sleep

August 16th, 2006

It’s 3:48, I can’t sleep at least since 3:20. I had some ‘ideas’ and started thinking about them. Sometimes it helps to write them down and get back to sleep.

  • James F. Allen and George Ferguson have a theory about time (see their publicly accessible 1994 paper in Journal of Logic and Computation and/or their 1997 work in the book Spatial and Temporal Reasoning).,br /> Maureen Donnelly has a theory about relative places. I’m encoding their research into ontologies in OWL.
    Both describe their subject using relations between intervals (or spaces or whatever we call this concept). It might be a good idea to model an ontology about intervals in a separate module.
  • Time has a direction; place (as Donnelly see it) has not. Can we distinguish Directed-Intervals and Undirected-Intervals?
  • Intevals can be described using relations with specific characteristics (serial, reflexive, equivalence, and more complex). Should we separate an ontology about relations as well? These properties of relations are not (and should not be) inherited over the owl:subPropertyOf relation.
  • The ontologies we create are in OWL DL. Maybe we should specify extension of these ontologies in OWL Full. In this way the user he select the one he needs. This is more or less the inverse of the automatic translation of OWL Full to OWL DL I described in an earlier post.

    [edit]OWL Full will probably not be expressive enough either.[/edit]

  • It would be conveinient if our tools could check that the set of possible interpretations, the stronger description in OWL Full entails, is a subset of the possible interpretations, the weaker description in OWL DL entails.
  • OWL 1.1 is the next version of OWL DL. But OWL 1.1 is not compatible with OWL Full. As far as I know, the OWL 1.1 specification will not contain an ‘OWL Full 1.1′. I’m a bit worried about that, since combining OWL DL and OWL Full might be a nice thing see previous bullet and my earlier post. OWL 1.1 isn’t compatible with RDF; I have no opinion (or fears) about this yet. Is “punning” worth this incompatibility?

    [edit]Punning is not what makes OWL 1.1 incompatible with OWL Full.[/edit]

    Or will a compatible OWL Full 1.1 be created? Maybe Bijan Parsia or Kendall Clark (of http://clarkparsia.com/) can answer some of these issues. I have a meeting with him later today.
    Example of punning (probably not correct):

    In the domain of airplanes we might want to have the instance ‘Boeing 747′ that contains attributes and values about the plane and its design. And we want to have a class ‘Boeing 747′ containing all aitcraft of the type boeing 747.

    Punning is a form of syntactic sugar OWL 1.1 tools will interpret this example as ‘__instance__Boeing 747′ and ‘__class__Boeing 747′ Would it be possible to interpret this in OWL Full as a single subject that is an instance and a class? Will the semantics be what the user expects?

I’ll try to get a bit more sleep before I have to wake up in the morning. Sorry for the spelling mistakes. I will correct them later this day. I will also add some hyperlinks to things I described.

Ontologies that can change continuously

August 12th, 2006

I’m reading “The Second Naive Physics Manifesto” by Patrick J. Hayes. he claims that a complete theory would be huge: 10 000 to 100 000 tokens. The ontology about place will not be anywhere near that size; will it be adequate?

Note: Our goal with this small ontology is to give as few restrictions as possible so that users can integate it with their own knowledge systems. This differs from trying to create a complete ontology.

What about the following line of reasoning?

  • An ontology with 10 000 to 100 000 will probably be difficult for users to navigate and a daunting task to create.
  • So we might split the ontology into modules.
  • A modular ontology can be created by a group of people.
  • This group of people large and loosly organised.
  • Modules can be connected in different ways:
    • A fresh module can import existing modules.
    • Two (or more) existing modules can be connected by an adaptor.

    But sometimes it is impossible connect to existing modules.  Changing insights might cause us to believe that the existing module is not longer appropriate.

  • Here is where changing ontologies enter the picture.  It should be possible to change the existing module.  Not only the original author should be able to change his module, but any person/agent should be able to.
  • A kind of Wiki for ontologies.

Many questions remain:

  • How to keep the ontology (mostly) consistent? (methods for creating ontologies exists; these might provide answers)
  • Which changes to allow and which not?
  • How can things that rely on the ontology keep up with the changes?

Translation from OWL Full to OWL DL, from OWL DL to OWL DLP, etc.

August 11th, 2006

One of the things in my TODO list is to attempt a translation from more expressive description logics to less expressive description logics and/or to find existing work about this subject.

It will help me to gain understanding in the issues of description logics, whether it is possible or not and whether it is already done by someone else or not.

A translation of expressive (description) logics into less expressive variants would help in solving the following problem:

We would like to retrieve as much knowledge/information as possible. In order to be able to retrieve this knowledge we have to store it first. An expressive formalism for storing allows us to store more knowledge. In addition to retrieving the knowledge we want to reason with it and derive new knowledge. Reasoning in an expressive formalism is difficult. So, for efficient reasonning we want a formalism with as little expressivity as possible.

This morning I found a reply by Holger Knublauch on a comment by Rinke Hoekstra at Holger’s blog. The reply is about how a clever punning algorithm can ignore reified relationships in OWL Full and even add the derived tripples to get OWL DL. I had to store this link somewhere. So why not store it in my blog?

Adaptors for ontologies

August 10th, 2006

(NOTE: this is not an original idea; others have written more about it and done this before me.)

Suppose you want to re-use two ontologies A and B. The ontologies share some similar but not equal concepts. A third ‘ontology’ C can be used to relate concepts in A to concepts in B. The result is that you can re-use ontologies A and B.

Questions:

I’m currently working on an ontology about place based on the work of Maureen Donnelly. When it’s finished i might attempt to create an adaptor between this ontology and an ontology about place based on Euclidean geometry.

First post

August 10th, 2006

I should put some content in this blog. This first post will probably not contain much useful information, but it’s (a little) less worse than the Wordpress “Hello World” post. I hope that starting with posting on this blog helps me to continue with posting and results in some interesting information for possible readers.
Maybe i will add my todo list (or only the interresting parts of it) as blog entries.