W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > November 2002

Re: missing (and incorrect) RDFS axioms

From: Jos De_Roo <jos.deroo.jd@belgium.agfa.com>
Date: Sat, 9 Nov 2002 15:23:53 +0100
To: "pat hayes <phayes" <phayes@ai.uwf.edu>
Cc: fmanola@attbi.com, "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>, w3c-rdfcore-wg@w3.org, w3c-rdfcore-wg-request@w3.org
Message-ID: <OFEF9F0263.E7B96CE1-ONC1256C6C.004EFFEA-C1256C6C.004F2214@agfa.be>


Pat, I'm not sure about the following, but I met them in
http://www.w3.org/2001/sw/RDFCore/Schema/200211/
and I think I would go for them

rdfs:Container a rdfs:Class .

which would then also carry

  rdf:Alt rdfs:subClassOf rdfs:Container .
  rdf:Bag rdfs:subClassOf rdfs:Container .
  rdf:Seq rdfs:subClassOf rdfs:Container .
  rdfs:member rdfs:domain rdfs:Container .


rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso .
rdfs:label rdfs:range rdfs:Literal .
rdfs:seeAlso rdf:type rdf:Property . ## trivially true
rdf:value rdf:type rdf:Property .    ## trivially true


which would then bring us to 30 classes/properties

####
rdf:Alt rdfs:subClassOf rdfs:Container .
rdf:Bag rdfs:subClassOf rdfs:Container .
rdfs:Class a rdfs:Class .
rdfs:Container a rdfs:Class .
rdfs:ContainerMembershipProperty rdfs:subClassOf rdfs:Property .
rdfs:Datatype a rdfs:Class .
rdf:List a rdfs:Class .
rdfs:Literal rdfs:subClassOf rdf:Resource .
rdf:Property a rdfs:Class .
rdfs:Resource a rdfs:Class .
rdf:Seq rdfs:subClassOf rdfs:Container .
rdf:Statement a rdfs:Class .
rdf:XMLLiteral a rdfs:Datatype; rdfs:subClassOf rdfs:Literal .

rdfs:comment rdfs:range rdfs:Literal .
rdfs:domain rdfs:domain rdf:Property; rdfs:range rdfs:Class .
rdf:first a owl:FunctionalProperty; rdfs:domain rdf:List .
rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso .
rdfs:label rdfs:range rdfs:Literal .
rdfs:member rdfs:domain rdfs:Container .
rdf:nil a rdf:List .
rdf:object rdfs:domain rdf:Statement .
rdf:predicate rdfs:domain rdf:Statement .
rdfs:range rdfs:domain rdf:Property; rdfs:range rdfs:Class .
rdf:rest rdfs:domain rdf:List; rdfs:range rdf:List .
rdfs:seeAlso a rdf:Property .
rdfs:subClassOf rdfs:domain rdfs:Class; rdfs:range rdfs:Class .
rdfs:subPropertyOf rdfs:domain rdf:Property; rdfs:range rdf:Property .
rdf:subject rdfs:domain rdf:Statement .
rdf:type rdfs:domain rdfs:Resource; rdfs:range rdfs:Class .
rdf:value a rdf:Property .
####


remark that when it is stated that
  some-class rdfs:subClassOf some-orher-class .
then it is per rdfs rule2 and
  rdfs:subClassOf rdfs:domain rdfs:Class .
not necessary to state that
  some-class a rdfs:Class.

similarly, it is not necessary to say that
  some-property a rdf:Property .
per rdfs rule1
(unless we have nothing else to say)

and also it is not necessary to state that
  some-property rdfs:domain rdfs:Resource .
  some-property rdfs:range rdfs:Resource .
as we have that
  anything a rdfs:Resource .
also per rule4a and rule4b

-- ,
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/


                                                                                                                        
                    pat hayes                                                                                           
                    <phayes@ai.uwf.edu>       To:     "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>          
                    Sent by:                  cc:     w3c-rdfcore-wg@w3.org, fmanola@attbi.com                          
                    w3c-rdfcore-wg-requ       Subject:     Re: missing (and incorrect) RDFS axioms                      
                    est@w3.org                                                                                          
                                                                                                                        
                                                                                                                        
                    2002-11-08 11:00 PM                                                                                 
                                                                                                                        
                                                                                                                        





Anyone on the WG, do y'all agree with Peter at @@@ below?? If someone
says yes and nobody objects,  I will put these entailments into the
MT. You have until the end of Monday.

-Pat

>Here are some more changes (marked by *).  They may not completely
>correspond to your most-recent changes.  Some of the axioms are changes to
>both the definition of rdfs-interpretations and rdfs closure.
>
>There is an issue here with respect to domains and ranges that are
>rdfs:Resource.  I think that it would be best to given domains and ranges
>for all properties.

Hmmm, not sure I agree. I'm perfectly happy for a property to have no
domain or range. The strengthened OWL rules for d&r will insert the
rdfs:Resource ranges automatically in any case, given the rdfs4 rules
and a bit of OWL reasoning.

>I think that it is worst to give some properties a
>domain or range or rdfs:Resource and others no domain or range.

I agree about that, it needs tidying up and we should go one way or
the other. My own preference would be to just not mention vacuous
domains and ranges at all.

Other lines below have comments.

>
>peter
>
>
>rdf:type       rdf:type    rdf:Property .
>rdf:type       rdfs:domain rdfs:Resource .
>rdf:type       rdfs:range  rdfs:Class .
>
>rdf:Property        rdf:type    rdfs:Class .
>
>rdf:Statement       rdf:type    rdfs:Class .
>
>rdf:subject         rdf:type    rdf:Property .
>rdf:subject         rdfs:domain rdf:Statement .
>rdf:subject         rdfs:range  rdfs:Resource .                   *
>
>rdf:predicate       rdf:type    rdf:Property .
>rdf:predicate       rdfs:domain rdf:Statement .
>rdf:predicate       rdfs:range  rdfs:Resource .                   *
>
>rdf:object          rdf:type    rdf:Property .
>rdf:object          rdfs:domain rdf:Statement .
>rdf:object          rdfs:range  rdfs:Resource .                   *
>
>rdf:Seq                  rdf:type    rdfs:Class .
>rdf:Bag                  rdf:type    rdfs:Class .
>rdf:Alt                  rdf:type    rdfs:Class .
>
>rdf:_n                   rdf:type    rdf:Property .                    *

follows from  (x a CMP -> x subprop rdfs:member) and domain of subproperty.

>rdf:_n                   rdfs:domain rdfs:Resource .                   *
>rdf:_n                   rdfs:range  rdfs:Resource .                   *
>
>rdf:List       rdf:type    rdfs:Class .                      *

Fixed

>
>rdf:first           rdf:type    rdf:Property .
>rdf:first           rdfs:domain rdf:List .
>rdf:first           rdfs:range  rdfs:Resource .                   *
>
>rdf:rest       rdf:type    rdf:Property .
>rdf:rest       rdfs:domain rdf:List .
>rdf:rest       rdfs:range  rdf:List .
>
>rdf:nil                  rdf:type    rdf:List .
>
>rdfs:Resource       rdf:type    rdfs:Class .
>rdfs:Class          rdf:type    rdfs:Class .
>rdfs:Literal        rdf:type    rdfs:Class .
>rdfs:XMLLiteral rdf:type    rdfs:Class .
>rdfs:Datatype       rdf:type    rdfs:Class .
>
>rdfs:domain         rdf:type    rdf:Property .
>rdfs:domain         rdfs:domain rdf:Property .
>rdfs:domain         rdfs:range  rdfs:Class .
>
>rdfs:range          rdf:type    rdf:Property .
>rdfs:range          rdfs:domain rdf:Property .
>rdfs:range          rdfs:range  rdfs:Class .
>
>rdfs:subPropertyOf rdf:type    rdf:Property .
>rdfs:subPropertyOf rdfs:domain rdf:Property .
>rdfs:subPropertyOf rdfs:range  rdf:Property .
>
>rdfs:subClassOf    rdf:type    rdf:Property .
>rdfs:subClassOf             rdfs:domain rdfs:Class .
>rdfs:subClassOf             rdfs:range  rdfs:Class .
>
>rdf:CMP                     rdfs:subClassOf rdfs:Property .
>rdf:_n                      rdfs:type            rdf:CMP .
>rdf:_n                      rdfs:domain     rdfs:Resource .            *
>rdf:_n                      rdfs:range           rdfs:Resource .
 *
>
>rdfs:XMLLiteral             rdf:type             rdfs:Datatype .
 *

Fixed

>rdfs:XMLLiteral             rdfs:subClassOf rdfs:Literal .

consequence of above and new rule 11

>
>rdfs:comment           rdf:type             rdf:Property
>rdfs:comment           rdfs:domain               rdfs:Resource .
 *
>rdfs:comment           rdfs:range           rdfs:Literal .        *
>
>rdfs:name              rdf:type             rdf:Property .        *
>rdfs:name              rdfs:domain               rdfs:Resource .
 *
>rdfs:name              rdfs:range           rdfs:Literal .        * @@@
>
>rdfs:seeAlso           rdf:type             rdf:Property .        * @@@
>rdfs:seeAlso           rdfs:domain               rdfs:Resource .
 *
>rdfs:seeAlso           rdfs:range           rdfs:Resource .            *
>
>rdfs:isDefinedBy   rdf:type           rdf:Property .         * @@@
>rdfs:isDefinedBy   rdfs:domain              rdfs:Resource .            *
>rdfs:isDefinedBy   rdfs:range               rdfs:Resource .            *
>rdfs:isDefinedBy   rdfs:subPropertyOf rdfs:seeAlso .         * @@@

I don't like the above. I don't think seeAlso *is* a property; if it
is, what's in its property extension??

I wasn't aware of that subproperty connection: is there a source for that?

>
>
>rdf1           xxx aaa yyy .                            aaa rdf:type
     rdf:Property .
>
>rdfs4a         xxx aaa yyy .                            xxx rdf:type
rdfs:Resource .
>rdfs4b         xxx aaa uuu .                            uuu rdf:type
     rdfs:Resource .
>rdfs7*         xxx rdf:type rdfs:Resource.         xxx rdfs:subClassOf
rdfs:Resource .

Invalid, given the restriction on subClassOf to classes. The old rule
7 is correct.

>
>
>rdfs2          xxx aaa yyy .                            xxx rdf:type zzz .
>          aaa rdfs:domain zzz .
>
>rdfs3          xxx aaa uuu .                            uuu rdf:type zzz .
>          aaa rdfs:range zzz .
>
>
>rdfs5          aaa rdfs:subPropertyOf bbb.         aaa rdfs:subPropertyOf
ccc .
>          bbb rdfs:subPropertyOf ccc.
>
>rdfs6          xxx aaa yyy .                            xxx bbb yyy .
>          aaa rdfs:subPropertyOf bbb.
>
>rdfs8          aaa rdfs:subClassOf bbb.            aaa rdfs:subClassOf ccc
.
>          bbb rdfs:subClassOf ccc.
>
>rdfs9          xxx rdfs:subClassOf yyy .           aaa rdf:type yyy .
>          aaa rdf:type xxx .
>
>
>rdfs10         xxx rdf:type rdfs:CMP .                  xxx
rdfs:subPropertyOf rdfs:member .
>
>
>x11*           xxx rdf:type rdfs:Datatype .        xxx rdfs:subClassOf
rdfs:Literal .

Added.

Pat



--
---------------------------------------------------------------------
IHMC                                                (850)434 8903   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 Saturday, 9 November 2002 09:24:37 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:54:01 EDT