implement ISSUE-12 resolution on removing simple literals from abstract syntax
authorRichard Cyganiak <richard@cyganiak.de>
Thu, 21 Jul 2011 13:25:51 +0100
changeset 96 cd2fdfca2ea4
parent 95 81a0b50d5762
child 97 17c1b8291425
implement ISSUE-12 resolution on removing simple literals from abstract syntax
rdf-concepts/index.html
--- a/rdf-concepts/index.html	Thu Jul 21 11:42:51 2011 +0100
+++ b/rdf-concepts/index.html	Thu Jul 21 13:25:51 2011 +0100
@@ -335,21 +335,18 @@
     <p>A literal may be the object of an RDF statement, but not the
     subject or the predicate.</p>
 
-    <p>Literals may be <cite>plain</cite> or <cite>typed</cite> :</p>
+    <p>Literals may be <cite>typed</cite> or <cite>language-tagged</cite>:</p>
 
     <ul>
-      <li>A <a>plain literal</a> is a string combined
-      with an optional language tag. This may be used for
-      plain text in a natural language. As recommended in the RDF
-      formal semantics [[!RDF-MT]], these plain literals are
-      self-denoting.</li>
-
-
-
       <li>A <a>typed literal</a> is a string combined with a
       <a>datatype IRI</a>. It denotes the
       member of the identified datatype's value space obtained by
       applying the lexical-to-value mapping to the literal string.</li>
+
+      <li>A <a>language-tagged literal</a> is a string combined
+      with a language tag. This may be used for
+      plain text in a natural language. Language-tagged literals
+      are self-denoting.</li>
     </ul>
 
     <p>Continuing the example from <a href="#section-Datatypes-intro">section
@@ -819,29 +816,44 @@
 <section id="section-Graph-Literal">
     <h3>RDF Literals</h3>
 
-    <p class="issue">Currently, there are three different
-    kinds of literals for expressing strings: plain literals,
-    <a href=""><code>rdf:PlainLiteral</code></a> [[RDF-PLAINLITERAL]],
-    and <code>xsd:string</code>. Some consolidation of these
-    forms is under consideration. This is
+    <p class="issue">This section is a major departure from RDF 2004
+    as <a title="simple literal">simple literals</a> are now treated
+    as syntactic sugar for <code>xsd:string</code>
+    <a title="typed literal">typed literals</a>. Further changes
+    to RDF's literal design are under consideration.
+    <a title="language-tagged literal">Language-tagged literals</a>
+    may receive a datatype, and
+    <a href="http://www.w3.org/TR/rdf-plain-literal/"><code>rdf:PlainLiteral</code>s</a> [[RDF-PLAINLITERAL]]
+    may be folded into the design somehow. This is
     <a href="http://www.w3.org/2011/rdf-wg/track/issues/12">ISSUE-12</a>.</p>
 
-<p>A <dfn>literal</dfn> in an <a>RDF graph</a>
-contains one or two named components.</p>
-<p>All literals have a <dfn>lexical form</dfn> being a Unicode
-[[!UNICODE]] string, which SHOULD be in Normal Form C [[!NFC]].</p>
+    <p>A <dfn>literal</dfn> in an <a>RDF graph</a> is either a
+    <a>typed literal</a> or a <a>language-tagged literal</a>.</p>
 
+    <p>All literals have a <dfn>lexical form</dfn> being a Unicode
+    [[!UNICODE]] string, which SHOULD be in Normal Form C [[!NFC]].</p>
 
-    <p><dfn title="plain literal">Plain literals</dfn> have 
-    a <a>lexical form</a> and optionally a <dfn>language tag</dfn> as
-    defined by [[!BCP47]]. The language tag, if present, MUST be
-    well-formed according to
+    <p><dfn title="language-tagged literal">Language-tagged literals</dfn> have
+    a <a>lexical form</a> and a non-empty <dfn>language tag</dfn> as
+    defined by [[!BCP47]]. The language tag MUST be well-formed according to
     <a href="http://tools.ietf.org/html/bcp47#section-2.2.9">section 2.2.9</a>
     of [[!BCP47]], and MUST be normalized to lowercase.</p>
 
     <p><dfn title="typed literal">Typed literals</dfn> have a <a>lexical form</a>
     and a <dfn>datatype IRI</dfn> being an <a>IRI</a>.</p>
  
+    <p>Concrete syntaxes MAY support <dfn title="simple literal">simple
+    literals</dfn>, consisting of only a <a>lexical form</a>
+    without any language tag or datatype IRI. Simple literals only
+    exist in concrete syntaxes, and are treated as
+    syntactic sugar for abstract syntax
+    <a title="plain literal">typed literals</a> with the datatype IRI
+    <code>http://www.w3.org/2001/XMLSchema#string</code>.
+    Simple literals and <a>language-tagged literals</a> are
+    collectively known as <dfn title="plain literal">plain literals</dfn>.</p>
+
+    <p class="note">Earlier versions of RDF allowed
+    <a title="simple literal">simple literals</a> in the abstract syntax.</p>
 
       <p class="note">Literals in which the lexical form begins with a
       composing character (as defined by [[CHARMOD]]) are allowed however they may cause
@@ -1317,6 +1329,7 @@
   <h2>Changes from RDF 2004</h2>
 
   <ul>
+    <li>2011-07-21: Updated the two sections on literals to reflect the <a href="">ISSUE-12 resolution</a> that simple literals are no longer part of the abstract syntax. Formally introduced the terms “language-tagged literal”, “simple literal”.</li>
     <li>2011-07-21: Updated the introduction, and removed many mentions of RDF/XML. Changed the normative reference for the terms in the RDF namespace from the RDF/XML spec to the RDF Schema spec. Removed any mention of the 1999 version of RDF.</li>
     <li>2011-07-21: Replaced RFC 2279 reference (UTF-8) with RFC 3629</li>
     <li>2011-07-20: Removed informative sections “Motivations and Goals” (see <a href="http://www.w3.org/TR/rdf-concepts/#section-Overview">RDF 2004 version</a>) and “RDF Expression of Simple Facts” (see <a href="http://www.w3.org/TR/rdf-concepts/#section-SimpleFacts">RDF 2004 version</a>)</li>