Title: Using the DIG Plugin to Reason with Ontologies in LarKC Zhisheng Huang, Gaston Tagni, and Frank van
1Using the DIG Plug-in to Reason with Ontologies
in LarKC Zhisheng Huang, Gaston Tagni,and
Frank van HarmelenVrije University Amsterdam
2Motivation
- All popular DL-reasoners such as RACER, FACT,
Pellet, KAON2) support the DIG interface. - The LarKC platform needs DL/OWL reasoning
support. It is convenient for the platform to
gain the DL reasoning support via the LarKC DIG
interface. - To provide an easy approach to wrap
non-java-based reasoners (such as PION, MORE,
DION, etc.) and use them through their DIG
interface.
3LarKC Platform and the DIG plug-in
Racer
FACT
LarKC Platform
KAON2
DIG Interface Plug-in
4Tasks of the DIG Plug-in
- Translate a set of statements (ontology data)
into DIG data format. If it is OWL-DL data, it
uses the OWL2DIG library to translate it into DIG
data. - Translate SPARQL(DL) query into DIG
- - deal with triple-encoded DL
expressions - 3. Query processing and answer checking
- 4. Translate DIG answers into SPARQL answers
05/27/09
footer
5
5LarKC Platform and the DIG plug-in
Ontology (URI)/ Set of Statements
SPARQL query
SPARQL Answer
LarKC Platform
Tell
External DIG Reasoner
DIG Interface Plug-in
Ask
Response
LarKC Pipeline The DIG plug-in is implemented as
a Reasoner plug-in
6The DIG plug-in (v0.3)
- Currently supports
- The DIG interface v1.1.
- Sparql ASK and Sparql SELECT.
- DL Expressions (conjunction, disjunction,
disjoint, negation) - DIG queries (subsumption, instance, instances)
- Have been tested with
- Racer1.7.14
- PION 2.1.0
- To be supported soon
- Complex DL concept expressions (such as nominal,
min, max, etc.) - Complex Sparql expressions (such as Filtering,
Optional, Regular expressions, sparqlconstruct,
sparqldescribe, etc.) - Complex DIG queries (role query, functional
query, value pair query)
7Why SPARQL-DL?
- SPARQL is too expressive for a DL reasoner.
- In SPARQL, there is no semantic interpretation
for DL expressions such as owlsameas,
owldisjointwith, etc. - SPARQL-DL is a DL-specific SPARQL with some DL
primitives, such as type(a, C), SubClassof(C1,
C2), DisjointWith(C1,C2), ComplementOf(C1,C2),Equi
valentClass(C1,C2),(Sirin and Parsia 2007)
8Translation of DL expressions into RDF triples
- Using the OWL-DL method (Patel-Schneider,Hayes,
Horrocks 2004). - http//www.w3.org/TR/owl-semantics/mapping.html
9SPARQL-DL Query Example 1
- ?- subClassOf(Wine, PotableLiquid)
- // to ask whether or not wine is a subclass of
potable liquid - PREFIX
- ASK
- WHERE
- wineWine rdfssubClassOf foodPotableLiquid.
10SPARQL-DL Query Example 2
?- subClassOf(Bordeaux, and(SweetWine,
TableWine)) // to ask whether or not Bordeaux is
a SweetWine and TableWine ASK WHERE
wineBordeaux rdfssubClassOf _x.
_x owlinterSectionOf _y1.
_y1 rdffirst wineSweetWine.
_y1 rdfrest wineTableWine.
wineBordeaux rdftype owlClass.
11Simple SPARQLSelect Query Example 3
?- subClassOf(?X, Wine) // to list all
subconcepts of Wine SELECT ?X WHERE ?X
rdfssubClassOf wineWine.
12SPARQL-DL Query Example 4
?- subClassOf(Bordeaux, ?X), subClassOf(?X,Wine),
subClassOf(?X,?Y). SELECT ?X ?Y WHERE
wineBordeaux rdfssubClassOf ?X. ?X
rdfssubClassOf wineWine. ?X
rdfssubClassOf ?Y. ?Y rdftype
owlClass.
13PION
- PION is a system which can get meaningful answers
when querying oninconsistent ontologies. - PION website http//wasp.cs.vu.nl/sekt/pion
- The LarKC DIG plugin requires the external PION
system (version 2.1.0 or higher) with SWI-Prolog
on your computer (swi-prolog.org).
14PION and External DIG Reasoner
- PION needs an external DIG Reasoner for standard
reasoning(i.e., non-inconsistency reasoning)
15Various Strategies
- You can use the PION testbed page piontest2.htm
to select different strategies for reasoning
with inconsistent ontologies by PION - selection functions (syntactic relevance, concept
syntactic relevance, or semantic relevance by
google distances), - over-determed processing methods (first maximal
consistent set, or path pruning with Google
distances), - extension strategies (linear extension or
k-extension).