Re: Updated Microdata to RDF Working Draft

On 26 September 2012 15:28, Adrian Giurca <> wrote:
> Hi Gregg and all,
> A large work on Vocabulary Expansion described in Section 4 of the working
> draft work [1] is based on some constraints of the Microdata specification
> [7]:
> Microdata requires that all values of @itemtype come from the same
> vocabulary. This is required as @itemprop values are resolved relative to
> that vocabulary
> I slightly changed your Example 13 from [1]  to allow two types and two
> properties:
> <div itemscope itemtype="">
>   <link itemprop="additionalType" href="" />
>   <p itemprop="email"></p>
> </div> 
> I would like to use foaf:mbox on the above example and it seems to me that
> following the current spec [7] is difficult if not impossible. Possible
> solutions such as:
> <meta content=""
> itemprop=""/>
> may don't work as a processor may relate to
> and not to the "additional type".
>  (the original example with GoodRelations was somehow different as any
> GoodRelation Product is subclass of therefore the
> @name property is  inherited by Goodrelations Product)
> I kindly ask you, also people from the HTML data task force as well as
> Microdata spec editors about rationales behind the actual Microdata
> specification [7] . I understand the concern of using namespaces but still
> is not enough clear why @itemtype and @itemprop does not allow items from
> different vocabularies.
> Indeed, allowing multiple vocabularies  using only @itemtype and @itemprop
> attributes and no namespaces requires processors to relate to schemas of
> these vocabularies and may also introduce name ambiguity (as schema does not
> provide URI for properties).
> In any case adding @additionalType may not be the most elegant solution as
> it appears  not solving the problem of multiple vocabularies.

Microdata's design stems from discussions around WHATWG and HTML5. I
won't re-hash all the history, but roughly...

* The RDFa folk had what they felt to be a reasonable solution to the
problem of putting this kind of structured data into HTML, as well as
W3C specs based on XHTML
* The HTML-centric WHATWG community didn't feel comfortable with
various aspects of this.
* Much email was sent. Some people got upset with some other people
(and vice-versa).

An outcome of those dialogues in 2009 was
...  Ian Hickson introduced the first version of Microdata into HTML5.
It took RDFa as a starting point, but rather freely modified it in
various ways, generally justifying those decisions in terms of
usability and understandability by mainstream Web developers and
publishers. Microdata dropped a lot of the richness (some say
complexity) of RDFa, and detached it from strong links to the
underlying W3C RDF specs.

* Much more email was sent. at launch used Microdata rather than RDFa, because it was
simpler in various ways than RDFa at that time.  Since then, after
again more emails, the RDFa 1.1 spec has a very useful "Lite" profile
whose expressivity is broadly close to Microdata's, but which deals a
bit more gracefully with multiple vocabularies (and builds in
namespace prefix associations for some common existing vocabularies).

My personal view is that things went poorly from a social perspective,
but the end result is that RDFa (Lite) is now stronger than it would
otherwise have been.  And that ultimately things are moving towards
RDFa Lite being the most common / default notation that is used for
structured data in HTML.

As I wrote in
it is important to respect the commitment that various parties have
made towards Microdata-based approaches: "We want to say clearly that
we continue to support Microdata, and in particular those who have
championed the adoption of Microdata over the last year. Billions of
pages now use markup thanks to these early adopters, and
Microdata continues to be a fine way to publish and share structured
data. ".

Having said that, I am less convinced that it is worthwhile trying to
keep mutating the Microdata spec until it takes on more and more of
the characteristics of RDFa Lite. Let's accept Microdata for what it
is, and instead emphasise the need to get various parts of the tool
chain to work well with different notations.

If you want to dig further into the design debates (and, I'm afraid to
say, fights) between supporters of these various notations, you can
probably find a lot, e.g. in blog posts, or the whatwg and rdfa
mailing lists. I tend rather to just say "Microdata is
Microdata-as-specified" and focus on improving and other
vocabularies that can be equally well deployed using Microdata or RDFa

A shorter answer to your question is probably something like "the
designers of Microdata were not convinced by RDFa-ish concern for
multiple vocabularies being used together, or RDFa community's desire
to identify vocabulary terms with URIs".



> Thank you,
> Adrian Giurca
> [7]
> On 9/20/2012 8:22 AM, Gregg Kellogg wrote:
> I've prepared an updated Microdata to RDF Working Draft for review [1].
> Please note that, as this is a Note of the Semantic Web Interest Group, and
> the HTML Data Task Force is complete, the official place for feedback is
> This update adds support for vocabulary expansion, principally to support
> features such as schema:additionalType. Microdata vocabulary expansion is a
> subset of RDFa vocabulary expansion, and is fully compatible with RDFa, such
> that toolsets which process both RDFa 1.1 and Microdata to RDF can use a
> single vocabulary expansion algorithm, although its use in Microdata is
> mandatory, whereas it is optional in RDFa 1.1.
> To support vocabulary expansion, additional features are added to the
> registry: within a vocabulary, a property can be either specified as
> "equivalentProperty" of another IRI, or "subPropertyOf" another IRI, to use
> either owl:equivalentProperty or rdfs:subPropertyOf expansion rules. The
> default registry has been updated for additionalType as follows:
> {
>   "": {
>     ...
>     "properties": {
>       "additionalType": {"subPropertyOf":
> ""}
>       ...
>     }
> }
> Note that the current published registry [2] has not been updated. The
> version of the registry used for this working draft is available in the
> supplement [3], and in the mercurial repository [4].
> Additionally, when a vocabulary is detected, an rdfa:usesVocabulary triple
> is generated, which enables the RDFa 1.1 vocabulary expansion toolchain. If
> at some point includes OWL2 expansion rules supported by RDFa
> within the vocabulary definition, this will allow full use of this through
> RDFa tool chains which support Microdata to RDF.
> The draft references the test-suite [5], which now has a number of tests
> (currently 74) available to help developers check processor conformance.
> This includes all of the current microdata examples.
> After a reasonable feedback period, this working draft will update the
> current published note [6].
> Thanks to Ivan for invaluable help in preparing this update.
> Gregg Kellogg
> [1]
> [2]
> [3]
> [4]
> [5]
> [6]

Received on Wednesday, 26 September 2012 13:47:54 UTC