- From: Markus Lanthaler <markus.lanthaler@gmx.net>
- Date: Tue, 17 Dec 2013 20:29:31 +0100
- To: "'Richard Cyganiak'" <richard@cyganiak.de>
- Cc: "'RDF Working Group WG'" <public-rdf-wg@w3.org>
On Tuesday, December 17, 2013 7:40 PM, Richard Cyganiak wrote: > Hi Markus, Hi again :-) > So the only options that I can see are: > > 1. make *every mention* of the datatypes in *all* the specs > informative, including Semantics and RDF/XML, OK, I don't think we need to discuss concepts but I just checked all other documents again to see what would need to be changed -- RDF 1.1 Semantics -- Only mention: Two other datatypes rdf:XMLLiteral and rdf:HTML are defined in [RDF11-CONCEPTS]D interpretations MAY fail to recognize these datatypes. Could simply be dropped -- RDF Schema 1.1 -- Only mentions non-normatively that: The class rdf:HTML is the class of HTML literal values. rdf:HTML is an instance of rdfs:Datatype and a subclass of rdfs:Literal The class rdf:XMLLiteral is the class of XML literal values. rdf:XMLLiteral is an instance of rdfs:Datatype and a subclass of rdfs:Literal. No change needed -- RDF 1.1 XML Syntax -- rdf:HTML not mentioned; rdf:XMLLiteral is obviously used to type 'rdf:parseType="Literal" content' No change needed here either. No mentions at all in: - RDF 1.1 Turtle - RDF 1.1 TriG - RDF 1.1 N-Triples - RDF 1.1 N-Quads - RDF 1.1 Test Cases - JSON-LD - JSON-LD API > I don't know if the first option is viable, because no normative > definition can depend on anything informative, so we might just end up > pushing the problem deeper and deeper. As far as I can see, there are no normative definitions depending on these. Since you said this now several times, could you point me to such normative definitions that depend on these datatypes? > 2. normatively define the datatypes, but make *only* the value space > and L2V space informative (see below), > 3. create a specification that is internally inconsistent and hope that > nobody notices or cares. > I happen to care a lot about internal consistency, that's why I'd > really rather not go down the third route. Me too but I still can't see how this change we cause anything to be internally inconsistent. > More on the second option below. > > On 17 Dec 2013, at 16:44, Markus Lanthaler wrote: [...] > >> In that case, an implementation that accepts "<not>well- > >> formed"^^rdf:XMLLiteral would be conforming. This behaviour would not > >> constitue a bug. It would not be broken. > > > > No, and even if we made rdf:XMLLiteral normative that wouldn't change since > > it is optional. Yeah, implementations that claim to recognize rdf:XMLLiteral > > and would accept it would be non-conforming. > > Yes, sorry, that's what I meant to say. With your proposal, conforming > implementations that support rdf:XMLLiteral could accept ill-formed > XML. With my change, there would be no conformance statement about that feature because it is non-normative. On the other hand, even according to your proposal conforming implementations can still accept "<not>well-formed"^^rdf:XMLLiteral because they don't have to recognize rdf:XMLLiteral. This *only* changes if they *also* claim to recognize rdf:XMLLiteral. But that's nitpicking IMO that doesn't buy you much in practice. > > That's suboptimal but the more > > important point IMO is that two implementations that do recognize > > rdf:XMLLiteral will not be *able* to fully interoperate because the l2v > > mapping is not stable. Do I miss something here? > > If both implementations use the informative L2V mapping currently in > the spec, then they *are* fully interoperable. Right, but the same applies to just about everything. > If they do that, the only potential interoperability problem is that > [DOM4] *might* change before becoming a W3C Recommendation, thus > *possibly* causing a future interoperability issue with later > implementations. Given how stable the DOM is, this seems like a rather > theoretical possibility. Regardless, W3C procedure clearly prevents us > from normatively referencing DOM4 before it hits Rec. The same was said about promises which then required us to go through a second last call with JSON-LD and finally make the API non-normative. [...] > >> The DOM4 problem we have is with the value space only. There's no > >> problem with the lexical space. There's every reason to *require* > >> implementations to do the right thing for the lexical space. The > >> lexical space is more critical for interoperability anyways. > > > > The lexical space of rdf:HTML is "the set of Unicode [UNICODE] strings" and > > thus doesn't add any constraints. Again, do I miss something here? > > rdf:XMLLiteral. ?? > Here's some suggested wording; this should work both for rdf:HTML and > for rdf:XMLLiteral: > > [[ > The lexical space > is implementation-dependent. > The lexical-to-value mapping > is Implementation-dependent. > > [.] Sorry to be sarcastic, by why don't we go the last mile and also add a The IRI denoting this datatype is implementation-dependent. while we are already at it? > This isn't pretty, but it's logically consistent and keeps the mess > contained to the smallest possible area. While I agree that it isn't pretty, I obviously disagree with the rest of that sentence. I think I've spent enough time to explain my opinion and reasoning. I still believe the right thing to do would be to simply drop the two statements in section 5.4 and be done with it: 1. If the IRI http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral is recognized then it refers to the datatype rdf:XMLLiteral; 2. If the IRI http://www.w3.org/1999/02/22-rdf-syntax-ns#HTML is recognized then it refers to the datatype rdf:HTML; -- Markus Lanthaler @markuslanthaler
Received on Tuesday, 17 December 2013 19:30:10 UTC