- From: pat hayes <phayes@ai.uwf.edu>
- Date: Tue, 18 Feb 2003 17:22:32 -0600
- To: "Qu Yuzhong" <yzqu@seu.edu.cn>
- Cc: "rdf-comments" <www-rdf-comments@w3.org>
>{pat wrote] >... > >> I would ask for this notion of 'role' to be clarified before giving a >> detailed response. The existing RDFS model theory does not recognize >> any 'roles'. > >Yes, the existing RDFS model theory does not recognize any dual 'roles'. > >Based on my understanding, RDFS (RDF and RDF Schema) can be used as >a meta-language (a language for defining other ontology languages) >as well as an ontology language. That is not exactly my understanding, although we may be simply using terminology slightly differently. RDF is a language for making simple assertions about things (which can be anything, in principle). The primary intended purpose of RDF(S) is to provide for semantic markup of web pages to express content in a machine-usable form. It is essentially a small subset of a first-order logic. It can be, and is intended to be, used as a foundation for other, richer, languages which are extensions of RDF (and include RDF as sublanguages) but it is not accurate to describe this as using RDF to *define* other languages, since these other languages (including RDFS and OWL) in fact cannot be defined in RDF: they require extra semantic conditions which need to be stated explicitly in a specification document. >The basic difference between them can be figured out as follows: > >1. RDFS as an ontology language. > >It can be defined by following constraints (exclusion approach): BUt it is not appropriate for RDF to incorporate such constraints and exclusions, and in fact avoiding any such constraints and exclusions was a design goal of the entire project. This is because one expects that an RDF(S) reasoner will be using content expressed in RDF(S) which comes from a variety of sources, written by different authors at different times and possibly from completely different parts of the planet. To impose any kind of global constraint or exclusions would therefore be likely to prevent useful inferences being made, since it is impossible to guarantee that the merged pieces of RDF will satisfy any such constraint; and in any case there would be little point in doing so since there would be no central authority to report any such 'error' to. >*Not allowed to define a new "meta-class" (class of classes). So any class of classes is a meta-class? That seems to me to be a very odd notion, particularly when there may be no way in general to tell if a class has other classes as its members. > Examples of meta-classes: rdfs:Class, rdfs:Datatype, OWL:Class >(This also implies that one couldn't use the rdfs:subClassOf >construct to specify a class from a predefined "meta-class") > >*Not allowed to define a new "property-class" (class of properties). > Examples of property-classes: rdf:Property, >rdfs:ContainerMembershipProperty, OWL:TransitiveProperty. >(This also implies that one couldn't use the rdfs:subClassOf >construct to specify a class from a predefined "property-class") > >*Not allowed to define a new property about classes or properties >(Typically, the rdfs:range and/or rdfs:domain of the property is >specified to be a "meta-class" or "property-class"). >Examples: rdfs:subClassOf, rdfs:subPropertyOf, rdfs:range, rdfs:domain, >OWL:equivalentClass > >*Not allowed to define a new subproperty of an RDFS Kernel >property(Or broaden to the predefined RDFS properties). > The RDFS Kernel properties are as follows: > rdfs:range, rdfs:domain, rdf:type, rdfs:subClassOf, rdfs:subPropertyOf. > Other predefined RDFS properties includes rdfs:label, rdfs:comment, .... > > >Typically, An ontology language is used as follows: I am not sure what you mean by 'typically', but this does not correspond to the kind of ontology construction with which I am familiar. I do not think it would be appropriate for RDF to enforce this technique on all users. However, I note that all the following can be done within the RDF(S) framework; that is, there is nothing in RDFS which *prevents* one from adopting this methodology. Do you agree? >*use the predefined "meta-class" to instantiate or specify a new class. >*use the rdfs:subClassOf construct to specify a class from a >user-defined class, or a predefined class other than a "meta-class" >or "property-class". >*use the predefined "property-class" to instantiate or specify a new property. >*use the rdfs:subPropertyOf construct to define a new property from >a user-defined property. >*use rdfs:range and/or rdfs:domain to constraint a user-defined >property,and the rdfs:range and/or rdfs:domain of the property must >not be a "meta-class" or "property-class". > >*specify individual resources. >*make assertions on individual resources > >*Other approach based on the specific constructs in the given >ontology language. > > >2. RDFS as a language for defining other (RDFS-based) ontology languages. >As a meta-language, RDFS is typically used to define the following >constructs of the target ontology language: >*"meta-classes" other than rdfs:Class. Example: OWL:Class > >*"property-classes" other than rdf:Property. Example: OWL:TransitiveProperty. > >*built-in core properties other than RDFS Kernel property >(rdfs:range, rdfs:domain, rdf:type, rdfs:subClassOf, >rdfs:subPropertyOf), they are properties about classes or >properties. Examples: OWL:equivalentClass, OWL:inverseOf. > >*Other constructs(classes, properties,individuals,...) > > >In sum, RDFS (as a meta-language) can be used to define other >ontology languages such as DAML and OWL, these languages are >extensions of RDFS (as an ontology language). > >The dual roles have different attitude to the following key constructs: >*meta-classes >*property-classes >*properties about classes or properties > >Roughly speaking, RDF Semantics (the spec) is ambitious in that it >tries to give the semantics of RDFS at both of ontology language >layer and meta-language layer with a single mechanism. It seems not >bad as the semantics of RDFS (as a meta-language), but not perfect >as the semantics of RDFS (as an ontology language) . >As an ontology language, RDFS should have a clear and fixed >semantics based on a subset of FOL (or other well known Logic such >as Order-Sorted Logic). I find it hard to reconcile this assertion (with which I fully agree, by the way) with your above description of the typical ontology language. FOL does not impose any of the constraints or restrictions which you describe above. >The semantics of OWL (as an extension of RDFS) can also be defined >by using the same approach. > > >Thanks for your concern, any comment is welcome! Thanks for your reply. I am not sure if we are converging on an agreement, but I certainly feel like I understand your ideas better. Pat Hayes -- --------------------------------------------------------------------- IHMC (850)434 8903 or (650)494 3973 home 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32501 (850)291 0667 cell phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes s.pam@ai.uwf.edu for spam
Received on Tuesday, 18 February 2003 18:22:50 UTC