- From: Pat Hayes <phayes@ihmc.us>
- Date: Thu, 21 May 2009 11:55:40 -0500
- To: "Boris Motik" <boris.motik@comlab.ox.ac.uk>
- Cc: "'Seaborne, Andy'" <andy.seaborne@hp.com>, "'Eric Prud'hommeaux'" <eric@w3.org>, "'Alan Ruttenberg'" <alanruttenberg@gmail.com>, <public-rdf-text@w3.org>, "'Sandro Hawke'" <sandro@w3.org>, "'Axel Polleres'" <axel.polleres@deri.org>
On May 21, 2009, at 4:41 AM, Boris Motik wrote: > Hello, > > Given what you say in this e-mail, this is option (3) from my > previous e-mail. I > am perfectly happy with this. I'm not happy with this. This solution imposes a new, and completely unnecessary, burden on virtually every user of RDF, whether or not they intend to make use of OWL2 or RIF. It vastly increases the opportunities for systems to fail to interact properly for reasons that are invisible to users, and it has no obvious rationale to guide user's intuitions. (Why should I use rdf:text and add a meaningless trailing '@', when a plain literal means the very same thing?) Allow me to suggest the following as an alternative. (This may well be isomorphic to what Alan originally suggested.) OWL 2 and RIF accept, in their RDF transcriptions, RDF plain literals using the current RDF syntax without change; but treat them, for internal purposes, as 'invisibly' typed by a datatype which I will here call foo:text. This foo:text is unique among RDF datatypes in that it can apply to literals with language tags. The lexical space of foo:text is the set of all strings and pairs <string, tag>, and its L2V mapping is the identity map. (Or, if y'all prefer, it could be restricted to the case with tags, and just use xsd:string for the untagged case.) This allows RDF literals to be used between all the specs without being syntactically transformed in any way, eliminating all interoperability issues at the syntax level and avoiding all these problems of RDF becoming poisoned by "rdf:text" leakage. Semantically it is exactly equivalent to the rdf:text proposal, I believe. Its one peculiarity is that foo:text absorbs RDF lang tags into its lexical space; but this is semantically harmless, and since foo:text does not occur in the actual literal syntax it does not violate the RDF classification of literals, which is purely syntactic, so it does in fact (just) squeak inside the RDF specifications. (It is a semantic extension, but then OWL and RIF already are.) If one wants to be extremely lawyerly, one has to say that foo:text is not an RDF datatype, strictly speaking, but nothing will break if RIF and OWL and SPARQL (and indeed RDF, for that matter) treat it as being one. And as it affects OWL 2 and RIF only at the level of RDF transcription, it should require no change to their higher-level syntaxes. It is not a 'default', so does not introduce non-mon issues. Seems to me that this would completely eliminate all the interoperability problems without asking OWL or RIF do more than make minor changes to their RDF encoding rules. It might even make them a bit simpler. Thoughts? Objections? Pat > > My other e-mail outlined the parts of the document that might need > changing in > order to resolve this issue. I am unsure whether you would be happy > with just > changing the SHOULDs to MUSTs in the relevant parts. If you feel > that more > should be said, would you please mind proposing some text that we > could slot in? > Feel free to give me just a rough draft, and I'll try to work it > into the > document as best as I can. > > Regards, > > Boris > >> -----Original Message----- >> From: Seaborne, Andy [mailto:andy.seaborne@hp.com] >> Sent: 21 May 2009 11:34 >> To: Boris Motik; 'Eric Prud'hommeaux' >> Cc: 'Alan Ruttenberg'; public-rdf-text@w3.org; 'Sandro Hawke'; >> 'Axel Polleres' >> Subject: RE: A summary of the proposal for resolving the issues >> with rdf:text >> --> Could you please check it one more time? >> >> >> >>> -----Original Message----- >>> From: Boris Motik [mailto:boris.motik@comlab.ox.ac.uk] >>> Sent: 20 May 2009 15:58 >>> To: 'Eric Prud'hommeaux' >>> Cc: Seaborne, Andy; 'Alan Ruttenberg'; public-rdf-text@w3.org; >>> 'Sandro >>> Hawke'; 'Axel Polleres' >>> Subject: RE: A summary of the proposal for resolving the issues with >>> rdf:text --> Could you please check it one more time? >>> >>> Hello, >>> >>> I have to agree that the text in the rdf:text specification might >>> not >>> reflect >>> correctly the intentions I expressed. Quite frankly, we (i.e., the >>> authors of >>> the rdf:text specification) haven't been really aware of all the >>> repercussions >>> and possible interpretations of our spec. The text you refer to at >>> the >>> end of >>> this e-mail has been introduced as a reaction to one of the earlier >>> comments by >>> the SPARQL WG. >>> >>> Nevertheless, here is what the goals of rdf:text are: >>> >>> 1. Both RIF and OWL 2 find the distinction between plain and typed >>> literals >>> painful. This is because, whenever one refers to literals, one >>> needs two >>> subcases: for a plain and for a typed literal. Both RIF and OWL 2 >>> have >>> independently come up with exactly the same idea: they opted to >>> represent the >>> "semantic content" of plain literals through typed literals whose >>> value >>> is the >>> same as the corresponding plain literals. This makes the >>> definitions and >>> the >>> semantic treatment of literals in both RIF and OWL 2 much simpler. >>> >>> >>> 2. Both RIF and OWL 2 need a mechanism to refer to the set of all >>> plain >>> literals. For example, in OWL 2 you might want to say "the range >>> is a >>> piece of >>> text". In OWL 2 this is very important because of facets. Using a >>> datatype for >>> this purpose is natural. Both RIF and OWL 2 have chosen to follow >>> the >>> definitions of datatypes from XML Schema. Thus, each datatype >>> consists >>> of a set >>> of lexical values, a value space, and a L2V mapping. Plain >>> literals do >>> not >>> follow these principles; therefore, rdf:text defines lexical >>> values that >>> encode >>> the content of plain literals. >>> >>> >>> Now as I have already said, we have not had the complete store as >>> clear >>> in our >>> minds right from the beginning. Given all the LC comments (which >>> have by >>> the way >>> have been quite useful and have significantly improved the spec), >>> however, both >>> RIF and OWL 2 have agreed that the view I proposed in my e-mail is >>> the >>> appropriate one (at least from the RIF and OWL 2 points of view). As >>> I've stated >>> in my summary e-mail, to achieve this we simply need to remove >>> from the >>> specification any special treatment of rdf:text: this should be a >>> datatype like >>> any other. This is precisely the part of the document that you are >>> referring to. >>> >>> Thus, the final version of the document would not mention any >>> interoperability >>> problems. Furthermore, we may also rework the introduction to make >>> the >>> intention >>> behind rdf:text clearer. >>> >>> Regards, >>> >>> Boris >> >> Recap: >> >> Another goal is data-exchange, between systems that have different >> capabilities, including different entailment choices. Introducing >> alternative >> representations of the same thing is not good. We all have to live >> with >> standards because the cost of changes is so high so we work within >> them where >> possible. Standards are a compromise. >> >> This can be met by: >> >> When reading RDF data, systems are free and correct to convert >> "foo"@en to an >> rdf:text form. >> This is just stating they are semantically equivalent. >> >> When exposing in an RDF form, use the "foo"@en form. >> This includes graph exchange and SPARQL. >> >> This leaves the 2 goals above untouched. It maximising >> interoperation with >> existing systems. >> >> Andy >> > > > > ------------------------------------------------------------ IHMC (850)434 8903 or (650)494 3973 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32502 (850)291 0667 mobile phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes
Received on Thursday, 21 May 2009 16:56:56 UTC