- From: <jos.deroo.jd@belgium.agfa.com>
- Date: Fri, 28 Sep 2001 02:06:34 +0100
- To: phayes@ai.uwf.edu
- Cc: w3c-rdfcore-wg@w3.org
[sorry, we had some errors] Pat, > There are some serious bugs in the RDFS closure table in section 6 of > the MT WP. See a recent message from Peter Patel-Schneider and my > reply, on rdf-logic > http://lists.w3.org/Archives/Public/www-rdf-logic/2001Sep/0033.html. > I will try to get the bugs out and produce a revision as soon as > possible (couple of days). yes, we also tried to do some testing and for the moment we have the following triples (which are true in any RDFS interpretation) ==== rdfs:Resource a rdfs:Class . rdfs:domain a rdfs:ConstraintResource . rdfs:range a rdfs:ConstraintResource . rdf:type rdfs:domain rdfs:Resource . rdf:type rdfs:range rdfs:Class . rdfs:subClassOf rdfs:domain rdfs:Class . rdfs:subClassOf rdfs:range rdfs:Class . rdfs:subPropertyOf rdfs:domain rdf:Property . rdfs:subPropertyOf rdfs:range rdf:Property . rdfs:domain rdfs:domain rdf:Property . rdfs:domain rdfs:range rdfs:Class . rdfs:range rdfs:domain rdf:Property . rdfs:range rdfs:range rdfs:Class . rdfs:ConstraintProperty rdfs:subClassOf rdf:Property . ==== plus the MT rules except 3a, 3b, 7, 9a and 9b i'm not sure about rdf:type rdfs:domain rdfs:Resource . which would also have lead to rule 7a and 7b we now have that the schema-closure of the graph consisting of the single triplet :foo :bar :baz . is ==== :foo :bar :baz . :foo a rdfs:Resource . :bar a rdf:Property . :bar a rdfs:Resource . :baz a rdfs:Resource . rdfs:Resource a rdfs:Class . rdfs:Resource a rdfs:Resource . rdf:Property a rdfs:Class . rdf:Property a rdfs:Resource . rdf:Property rdfs:subClassOf rdfs:Resource . rdfs:Class a rdfs:Class . rdfs:Class a rdfs:Resource . rdfs:Class rdfs:subClassOf rdfs:Resource . rdfs:ConstraintResource a rdfs:Class . rdfs:ConstraintResource a rdfs:Resource . rdfs:ConstraintResource rdfs:subClassOf rdfs:Resource . rdfs:ConstraintProperty a rdfs:Class . rdfs:ConstraintProperty a rdfs:Resource . rdfs:ConstraintProperty rdfs:subClassOf rdf:Property . rdfs:ConstraintProperty rdfs:subClassOf rdfs:Resource . rdf:type a rdf:Property . rdf:type a rdfs:Resource . rdf:type rdfs:domain rdfs:Resource . rdf:type rdfs:range rdfs:Class . rdfs:domain a rdfs:ConstraintResource . rdfs:domain a rdf:Property . rdfs:domain a rdfs:Resource . rdfs:domain rdfs:domain rdf:Property . rdfs:domain rdfs:range rdfs:Class . rdfs:range a rdfs:ConstraintResource . rdfs:range a rdf:Property . rdfs:range a rdfs:Resource . rdfs:range rdfs:domain rdf:Property . rdfs:range rdfs:range rdfs:Class . rdfs:subClassOf a rdf:Property . rdfs:subClassOf a rdfs:Resource . rdfs:subClassOf rdfs:domain rdfs:Class . rdfs:subClassOf rdfs:range rdfs:Class . rdfs:subPropertyOf a rdf:Property . rdfs:subPropertyOf a rdfs:Resource . rdfs:subPropertyOf rdfs:domain rdf:Property . rdfs:subPropertyOf rdfs:range rdf:Property . ==== i.e. //// C:\euler>jview Euler rdfsrules.n3 rdfsfacts.n3 rdfsquery.n3 # Generated with http://www.agfa.com/w3c/euler/#27.087 on Fri Sep 28 01:53:12 GM T+02:00 2001 # for query file:/euler/rdfsquery.n3 # given [file:/euler/rdfsrules.n3, file:/euler/rdfsfacts.n3] @prefix log: <http://www.w3.org/2000/10/swap/log#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix once: <file:/euler/rdfsquery.n3#>. @prefix : <file:/euler/rdfsrules#>. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. :foo :bar :baz. :foo a rdfs:Resource. :bar a rdf:Property. :bar a rdfs:Resource. :baz a rdfs:Resource. rdfs:Resource a rdfs:Class. rdfs:Resource a rdfs:Resource. {:RULE5 a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. {:RULE5 a rdfs:Resource. rdfs:domain rdfs:domain rdf:Property. rdf:type rdfs:domain rdfs:Resource} log:implies {rdf:type rdf:type rdf:Property}} log:implies {rdf:Property a rdfs:Class}} log:implies {rdf:Property rdfs:subClassOf rdfs:Resource}} log:implies {rdf:Property a rdfs:Class}. rdf:Property a rdfs:Resource. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. {:RULE5 a rdfs:Resource. rdfs:domain rdfs:domain rdf:Property. rdf:type rdfs:domain rdfs:Resource} log:implies {rdf:type rdf:type rdf:Property}} log:implies {rdf:Property a rdfs:Class}} log:implies {rdf:Property rdfs:subClassOf rdfs:Resource}. {:RULE5 a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. rdfs:Resource rdf:type rdfs:Class} log:implies {rdfs:Class a rdfs:Class}} log:implies {rdfs:Class rdfs:subClassOf rdfs:Resource}} log:implies {rdfs:Class a rdfs:Class}. rdfs:Class a rdfs:Resource. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. rdfs:Resource rdf:type rdfs:Class} log:implies {rdfs:Class a rdfs:Class}} log:implies {rdfs:Class rdfs:subClassOf rdfs:Resource}. {:RULE5 a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. rdfs:domain rdf:type rdfs:ConstraintResource} log:implies {rdfs:ConstraintResource a rdfs:Class}} log:implies {rdfs:ConstraintResource rdfs:subClassOf rdfs:Resource}} log:implies {rdfs:ConstraintResource a rdfs:Class}. rdfs:ConstraintResource a rdfs:Resource. {:RULE8 a rdfs:Resource. {:RULE6 a rdfs:Resource. rdf:type rdfs:range rdfs:Class. rdfs:domain rdf:type rdfs:ConstraintResource} log:implies {rdfs:ConstraintResource a rdfs:Class}} log:implies {rdfs:ConstraintResource rdfs:subClassOf rdfs:Resource}. {:RULE5 a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. rdfs:ConstraintProperty rdfs:subClassOf rdf:Property} log:implies {rdfs:ConstraintProperty a rdfs:Class}. rdfs:ConstraintProperty a rdfs:Resource. rdfs:ConstraintProperty rdfs:subClassOf rdf:Property. {:RULE8 a rdfs:Resource. {:RULE5 a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. rdfs:ConstraintProperty rdfs:subClassOf rdf:Property} log:implies {rdfs:ConstraintProperty a rdfs:Class}} log:implies {rdfs:ConstraintProperty rdfs:subClassOf rdfs:Resource}. rdf:type a rdf:Property. rdf:type a rdfs:Resource. rdf:type rdfs:domain rdfs:Resource. rdf:type rdfs:range rdfs:Class. rdfs:domain a rdfs:ConstraintResource. rdfs:domain a rdf:Property. rdfs:domain a rdfs:Resource. rdfs:domain rdfs:domain rdf:Property. rdfs:domain rdfs:range rdfs:Class. rdfs:range a rdfs:ConstraintResource. rdfs:range a rdf:Property. rdfs:range a rdfs:Resource. rdfs:range rdfs:domain rdf:Property. rdfs:range rdfs:range rdfs:Class. rdfs:subClassOf a rdf:Property. rdfs:subClassOf a rdfs:Resource. rdfs:subClassOf rdfs:domain rdfs:Class. rdfs:subClassOf rdfs:range rdfs:Class. rdfs:subPropertyOf a rdf:Property. rdfs:subPropertyOf a rdfs:Resource. rdfs:subPropertyOf rdfs:domain rdf:Property. rdfs:subPropertyOf rdfs:range rdf:Property. # Proof found for file:/euler/rdfsquery.n3 in 292 steps (16045 steps/sec) \\\\ (the 1a, 1b and 1c rules are not shown unfortunately) -- Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Thursday, 27 September 2001 20:06:48 UTC