On Mon, Jan 18, 2010 at 17:57, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
AFAIK, Microdata is slightly less expressive than RDFa (it can't express cycles or something like that -- maybe someone else could clarify?)
It was Toby Inkster who pointed this out on public-html recently. [1] Here's my take on it: Since the microdata model is tree-like it can be mapped onto the graph model that is RDF, but the reverse isn't as trivial because of some quirks in RDF (XML Schema Datatypes and blank nodes, so far).
A typical RDF triple can be expressed as such in microdata: <div itemscope itemid="http://example.com/subject"> <link itemprop="http://example.com/predicate" href="http://example.com/object"> </div>
This isn't very readable and only something you would do if your goal is to translate existing RDF triples to HTML verbatim, mechanically (which seems like a strange thing to do given how much more readable e.g. Turtle is). You can create full RDF graphs simply be adding lots of triples. As you see, each node is identified by a URI: http://example.com/subject and http://example.com/object above. However, RDF also has "blank nodes" which aren't identified by anything at all. Microdata only creates these implicitly when converting to RDF, which means you can't deliberately "merge" two blank nodes.
Personally I doubt that this is going to be a problem. However, I'm quite certain that if a use case pops up which really does require finer control over blank nodes, then we can hardwire the _:blank URI scheme to do just that.
[1] http://lists.w3.org/Archives/Public/public-html/2010Jan/0794.html