Search Mailing List Archives
[protege-owl] Layered Ontologies?
johann.petrak at chello.at
Tue Mar 3 11:58:45 PST 2009
Pitonyak, Andrew D wrote:
>> I am not sure what the implications are for reasoning when
>> the ontology becomes OWL full, but I think there are
>> severe implications, no?
> The primary change when moving from OWL DL to OWL Full is in restrictions on features supported by both, and access to some RDF features. OWL Full allows free mixing of OWL with RDF Schema and, like RDF Schema, does not enforce a strict separation of classes, properties, individuals and data values. OWL DL puts constraints on the mixing with RDF and requires disjointness of classes, properties, individuals and data values. The main reason for having the OWL DL sublanguage is that tool builders have developed powerful reasoning systems which support ontologies constrained by the restrictions required for OWL DL.
> In OWL DL, Datatype properties can not use inverse of, inverse functional, symmetric, or transitive.
> OWL DL do not allow cardinality constraints on transitive properties or their inverse, or any super-property.
> OWL DL are limited in some instances (I am not sure why).
> Much of the RDF and RDFS vocabulary cannot be used in OWL DL.
> All classes and properties must be explicitly typed.
> OWL DL does not allow properties to link to classes, only individuals.
> The constraints are required for OWL DL to fall into the domain of a "Description Logic". In other words, people that study logic and reasoners know that if you stay in OWL DL, then your reasoner is able to make decisions (things are "decidable"). Examples include things like: Is an instance a particular type, checking relations, is a concept a subset of another concept, and is a concept consistent. I expect that consistency is a real problem in OWL FULL.
So essentially that means one uses any kind of reasoning, even the
most basic and important finding out about class memebership.
In other words, it takes away most of what OWL is really about.
Therefore, moving to OWL Full just for the ability to do what I
described in my other email does not seem to be an option.
On the other hand, "hiding" things like Classes or Properties in the
layered ontology in a string data property does not seem to be right
either, as it encapsulates something that should be explicit in a
string and leaves all the semantics to the program using the porperty.
All in all I think that this particular aspect of OWL is very
unsatisfactory and limiting -- I am not sure if there is some
principal or pragmatic reason for not allowing properties that
treat classes as individuals but where the reasoner knows to
ignore the "classness" aspect of the property value.
More information about the protege-owl