- From: Richard Cyganiak <richard@cyganiak.de>
- Date: Mon, 21 May 2012 17:42:47 +0100
- To: Pat Hayes <phayes@ihmc.us>
- Cc: Ivan Herman <ivan@w3.org>, Steve Harris <steve.harris@garlik.com>, Guus Schreiber <guus.schreiber@vu.nl>, RDF WG <public-rdf-wg@w3.org>
Trackbot, this is for ISSUE-90. On 21 May 2012, at 16:08, Pat Hayes wrote: > Just to get the ball rolling, try this for size. > > Two literals "string1"^^Thedatatype "string2"^^Thedatatype are D-equivalent when: > Thedatatype is in D > and > L2V(Thedatatype)(string1) = L2V(Thedatatype)(string2) > > Then two graphs G1 and G2 are LV-equivalent with respect to D, or D-LV-equivalent, when there is a mapping M between D-equivalent literals such that G1=M(G2). > > Put into English, when the graphs are the same except that some literals may be replaced by others having the same datatype and the same value under their datatype. > > Note, M does not have to be 1:1. so for example it is OK to normalize several forms to one normalized form, eg "02"^^xsd:number and "00002"^^xsd:number both to "2"^^xsd:number. > > This does not use the 'entailment' route I suggested earlier, which I now see could introduce odd corner cases for some datatypes. This is more like a weakened form of graph isomorphism, restricted simply to substituting one literal form for another when they have the same semantic value. > > Question. Suppose two different datatypes have the same value for some strings. For example, suppose "2"^^xsdd:evenNumber = 2 = "2"^^xsd:number. Do we want to allow a substitution that changes the literal datatype in such cases? The above does not allow this, but it could be easily changed to allow it. For the use case that motivated this (test cases), we don't need to allow changes of the datatype. Best, Richard
Received on Monday, 21 May 2012 16:43:37 UTC