Tuesday 10 November 2009

ISWC+OWLED

From 23 to 29 October 2009, I attended the International Semantic Web Conference, preceded by the OWLED workshop. I gave a talk at OWLED and, together with Matthew Horridge, presented the ISWC tutorial on explanations in OWL.

From the talks I attended, as well as from feedback to my talk and chats with other participants, I got a number of ideas for future work.

Diagrammatic Logic

John Howse from the University of Brighton was very active during the explanations tutorial and expressed his interest in subsequent discussions. His group is working on diagrammatic logic. Guided by the name of this logic only, I was thinking that it might be helpful for presenting justifications, or modules, or topics, so it might be worth looking into it.

Since John said that he and his group are currently learning about OWL and ontologies, we had the idea that both groups meet, e.g., in Manchester. We could give the an introductory tutorial to them, and they could teach us diagrammatic logic. The format could be similar to the Pretoria workshop in February ...

Does X occur in Y?

I had a pleasant chat with Tom Scharrenbach who is working in Zürich, including on the following problem which he wants to solve with the help of modules:

They want to answer queries of the form "does X occur in Y?", where X ("what") is a description of, e.g., a type of animal, and Y ("where") is a description of a geographical entity, e.g., a town, landscape, region, ... These queries are to be answered over

  • a TBox T1 containing info about "what" (X),
  • a tiny TBox T2 containing info about "where" (Y, mostly RCC-8 axioms), and
  • a huge ABox A that contains data of sightings.

Example query: Does "snake that hasHeadColor some green" occur in "landscape near Aesch"?

Tom thought that the following procedure involving modules might help reduce the search space to appropriate modules of T2 and A:

  1. extract module B from A for signature of Y (+X?)
  2. extract module M from T1 for signature in X
  3. Evaluate query over T1, B, M

My idea for (2) is that one of the already known module notions might be suitable. However, T1 needs to be a query conservative extension of M, and I'm afraid that locality-based modules do not provide this guarantee. A literature search might help find suitable module notions. Furthermore, if we're lucky, T1 is in DL-Lite, and we can use the approach in the IJCAI 2009 paper Minimal Module Extraction from DL-Lite Ontologies using QBF Solvers.

As for (1), we currently know too little about how to extract a module from an ABox. My spontaneous thought was that a simple traversal might suffice: start with B containing all class assertions in A about the concepts mentioned in X+Y, and iteratively extend B with all axioms from A that contain a class mentioned in B. This seems too trivial, all the more so because we know that a simple "all referencing axioms" criterion fails for TBox modules.

RDF, RDF/S, the Layer Cake, RDF reasoning etc.

During many of the ISWC talks, I noticed that I know way too little about these topics in order to value what work has been done in the respective papers. Although I've heard quite some warnings from DL(s)istas about RDF, I feel it's time to read up the basics in order to (a) make my own judgement and (b) be able to argue in discussions where people seem to overestimate the importance of RDF.

Furthermore, since I'm interested in decision problems and their complexity, I would like to read up on the complexity of reasoning in RDF, why it suffices to compute only a finite part of the infinite closure, what this gives us, and how it relates to inferences drawn from, say, OWL ontologies.

Incremental reasoning

Evren Sirin told me that incremental reasoning has been implemented in the current release of Pellet, to support the development workflow for NCI. In a special version of Pellet, they have even improved the extraction of locality-based modules in a way that requires only one iteration to decide which axiom goes into the module: the signature against which locality is checked is computed upfront by tracing the relation of terms between axioms. According to Evren, the incremental classification after each single change to the ontology is almost always quick.

An integration of this feature into Protégé is, however, difficult, for several reasons. First, the incremental mechanism can only implement the interface ClassReasoner. Second, there are the usual issues with locality-based modules on nominals. Third, the current incremental reasoning algorithms don't support instance checking. The last two points call for more research!

Evren is also involved in a new project with the University of Arizona about the modular development of ontologies.

Needs for partitions

Alexander de Leon presented the paper A platform for reasoning with OWL-EL knowledge bases in a Peer-to-Peer environment at OWLED. After his talk, Uli and I had a chat with him, where a new sort of module extraction problem emerged: How can I divide my ontology of size n into m modules of size ≈n/m? (They may be overlapping.)

Jürgen Bock presented the paper A Reasoning Broker Framework for OWL" at OWLED, which is about a mechanism that supports the use of different reasoners and the choice of the reasoner best suited to the particular ontology and query. He mentioned future work of having different reasoners work on different modules, but I forgot to ask him about it.

Steven Wartik presented the paper A JC3IEDM OWL-DL Ontology at OWLED and mentioned that an "intelligent partition" is required. In the meantime, Uli has pointed him to our modularity tools and materials.

Modular import mechanisms

I presented the paper Mechanisms for Importing Modules at OWLED and got the following questions:

Two talks about referring to locality-based modules

Jianfeng Du presented the paper Goal-Directed Module Extraction for Explaining OWL DL Entailments at ISWC, where a new kind of module is invented to restrict the search space for obtaining explanations of entailments. I tried to point out that the starting point "locality-based modules are too large" is incomplete because the authors refer to a sub-optimal kind of locality-based modules (bottom modules) and do not seem to be aware of nested variants that are significantly smaller. Furthermore, Matthew and I see the following problems:

  • It is not clear why modules need to be that small, after all, finding all justifications is hard in the number of justifications, not in the size of the ontology.
  • If, for the entailment C subClassOf D, we extract the bot-module for sig(C), then this is of course too big. Try extracting TBM* for sig(C)+sig(D).
  • I would like to repeat the experiments in the paper with TBM*.

Valentina Tamma presented the paper Task Oriented Evaluation of Module Extraction Techniques. They have included locality-based modules, but do not seem to be aware of nested ones either.

Forgetting

Another paper on forgetting: Concept and Role Forgetting in ALC Ontologies. What again was the exact difference between forgetting and extracting a module? In the former, we are allowed to rewrite axioms?

Reasoning with access restrictions

Martin Knechtel presented the paper "A Generic Approach for Large-Scale Ontological Reasoning in the Presence of Access Restrictions, where different users of an ontology have access to certain axioms only. The entailments they obtain depend on these access settings. I asked whether it would make sense to specify access to terms rather than axioms, which they haven't tried (yet). How about trying to modify their approach in this direction? Maybe modules can help performing reasoning ... This might also be related to Bernardo et al.'s work on views.

Other stuff

Uli pointed out that we should check whether Ordnance Survey's ontology modules are modular in our strong sense. I mentioned this to John Goodwin.

We need to update the web module extractor ASAP, now that we've advertised it so often.

No comments: