Monday, February 13, 2006
Generative Methodology Glass Bead Games
n-articulated ontological framework
On using RDF to model web services
Link back to part of the “solution” to translations between
RDF / OWL and Models of Information -> [167]
Sub-theme
n-articulated
ontological framework
[168] [169] [170] [171] [172] [173] [174]
Communication from Andrea Proli
Hi Raj,
I am afraid the important
issues here can not be explained in a few words because it seems to me that you
are a little confused and you probably would need an extended answer. If you
are a little confused, it is understandable.
I do not have time to write
a lot at the moment. But still, I try to give you an intuitive explanation through
an example.
Consider the differences between owl:Class and rdfs:Class. OWL "overrides" the rdfs:Class resource by additionally defining an owl:Class resource.
This class resource would better be qualified as "owl-dl:Class" in my humble opinion. because not all RDFS classes are valid OWL classes.
Not all RDFS classes are valid OWL classes is due in part to the fact, among other facts, that classes in RDFS can be instances of other classes, while in OWL-DL and OWL-lite this is forbidden. Thus, there is a precise motivation to specialize rdfs:Class by means of owl:Class.
To cite the authors of the OWL Reference Guide www.w3.org/TR/owl-ref/ ]:
"owl:Class is defined
as a subclass of rdfs:Class. The rationale for having a separate OWL class
construct lies in the restrictions on OWL DL (and thus also on OWL Lite), which
imply that not all RDFS classes are legal OWL DL classes. In OWL Full
these restrictions do not exist and therefore owl:Class and rdfs:Class are
equivalent in OWL Full."
Now I will give a note on subClassOf. The subclass relationship as defined by RDFS (rdfs:subClassof) is neither too powerful for OWL (as the rdfs:Class resource is) nor too poor, indeed its semantics ("A is a subclass of B if and only if the set of individuals ext(A) denoted by A is a subset of the set of individuals ext(B) denoted by B) remains applicable and unchanged, no matter whether A and B are "rdfs:Class"es or "owl:Class"es.
Thus, there is no need to introduce a specialized "owl:subClassOf" property and this is why, indeed, such a specialized property does not exist. This note on subClassOf is made merely for completeness.
In general, the reason why you have an "owl:" version for some resources, and not for some others, is that in some cases the original ones are not "suited" for OWL (rdfs:Class, for instance, is too "powerful", it has too few semantic conditions attached and does not constrain the legal interpretation to a degree that is compatible with the definition of a "Class" in OWL).
Another important thing in answering your questions is the following: you should not deduce that you are "using OWL" from the mere fact that the "owl:" prefix appears in your document, and vice versa you should not think that in order to "use OWL" you need to add "owl:" prefix somewhere in your document. Your document, "a priori", is just a set of statements written in RDF syntax with resource names coming from a given vocabulary (say OWL, RDFS, no matter what ...).
A program interprets the vocabulary. It is the fact that *the program you use to answer your questions over that document* is “aware” [1] of the semantic conditions attached to those terms by the definition of OWL, or RDFS, etc, and produces entailments according to those conditions. It is the program that really tells you that OWL is being "used".
One source of confusion might be that it is often implicitly assumed that documents containing a resource name coming from the "owl:" namespace are "reasoned" [2] over by OWL-aware programs.
So, in the end, the answer to your question "If I want to get the full use of Owl advantages is there a need to also use RDF/RDFS properties in the ontology?" is "no".
I'm not sure whether this post was clear enough, so if you have some refined questions I will try to answer in the best way I can.
Regards,
Andrea