Re: OWL Web Ontology Language

From: "Hans Teijgeler" <>
Subject: RE: OWL Web Ontology Language
Date: Thu, 16 Mar 2006 23:27:39 +0100

> Hi Peter,
> What do you understand when someone tells you that Ford produces
> Mustangs? They produce also other models, they may or may not outsource
> all or part (most "US" products come from China), but one thing is
> certain: Ford produces Mustangs, one way or the other.

Well, is Ford the *only* manufacturer of Mustangs?  If all you want to say is
that Ford produces some Mustangs, then you probably want

	ObjectProperty(manufactures inverseOf(manufactured-by))

	Individual(Ford value(manufactures(Individual(type(Mustang)))))

Or if you want to say that Ford *might* produce some Mustangs, then you
probably want


[Yes, I did mean to say nothing here.]

> Forgive me my ignorance: what do you mean with 'partial'? I scanned
> through the W3C Recommendations but could not find it.

Here is an extract from OWL S&AS on 'partial':

2.3.1. OWL Lite Axioms OWL Lite Class Axioms
In OWL Lite class axioms are used to state that a class is exactly equivalent
to, for the modality complete, or a subclass of, for the modality partial, the
conjunction of a collection of superclasses and OWL Lite Restrictions. It is
also possible to indicate that the use of a class is deprecated. 

axiom ::= 'Class(' classID ['Deprecated'] modality { annotation } { super } ')'
modality ::= 'complete' | 'partial'


2.3.2. OWL DL Axioms OWL DL Class Axioms

The OWL DL abstract syntax has more-general versions of the OWL Lite class
axioms where superclasses, more-general restrictions, and boolean combinations
of these are allowed. Together, these constructs are called descriptions. 

axiom ::= 'Class(' classID  ['Deprecated'] modality { annotation } { description } ')'
modality ::= 'complete' | 'partial'

> The code you show may not be correct, but I accept that you know more of
> OWL than I do. The rdf:range of someValuesFrom is rdfs:Class, and Ford
> is an Individual. How do you match that?

Oops, I made an error.  I should have said

	Class(Manufacturer partial)
	Individual(Ford type(Manufacturer))

	ObjectProperty(manufactured-by Functional)

	Class(Car partial)

	Class(Mustang partial Car restriction(manufactured-by value(Ford)))

> Regards,
> Hans

Received on Friday, 17 March 2006 16:39:55 UTC