Changes to wording in section 7 in response to comments by Michael Schneider and Antoine. Change note altered, some material added defining datatype maps.
authorPat Hayes <phayes@ihmc.us>
Thu, 12 Dec 2013 01:12:03 -0800
changeset 1544 e1367508bbc2
parent 1543 f839dcf9b1cc
child 1545 dbc6c6147169
Changes to wording in section 7 in response to comments by Michael Schneider and Antoine. Change note altered, some material added defining datatype maps.
rdf-mt/index.html
--- a/rdf-mt/index.html	Wed Dec 11 19:57:23 2013 +0000
+++ b/rdf-mt/index.html	Thu Dec 12 01:12:03 2013 -0800
@@ -505,18 +505,20 @@
 <section><h2 id="datatypes">Literals and datatypes</h2>
 <p class="changenote">  In the 2004 RDF 1.0 specification, datatype D-entailment was defined as a <a>semantic extension</a> of RDFS-entailment. Here it is defined as a direct extension to basic RDF. This is more in conformity with actual usage, where RDF with datatypes is widely used without the RDFS vocabulary. If there is a need to distinguish this from the 2004 RDF 1.0 terminology, the longer phrasing "simple D-entailment" or "simple datatype entailment" should be used rather than "D-entailment". </p>
 
-<p> Datatypes are <a title="identify">identified</a> by IRIs. Interpretations will vary according to which IRIs they recognize as denoting datatypes. We describe this using a parameter D on simple interpretations. where D is the set of <dfn>recognize</dfn><strong>d</strong> datatype IRIs. We assume that a recognized IRI <a title="identify">identifies</a> a unique datatype wherever it occurs, and the semantics requires that it refers to this identified datatype. The exact mechanism by which an IRI <a title="identify">identifies</a> a datatype IRI is considered to be external to the semantics. RDF processors which are not able to determine which datatype is identified by an IRI cannot <a>recognize</a> that IRI, and should treat any literals with that IRI as their datatype IRI as unknown names. </p>
+<p> Datatypes are <a title="identify">identified</a> by IRIs. Interpretations will vary according to which IRIs are recognized as denoting datatypes. We describe this using a parameter D on simple interpretations. where D is the set of <dfn>recognize</dfn><em><strong>d</strong></em> datatype IRIs. </p>
 
-<p class="changenote">In the 2004 RDF 1.0 specification, the semantics of datatypes referred to datatype maps. The current treatment subsumes datatype maps into the interpretation mapping on recognized IRIs.The <dfn>datatype map</dfn> corresponding to D is exactly the restriction of a D-interpretation mapping to the set D of recognized datatypes. The 2004 definitions permitted "non-standard" datatype maps which map IRIs to datatypes they do not <a>identify</a> (such as one that maps the IRI '<code>http://www.w3.org/2001/XMLSchema#decimal</code>' to the datatype identified by <code>http://www.w3.org/2001/XMLSchema#gYearMonth</code> ). Semantic extensions based on such non-standard mappings are not sanctioned by this specification.</p>
+<p class="changenote">The previous version of this specification defined the parameter D as a <a>datatype map</a> from IRIs to datatypes, i.e. as a restricted kind of interpretation mapping. As the current semantics presumes that a recognized IRI identifies a unique datatype, this IRI-to-datatype mapping is globally unique and externally specified, so we can freely abuse notation by thinking of D as either a set of IRIs or as a fixed <a>datatype map</a>. Formally, the <dfn>datatype map</dfn> corresponding to the set D is the restriction of a <a>D-interpretation</a> to the set D. Semantic extensions which are stated in terms of conditions on <a>datatype map</a>s can be interpreted as applying to this mapping. </p>
+
+<p>The exact mechanism by which an IRI <a title="identify">identifies</a> a datatype IRI is considered to be external to the semantics, but the semantics presumes that a recognized IRI <a title="identify">identifies</a> a unique datatype wherever it occurs. RDF processors which are not able to determine which datatype is identified by an IRI cannot <a>recognize</a> that IRI, and should treat any literals with that IRI as their datatype IRI as unknown names. </p>
 
 <p>RDF literals and datatypes are fully described in <a href="http://www.w3.org/TR/rdf11-concepts/#section-Datatypes"> Section 5</a> of [[!RDF11-CONCEPTS]]. In summary: RDF literals are either language-tagged strings, or datatyped literals which
 combine a string and an IRI <a>identify</a>ing a datatype. A datatype is understood to define a partial mapping, called the <dfn>lexical-to-value mapping</dfn>, from a lexical space (a set of character strings) to values. The function <dfn>L2V</dfn> maps datatypes to their lexical-to-value mapping. A literal with datatype d denotes the value obtained by applying this mapping to the character string sss: L2V(d)(sss). If the literal string is not in the lexical space, so that the lexical-to-value mapping gives no value for the literal string, then the literal has no referent. The <dfn>value space</dfn> of a datatype is the range of the <a>lexical-to-value mapping</a>. Every literal with that type either refers to a value in the value space of the type, or fails to refer at all. An  <dfn>ill-typed</dfn> literal is one whose datatype IRI is <a>recognize</a>d, but whose character string is assigned no value by the <a>lexical-to-value mapping</a> for that datatype. </p>
 
-<p> RDF processors are not required to <a>recognize</a> any datatype IRIs other than <a href="http://www.w3.org/TR/rdf11-concepts/#dfn-language-tagged-string"><code>rdf:langString</code></a> and <a href="http://www.w3.org/TR/xmlschema11-2/#string"><code>xsd:string</code></a>, but when IRIs listed in <a href="http://www.w3.org/TR/rdf11-concepts/#section-Datatypes">Section 5</a> of [[!RDF11-CONCEPTS]] are <a>recognize</a>d, they MUST be interpreted as described there, and when the IRI <code>rdf:PlainLiteral</code> is <a>recognize</a>d, it MUST be interpreted to refer to the datatype defined in [[!RDF-PLAIN-LITERAL]]. RDF processors MAY recognize other datatype IRIs, but when other datatype IRIs are <a>recognize</a>d, the mapping between a <a>recognize</a>d IRI and the datatype it refers to MUST be specified unambiguously, and MUST be fixed during all RDF transformations or manipulations.</p>
+<p> RDF processors are not required to <a>recognize</a> any datatype IRIs other than <a href="http://www.w3.org/TR/rdf11-concepts/#dfn-language-tagged-string"><code>rdf:langString</code></a> and <a href="http://www.w3.org/TR/xmlschema11-2/#string"><code>xsd:string</code></a>, but when IRIs listed in <a href="http://www.w3.org/TR/rdf11-concepts/#section-Datatypes">Section 5</a> of [[!RDF11-CONCEPTS]] are <a>recognize</a>d, they MUST be interpreted as described there, and when the IRI <code>rdf:PlainLiteral</code> is <a>recognize</a>d, it MUST be interpreted to refer to the datatype defined in [[!RDF-PLAIN-LITERAL]]. RDF processors MAY recognize other datatype IRIs, but when other datatype IRIs are <a>recognize</a>d, the mapping between a <a>recognize</a>d IRI and the datatype it refers to MUST be specified unambiguously, and MUST be fixed during all RDF transformations or manipulations. In practice, this can be achieved by the IRI linking to an external specification of the datatype which describes both the components of the datatype itself and the fact that the IRI identifies the datatype, thereby fixing a value of the <a>datatype map</a> of this IRI.</p>
 
 <p>Literals with <a href="http://www.w3.org/TR/rdf11-concepts/#dfn-language-tagged-string"><code>rdf:langString</code></a> as their datatype are an exceptional case which are given a special treatment. The IRI <code>rdf:langString</code> is classified as a datatype IRI, and interpreted to refer to a datatype, even though no L2V mapping is defined for it. The value space of <code>rdf:langString</code> is the set of all pairs of a string with a language tag. The semantics of literals with this as their type are given below. </p>
 
-<p>RDF literal syntax allows any IRI to be used in a typed literal, even when it is not <a>recognize</a>d as referring to a datatype. Literals with such an "unknown" datatype IRI, which is not in the set of <a>recognize</a>d datatypes, SHOULD NOT be treated as errors, although RDF applications MAY issue a warning. Such literals SHOULD be treated like IRIs and assumed to denote some thing in the universe IR. RDF processors which fail to <a>recognize</a> a datatype IRI will not be able to detect some entailments which are visible to one which does.  For example, the fact that </p><p><code>ex:a ex:p "20.0000"^^xsd:decimal .</code></p><p>entails </p><p><code>ex:a ex:p "20.0"^^xsd:decimal .</code></p><p>will not be visible to a processor which does not <a>recognize</a> the datatype IRI <code>xsd:decimal</code>.</p>
+<p>RDF literal syntax allows any IRI to be used in a typed literal, even when it is not <a>recognize</a>d as referring to a datatype. Literals with such an "unknown" datatype IRI, which is not in the set of <a>recognize</a>d datatypes, SHOULD NOT be treated as errors, although RDF applications MAY issue a warning. Such literals SHOULD be treated like IRIs and assumed to denote some thing in the universe IR. RDF processors which do not <a>recognize</a> a datatype IRI will not be able to detect some entailments which are visible to one which does.  For example, the fact that </p><p><code>ex:a ex:p "20.0000"^^xsd:decimal .</code></p><p>entails </p><p><code>ex:a ex:p "20.0"^^xsd:decimal .</code></p><p>will not be visible to a processor which does not <a>recognize</a> the datatype IRI <code>xsd:decimal</code>.</p>
 
 
 <section id="D_interpretations"><h2>D-interpretations</h2>