- From: Jeff Pan <pan@cs.man.ac.uk>
- Date: Tue, 30 Nov 2004 17:27:44 -0000
- To: "Jeremy Carroll" <jjc@hplb.hpl.hp.com>
- Cc: "\"SWBPD\"" <public-swbp-wg@w3.org>
Jeremy, Some early comments of the current version of http://www.w3.org/2001/sw/BestPractices/XSCH/xsch-sw/ . 1) I am trying to understand the ~ relationship. Do you mean to say that ~ is a set of sets, each of which contains all the typed literals corresponds to the a data value? Hence in RDF(S), ~ = {X| X = IL^-1(lv) for each lv in LV}, and in OWL DL, ~ = {X| X = L^-1(lv) for each lv in LV}. I understand the above definitions don't cover plain literals; anyway, it is not hard to extend IL and L to cover them. 2) In XML Schema Part 2, equality is CLEARLY defined as follows [1]: ["Equality" in this Recommendation is defined to be "identity" (i.e., values that are identical in the ·value space· are equal and vice versa).] Therefore we have L2S(xsd:decimal)("3.2") = L2S(xsd:float)("3.2") is true, but L2S(xsd:float)("3.2") = L2S(xsd:decimal)("3.20000000000000000001") is false; the latter one is FALSE because L2S(xsd:decimal)("3.20000000000000000001") is not in the value space of xsd:float. However, XML Schema Part 2 does not require that all its applications have to stick to the above definition of equality; on the contrary, applications "may use different definitions of equality for computational purposes". Accordingly, it suggests a mapping between different data values as follows [1]: [A literal in the ·lexical space· representing a decimal number d maps to the normalized value in the ·value space· of float that is closest to d in the sense defined by [Clinger, WD (1990)]; if d is exactly halfway between two such values then the even value is chosen.] Therefore, we have "3.20000000000000000001"^^xsd:decimal mapsTo(xsd:decimal,xsd:float) L2S(xsd:float)("3.2") is true, where mapsTo(xsd:decimal,xsd:float) is the mapping from xsd:decimal to xsd:float. Now if we want to use eq to cover both = and mapsTo, we can constrain a D-interpretation with the additional following condition: if <aaa,x>, <aaa',x'> are in D then for any two typed literals "sss"^^ddd, "sss'"^^ddd' in V with I(ddd) = x and I(ddd')=x', such that (i) sss is in the lexical space of x and sss' is in the lexical space of x', and (ii) L2V(x)(sss) = L2V(x')(sss') or <"sss"^^ddd, L2V(x')(sss')> is in mapsTo(ddd,ddd'), then <IL("sss"^^ddd), IL( "sss'"^^ddd' )> is in I(eq). Note that if sss is in the lexical space of x, IL("sss"^^ddd) = L2V(x)(sss), according to RDF Semantics [2]. Greetings, Jeff -- Dr. Jeff Z. Pan ( http://DL-Web.man.ac.uk/ ) School of Computer Science, The University of Manchester [1] http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/#float [2] http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#DTYPEINTERP ----- Original Message ----- From: "Jeremy Carroll" <jjc@hplb.hpl.hp.com> To: "Jeremy Carroll" <jjc@hplb.hpl.hp.com> Cc: "Jeff Pan" <pan@cs.man.ac.uk>; "SWBPD" <public-swbp-wg@w3.org> Sent: Monday, November 29, 2004 5:39 PM Subject: [XSCH] XPath eq, practical datatype issues and formal specification Jeremy Carroll wrote: > (but > I've also got a soufflé to bake ...) I am just about to start cooking ... but I have checked in what I've done so far on value spaces it is at: http://www.w3.org/2001/sw/BestPractices/XSCH/xsch-sw/ particularly http://www.w3.org/2001/sw/BestPractices/XSCH/xsch-sw/#sec-values I've started on the hard bit, which is trying to articulate how what is essential a practical programmers idea of equality (XPath eq) can be used within RDF and OWL despite, in the corner cases, being neither transitive nor reflexive. Any help would be appreciated: http://www.w3.org/2001/sw/BestPractices/XSCH/xsch-sw/#sec-values-eq I hope to continue this tomorrow a bit, but I have less time than today. Jeremy
Received on Tuesday, 30 November 2004 17:28:19 UTC