In Generate Property Values, lookup up predicate in registry, rather than relying on type's registry. This allows properties from vocabularies other than the @itemtype to have list semantics imposed.
--- a/microdata-rdf/index.html Fri Nov 18 12:56:29 2011 -0800
+++ b/microdata-rdf/index.html Fri Nov 18 14:33:05 2011 -0800
@@ -1118,9 +1118,7 @@
<li>
For each <em>predicate</em> in <em>property list</em>:
<ol class="algorithm">
- <li><a href="#generate-property-values">Generate property values</a> using a copy of
- <tref>evaluation context</tref> along with
- <em>subject</em>, <em>predicate</em> and
+ <li><a href="#generate-property-values">Generate property values</a> <em>subject</em>, <em>predicate</em> and
the list of values associated with <em>predicate</em> from <em>property list</em> as <em>values</em>.
</li>
</ol>
@@ -1176,14 +1174,15 @@
<section>
<h2>Generate Property Values</h2>
- <p>Property value serialization makes use of <tref>current vocabulary</tref>
- from an <tref>evaluation context</tref> <em>context</em> along with <em>subject</em>, <em>predicate</em>
- and <em>values</em>.</p>
+ <p>Property value serialization makes use of <em>subject</em>, <em>predicate</em> and <em>values</em>.</p>
<ol class="algorithm">
- <li>If <tref>current vocabulary</tref> from <em>context</em> is not null
- and <tref>registry</tref> has an entry for <tref>current vocabulary</tref> that is a JSON Object, let <em>registry
- object</em> be that value. Otherwise set <em>registry object</em> to null.</li>
+ <li>If the <tref>registry</tref> contains a URI prefix that is a character for character match of
+ <em>predicate</em> up to the length of the URI prefix, set <em>vocab</em> as that URI prefix.
+ Otherwise set <em>vocab</em> to null.</li>
+ <li>If <em>vocab</em> is not null
+ and <tref>registry</tref> has an entry for <em>vocab</em> that is a JSON Object, let
+ <em>registry object</em> be that value. Otherwise set <em>registry object</em> to null.</li>
<li>If <em>registry object</em> is not null and <em>registry object</em> contains key
<tref><code>properties</code></tref>
which has a JSON Object value, let <em>properties</em> be that value. Otherwise, set <em>properties</em>