- From: Peter Patel-Schneider <pfpschneider@gmail.com>
- Date: Wed, 27 Feb 2013 11:45:22 -0800
- To: RDF WG <public-rdf-wg@w3.org>
- Message-ID: <CAMpDgVx6=9se95M-PEr3iUtY==x960RAVG_RPPbX4ZLNwyU9cg@mail.gmail.com>
Here is my proposal for handling rdf:langString in Concepts and Semantics, consonant with what I remember and have been told concerning the WG deliberations. It also fixes up a few related bits of wording and has a change to address the resolution of Issue 109. Explicit changes are marked out with "*". I have included relevant development that is already in Concepts. - a literal has two or three elements (Concepts 3.3) - lexical form, datatype IRI, language tag (optional) - with two is a ?? (There were some proposal for this, but it may not be needed.) - with three must have rdf:langString as datatype - a datatype has a lexical space, a value space, and an L2V (Concepts 5) - the "denotes" is rather strange throughout - what does it mean? is this a requirement on all simple/D/RDF/RDFS interpretations? the machinery in Concepts doesn't need denotation at all * remove ", and is denoted by one or more IRIs" * "denote the" -> "are used for the" (Concepts 5.1) * "An IRI denoting this datatype" -> "The IRI used in RDF for this datatype" (Concepts 5.2, 5.3) * modify wording about rdf:langString in note - ".... The datatype for rdf:langString is defined below, but the mapping from language-tagged strings to their value does not use its lexical-to-value mapping." * Section 5.3+ The rdf:langString Datatype [new section for Concepts] RDF provides for strings with associated language tags. Such content is indicated in an RDF graph using a language-tagged literal. This datatype is defined as follows: The IRI used in RDF for this .... The lexical space is the empty set. The value space is the set of pairs of Unicode strings and normalized-to-lowercase well-formed language tags from section 2.2.9 of BCP47. The lexical space of rdf:langString is empty, so there are no well-typed literals that have rdf:langString as their datatype IRI and no language tag. Note: There may be other datatypes, like rdf:PlainLIteral, whose value space has a non-empty intersection with the value space of rdf:langString.) [Why do this? Well, there is nothing currently preventing one from defining a useful (or malicious) datatype for rdf:langString. I would actually prefer doing this (the former, of course), using the L2V from rdf:PlainLiteral, but I expect that this would not have much support in the WG.] - Section 5.4 in Concepts is all about datatype maps, which are supposed to be going away. It does have the correct wording for how to require that particular IRIs map to the correct datatypes. * Whatever remains needs to mention that RDF and RDFS require two built-in datatypes. - Section 5.5 should be modified to correspond with the recent resolution of Issue 109 (and remove the use of "error") as follows: * 5. Otherwise, the literal is ill-typed, and no literal value is associated with the literal. Such a case it not syntactically ill-formed, but is generally not very useful [and is best avoided???]. Simple interpretations in Semantics * 5a) If E is a language-tagged string in V (with datatype IRI rdf:langString) .... * 5b) If E is a literal in V with type xsd:string .... Semantic conditions for ground graphs * Remove first two conditions * Remove comment afterwards * Remove note about illegal language tags. * Remove note about xsd:string - it's in * Remove note about rdf:langString - it's a datatype *Semantic conditions for D-interpretations: * ... every literal in V of the form "sss"^^aaa ... *RDF interpretations An RDF-interpretation of a vocabulary V is a D-interpretation I of (V union rdfV), where D includes rdf:langString and xsd:string, which satisfies: ... for every IRI aaa in D, and every well-typed literal in V of the form "sss"^^aaa <IL("sss"^^aaa),I(aaa)> in IEXT(I(rdf:type)) *RDFS semantic conditions ... for every IRI aaa in D, ICEXT(I(aaa)) is the value space of I(aaa) for every IRI aaa in D, I(aaa) is in ICEXT(I(rdfs:Datatype)) *RDFS axiomatic triples remove as not necessarily true rdf:XMLLiteral rdf:type rdfs:Datatype . rdf:XMLLiteral rdfs:subClassOf rdfs:Literal . rdf:HTMl rdf:type rdfs:Datatype . rdf:HTML rdfs:subClassOf rdfs:Literal . remove as redundant rdf:langString rdf:type rdfs:Datatype . rdf:langString rdfs:subClassOf rdfs:Literal . xsd:string rdf:type rdfs:Datatype . xsd:string rdfs:subClassOf rdfs:Literal .
Received on Wednesday, 27 February 2013 19:45:50 UTC