Thursday, May 26, 2005, 11:16:05 PM, Thomas Broyer wrote:

> David Powell wrote:

>>Thursday, May 26, 2005, 8:50:04 PM, Thomas Broyer wrote:
>>
>>>6.2 deals with the "Atom vocabulary", which is the markup in the Atom
>>>namespace or un prefixed attributes on Atom-namespaced elements (this is
>>>my interpretation, it's not clearly stated in the spec, and I'm quite
>>>sure I already raised this in the past two weeks).
>>>
>>Yes, I proposed that we fix this here too:
>><http://www.imc.org/atom-syntax/mail-archive/msg15743.html>
>>
> It'd be still be necessary to define the term "vocabulary" somewhere, in
> section 6 or in the introduction (section 1).

> As "vocabulary" is only used only in sections 6.1 and 6.2, I suggest
> using "namespace" instead:

> [
> 6.1  Extensions From Non-Atom Namespaces

>    This specification describes Atom's XML markup namespace.  Markup
>    from other namespaces ("foreign markup") can be used in an Atom
>    document.  Note that the atom:content element is designed to support
>    the inclusion of arbitrary foreign markup.

> 6.2  Extensions To The Atom Namespace

>    Future versions of this specification could add new elements and
>    attributes to the Atom markup namespace.  Software written to
>    conform to this version of the specification will not be able to
>    process such markup correctly and, in fact, will not be able to
>    distinguish it from markup error.  For the purposes of this
>    discussion, unrecognized markup from the Atom namespace will be
>    considered "foreign markup".
> ]

This sounds good, but 6.2 ought to also include unprefixed attributes
on atom elements as well as atom: prefixed ones.

> This however doesn't prevent us adding your sentence to 6.4 to make it
> clearer.

I think 6.3 would be much easier to understand if its position was
swapped with 6.4. When you read 6.3 you assume that everything not
mentioned so far must be "unknown foreign markup", then when you read
6.4, it redefines some of that as "metadata elements". They are
intended to be disjoint, but the ordering suggested to me that 6.4 was
a subset.

Paragraph 2 of 6.3 reinforced my misconception that 6.4 markup is
subset of "unknown foreign markup", especially as it didn't mention
markup on other elements or attributes as 6.2 proposed. If 6.3 and 6.4
were swapped, then I think paragraph 2 of 6.3 could be trimmed down to
avoid this. Replace paragraph 2 & 3 of 6.3, with:

  When unknown foreign markup is encountered in a Text Contruct or
  atom:content element, software SHOULD ignore the markup and process
  any text content of foreign elements as though the surrounding
  markup were not present.

  When unknown foreign markup is encountered elsewhere, software MAY
  bypass the markup and any textual content and MUST NOT change its
  behavior as a result of the markup's presence.

--
Dave





Reply via email to