Re: unionOf vs. disjointUnionOf in the RDF mapping

From: "Michael Schneider" <schneid@fzi.de>
Subject: unionOf vs. disjointUnionOf in the RDF mapping
Date: Sat, 15 Mar 2008 15:39:12 +0100

> Hi!
> 
> The reverse RDF mapping contains the following entry for 'unionOf' in
> table 6 ("Descriptions"):
> 
>   Pattern:
>   --------
>     _:x rdf:type owl:Class
>     _:x owl:unionOf T(SEQ y1 ... yn)
> 
>   Description:
>   ------------
>     ObjectUnionOf( DESC(y1) ... DESC(yn) )
> 
> Analogue for 'owl:intersectionOf', 'owl:complementOf', and 'owl:oneOf'.
> 
> On the other hand, table 7 ("Axioms") defines the mapping for
> 'disjointUnionOf' as:
> 
>   Pattern:
>   --------
>     x owl11:disjointUnionOf T(SEQ y1 ... yn) 	 
> 
>   Axiom:
>   ------
>     DisjointUnion( DESC(x) DESC(y1) ... DESC(yn) )
> 
> I have several questions:
> 
> * Why is 'unionOf' in the "descriptions" table and 'disjointUnionOf' in
> the "axioms" table?

>From the OWL 1.1 SS&FS document:

	Finally, the disjointUnion axiom defines a class as a union of
	descriptions, all of which are pair-wise disjoint.

so disjoint union is different from just a union, hence the name
differences.

> * Why is there an additional typing triple "_:x rdf:type owl:Class" for
> 'unionOf', but not for 'disjointUnionOf'?

Because _:x is the blank node for the description.  Its typing triple is
not picked up earlier.  The x in owl:disjointUnion is a class URI
(resource node) and its typing triples were picked up using Table 3.

> * Why is there a bNode on the left hand side of 'unionOf' (there's none
> for 'disjointUnionOf')? 

> AFAICS, this notation makes the RDF graph
> 
>   G := {
>     ex:C rdf:type owl:Class .
>     ex:D1 rdf:type owl:Class .
>     ex:D2 rdf:type owl:Class . 
>     ex:C owl:unionOf ( ex:D1 ex:D2 ) .
>   }
> 
> unmappable to Functional Syntax, or at least the unionOf triple doesn't
> get mapped. Note that G is a valid OWL-1.0-DL ontology, so this would
> break backwards compatibility.

Becasue this is not allowed in OWL 1.1.

> * Why is the Functional-Syntax expression for 'unionOf' called
> "ObjectUnionOf"? I mean, why the "Object"? (There is no "Object" for
> 'disjointUnionOf' expressions.)

Stylistic reasons.

> Michael

peter

Received on Saturday, 15 March 2008 16:01:17 UTC