- From: Brian McBride <bwm@hplb.hpl.hp.com>
- Date: Thu, 20 Feb 2003 13:26:16 +0000
- To: pat hayes <phayes@ai.uwf.edu>, "Qu Yuzhong" <yzqu@seu.edu.cn>
- Cc: "rdf-comments" <www-rdf-comments@w3.org>
At 12:36 19/02/2003 -0600, pat hayes wrote: >> > >> > >{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. >> >>Understood. Thanks! >>As you pointed, the RDFS can be, is intended to be, used as a foundation >>for other, richer, languages which are extensions of RDF. >>My point is that the another role of the RDFS is as an ontology language, >>but the RDFS as an ontology language is not the full RDFS, it should be >>defined by some constraints. > >OK, so I think now that I follow your point. Is this a fair summary?: > >There is a class of languages called 'ontology languages'. Considered as >an ontology language, RDFS provides too much expressive power, and the >extra power is inappropriate for an ontology language. Therefore, it would >be desirable if a subset of RDFS could be identified which conforms to the >requirements for an ontology language (by imposing constraints on the >ability to define classes of classes, classes of properties and properties >of classes, as outlined later in your message.) > >If so, I will suggest that Brian give this an issue number for >consideration by the WG. Qu, I have recorded this comment at http://www.w3.org/2001/sw/RDFCore/20030123-issues/#qu-03 The WG will consider this and respond in due course. Once again, thank you for time and effort commenting on the RDFCore WD's. Brian >> > >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. >> >>I tried to use these constraints to characterize the RDFS as an ontology >>language. It's also possible (maybe necessary) to give a subset of RDFS >>as an ontolofy language by constrainting the syntax. Suppose it's named >>as RDFS-ONT. >> >>In most use cases, people and machines just use RDFS-ONT and other >>ontology languages such as OWL Lite and OWL DL. They needn't to specify a >>new class of classes, a new class of properties, a new property about >>classes or properties. If they really need these constructs, they should >>define these constructs in a new ontology language and publish it. >> >>Suppose an RDF engine gets an RDF document containing a specification for >>a new class of classes, or a new class of properties. The RDF engine can >>do some really useful inferences? For example, the RDF engine is not >>OWL-aware, and the class is OWL:TransitiveProperty (a class of >>properties). The useful inferences depend on the ontology language being >>used and the awareness of the engine. >> >>To impose some suitable constraints (as in RDFS-ONT) is to get more, >>including clearness, simpleness and performance. Yes, it doesn't prevent >>people from using the RDFS to specify a new class of classes, or a new >>class of properties. But, it's not really useful to do so. >> >>In sum, the another role of the RDFS is like RDFS-ONT, a constrained >>version of the RDFS. In addition, the (or similar) constraints should be >>satisfied by the other ontology languages. >> >> > >*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. >> >>In this context,a "meta-class" means a class of classes. A class is a >>class of classes iff it's an rdfs:subClassOf rdfs:Class. The rdf:type >>relationship can be used to tell if a class is a member of a "meta-class" . >> >> > > 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? >> >>I agree. >> >>The previous constraints are using an exclusion approach. Here I use an >>inclusion approach. >>I tried to figure out what constructs an ontology language (such as >>RDFS-ONTO) should provide: >> >>*meta-classes >>*property-classes >>*properties about classes or properties >> >>and how these constructs are used. >> >>By the previous constraints, I tried to figure out what mechanism an >>ontology language (such as RDFS-ONTO) should not provide: the mechanism >>to define a new class of classes, a new class of properties, a new >>property about classes or properties. >> >> > >*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. >> >>Thanks for your understanding, your response is very helpful! >> >>Yuzhong Qu >> >> > 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 >> > >> > > > > >-- > >--------------------------------------------------------------------- >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 Thursday, 20 February 2003 08:25:28 UTC