- From: Marat Tanalin | tanalin.com <mtanalin@yandex.ru>
- Date: Fri, 18 Nov 2011 23:57:09 +0400
- To: Tab Atkins Jr. <jackalmage@gmail.com>
- Cc: Philip Jägenstedt <philipj@opera.com>, Tantek Çelik <tantek@cs.stanford.edu>, Sam Ruby <rubys@intertwingly.net>, public-html@w3.org
18.11.2011, 21:51, "Tab Atkins Jr." <jackalmage@gmail.com>:
> On Fri, Nov 18, 2011 at 9:22 AM, Marat Tanalin | tanalin.com
> <mtanalin@yandex.ru> wrote:
>
>> 18.11.2011, 19:59, "Philip Jägenstedt" <philipj@opera.com>:
>>> We cannot provide equivalent markup for itempropvalue unless we know how
>>> itempropvalue is intended to work:
>>>
>>> 1. When itempropvalue appears on an URL property elements [1], is it (1)
>>> ignored (2) resolved as a URL or (3) a plain text property?
>> For URL property elements, @itempropvalue attribute should probably be ignored since such elements have their own dedicated attributes to store a value.
>
> That's even worse, imo.
> @itemscope already "wins" over special
> attributes when they're specified together (in other words, in <a
> itemprop=foo href=bar itemscope>, the value of "foo" is the nested
> item, not the url). If @itempropvalue instead lost to the special
> attributes, that would be all kinds of confusing.
Then this part of spec probably should be changed. In my opinion, @itemscope should always relate to nested elements of its owner element, not to the element itself. This way would be quite intuitive and expected in general, and @itempropvalue could be consistently and intuitively used in particular.
For example, for:
<div itemscope>
<a itemprop="foo" href="bar" itemscope>
<span itemprop="lorem">ipsum</span>
</a>
</div>
we would have following data hierarchy:
foo=bar (property of DIV's itemscope)
lorem=ipsum (property of A's itemscope)
>>> 2. When itempropvalue appears together with itemscope, is it (1) ignored
>>> or (2) a plain text property?
>> @itempropvalue should be treated according to @itemtype. If @itemtype defines that item value should consist of several values specified by child elements, then @itempropvalue for element with @itemscope attribute should probably be ignored.
>
> The Microdata extraction algorithm doesn't pay attention to the
> itemtype when extracting. It *can't*, because there's no schema for
> indicating such a structure in a machine-readable way, there's no way
> to link the itemtype to a schema in a machine-followable way, we know
> from long experience that adding such a mechanism (see DOCTYPEs) is an
> invitation to DDOS the provider, and finally, if the resource is ever
> unavailable, either temporarily (site overwhelmed) or permanently
> (domain registration expired), the extraction algorithm would have no
> way to know what to do.
>
> Now, *after* the data's been extracted, a type-aware consumer can
> interpret the data however they like. They've got the schema
> built-in, so none of the above problems affect them.
Well, then, so much the more, @itemscope should always relate to element's descendants, not the element itself. (See above.)
Received on Friday, 18 November 2011 19:57:47 UTC