Update value typing.
--- a/microdata-rdf/index.html Wed Nov 16 13:21:31 2011 -0800
+++ b/microdata-rdf/index.html Wed Nov 16 13:44:50 2011 -0800
@@ -719,11 +719,22 @@
<section class="informative">
<h2>Value Typing</h2>
- <p>One possible use of a <tref>registry</tref> would allow vocabularies to be marked with datatype information,
+ <p>In microdata, all values are strings. In RDF, values may be resources
+ or may be typed with an appropriate datatype.</p>
+ <p> In some cases, the type of a microdata value can be determined from the
+ element on which it is specified. In particular:</p>
+ <ul>
+ <li>URL property elements provide URLs</li>
+ <li><code>time</code> element provides dates and times</li>
+ </ul>
+ <p class="issue">Using information about the content of the document where the microdata
+ is marked up <em>might</em> be a violation of the spirit of the microdata specification, though it does not explicitly say in
+ normative text that consumers cannot use other information from the HTML DOM to interpret microdata.</p>
+
+ <p>Additionally, one possible use of a <tref>registry</tref> would allow vocabularies to be marked with datatype information,
so that a <code>dc:time</code> value, for example, would be understood to represent a literal with datatype
<code>xsd:date</code>. This could be done by adding information for each property in the vocabulary requiring
special treatment.</p>
- <p>Additionally, literal values which should be interpreted as URI references could be given special treatment.</p>
<p>This might be represented using a syntax such as the following:</p>
<pre class="example" data-transform="updateExample">
<!--
@@ -732,23 +743,22 @@
"propertyURI": "vocabulary",
"multipleValues": "unordered"****,
"properties": {
- "url": {"datatype": "@uri"},
- "dateCreated": {"datatype": "http://www.w3.org/2001/XMLSchema#date"},
- "price": {"datatype": => [
- "http://www.w3.org/2001/XMLSchema#decimal",
- "http://www.w3.org/2001/XMLSchema#string"
- ]}
+ "dateCreated": {"datatype": "http://www.w3.org/2001/XMLSchema#date"}
}****
}
}
-->
</pre>
- <p>The <code>datatype</code> identifies one or more XSD types against which to perform lexical matching, causing
- the literal object to have the associated datatype.</p>
- <p>The <code>@uri</code> datatype identifies the property has having a <tref>URI reference</tref> range,
- rather than a literal. This allows the property to be used where there is a literal content model, such as
- <aref>content</aref>, and would cause the value to be interpreted as a <tref>URI reference</tref>.</p>
- <p>These concepts are not explored further at this time, but could be developed further in
+ <p>The <code>datatype</code> identifies a URI to be used in constructing a <tref>typed literal</tref>.</p>
+
+ <p>In most cases, the relevant datatype for a value can be derived from
+ knowledge of what property the value is for and the syntax of the value
+ itself. Thus, values can be given datatypes in a post-processing step
+ after the mapping of microdata to RDF described by this specification.
+ However, where there is information in the HTML markup, such as knowledge
+ of what element was used to mark up the value, which can help with
+ determining its datatype, that information is used by this specification.</p>
+ <p>This concept is not explored further at this time, but could be developed further in
a future revision of this document.</p>
</section>