Tags

Integrity Constraints in SKOS (part 3)

Today's constraint is

S27 skos:related is disjoint with the property skos:broaderTransitive.

OWL2

While OWL 1 provided means to state the disjointness of classes, it was impossible to state that properties are disjoint.
OWL2 changes this game.
OWL2 allows to assert that several object properties are pairwise incompatible (exclusive); that is, two individuals cannot be connected by two different properties of the set. The same for data properties.

For skos constraint S27 this would translate into following code:

<rdf:Property rdf:about="http://www.w3.org/2004/02/skos/core#related">
<rdfs:comment xml:lang="en">skos:related is disjoint with skos:broaderTransitive</rdfs:comment>
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#SymmetricProperty"/>
<rdfs:subPropertyOf rdf:resource="http://www.w3.org/2004/02/skos/core#semanticRelation"/>
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
<skos:definition xml:lang="en">Relates a concept to a concept with which there is an associative semantic relationship.</skos:definition>
<rdfs:isDefinedBy rdf:resource="http://www.w3.org/2004/02/skos/core"/>
<rdfs:label xml:lang="en">has related</rdfs:label>
<owl:propertyDisjointWith rdf:resource="http://www.w3.org/2004/02/skos/core#broaderTransitive"/>
</rdf:Property>

OWL2 DL

OWL2 DL does put however, for the reasons of decidability, some restrictions on the use of the DisjointObjectProperties axiom. The properties used need to be simple, meaning very roughly that axioms of following form cannot be involved (directly or indirectly):

  • SubObjectPropertyOf( ObjectPropertyChain( OPE1 ... OPEn ) OPE ) with n > 1, or
  • SubObjectPropertyOf( ObjectPropertyChain( OPE1 ... OPEn ) INV(OPE) ) with n > 1, or
  • TransitiveObjectProperty( OPE ), or
  • TransitiveObjectProperty( INV(OPE) )

Pellet 2.0

Indeed when using Pellet 2.0.2, we get following warning:

WARNING: Unsupported axiom: 
Ignoring transitivity and/or complex subproperty axioms for broaderTransitive
31-mrt-2010 14:09:54 org.mindswap.pellet.RBox ignoreTransitivity

SPIN

Formulating the constraint in SPIN is straightforward.

ASK WHERE {
?this skos:related ?object1 .
?this skos:broaderTransitive ?object2 .
FILTER (?object1 = ?object2) .
}

Throwing errors as indicated in TopBraid Composer with following example:

error thrown in Topbraid Composer

Pellet ICV 0.4

Using Pellet ICV 0.4 with following constraint::
<rdf:Description rdf:about="http://www.w3.org/2004/02/skos/core#related">
<owl:propertyDisjointWith rdf:resource="http://www.w3.org/2004/02/skos/core#broaderTransitive"/>
</rdf:Description>
<rdf:Description rdf:about="http://www.w3.org/2004/02/skos/core#broaderTransitive">
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#TransitiveProperty"/>
</rdf:Description>

reports correctly the constraint violation:

c:\Program Files\pellet-2.1.0>pellet-ic --constraints C:\Users\Paul\TBCMEWorkspa
ce\test\s27c.rdf C:\Users\Paul\TBCMEWorkspace\Test\s27.rdf
15-apr-2010 12:43:41 org.mindswap.pellet.jena.graph.loader.DefaultGraphLoader ad
dUnsupportedFeature
WARNING: Unsupported axiom: Ignoring transitivity axiom due to an existing disjo
intness axioms for property broaderTransitive
15-apr-2010 12:43:41 org.mindswap.pellet.RBox ignoreTransitivity
WARNING: Unsupported axiom: Ignoring transitivity and/or complex subproperty axi
oms for broaderTransitive
Validating 2 integrity constraints
Will stop after 1 constraint violation(s) are found

Validating constraint: related disjointPropertyWith broaderTransitive
Constraint violated : Yes
Violating individuals (1): Concept_1,

Number of constraint(s) violated: 1

FYI: the SPARQL Query generated by Pellet ICV from the OWL Axiom above is:

SELECT  ?x0
WHERE
{ ?x1 skos:related ?x0 ;
skos:broaderTransitive ?x0 .
}

Conclusion

Once again fairly easy to do with SPIN;
a long study of the particularities of OWL2 DL restrictions to find out that this constraint cannot be expressed in OWL2 DL,
but OWL IC using the closed world assumption does the job also with 1 line of code.

Comments