Re: Microdata: The Itemref element

Tab Atkins Jr. On 09-10-19 16.09:

> On Mon, Oct 19, 2009 at 8:33 AM, Olivier GENDRIN
> <> wrote:
>> On Mon, Oct 19, 2009 at 3:08 PM, Tab Atkins Jr wrote:
>>> You're using <itemref> incorrectly, though. 


> Sorry, but you are.  ;_;  Again, <itemref> is a void element.  It
> doesn't have children.  It doesn't even have an end tag.  It just sits
> there and expresses something.  I think you might be trying for
> something like this:
> <table>
>   <tr itemscope>
>     <td itemprop=a>foo</td>
>     <td itemprop=b>bar</td>
>     <itemref refid=x>
>   </tr>
> </table>
> <p id=x itemprop=c>baz</p>
> [1]
> In this markup, the <itemref> is foster-parented to becoming a sibling
> of the <table>, which breaks the markup.

Despite the error, what Olivier pointed out is that Microdata has 
a problem similar to what has been claimed about RDFa. For RDFa, 
the table example was made a lot of fuzz about by Jon and others: 
did the algorithm take into account where things landed in the DOM 
or not? Fortunately, though, RDFa only operates with attributes. 
And so, as long as you take account of the DOM - which is quite 
simple, you should be safe. Whereas for Microdata, it seems one 
must think much more about the DOM all the time and use 
workarounds. (We can't sit with the Live DOM Viewer all the time ...)

>  This can be worked around in at least two ways.

leif halvard silli

Received on Monday, 19 October 2009 15:55:40 UTC