A. Pagaltzis wrote:
> * Thomas Broyer [2005-05-24 15:15]:
>> A. Pagaltzis wrote:
>> > * Thomas Broyer [2005-05-24 09:05]:
>> >> c)
>> >> feed:
>> >>   author: A
>> >>   contributor: B
>> >>   entry:
>> >>     contributor: C
>> [...]
>> >> c) The entry inherits the author but overrides the
>> >>    contributor. I'm also open to considering it invalid.
[...]
>> If you just consider c) to be invalid, you can go with:
>>
>>     A non-empty set of both atom:entry/atom:author and
>>     atom:entry/atom:contributor overrides any set of both
>>     atom:feed/atom:author and atom:feed/atom:contributor.
>
> That seems to allow entries with contributors, but no author. You
> need to be more precise.

It doesn't: I didn't say I'd remove the following bullets ;o)
in 4.1.1:
   o  atom:feed elements MUST contain exactly one atom:author element,
      UNLESS all of the atom:feed element's child atom:entry elements
      contain an atom:author element.
and 4.1.2:
   o  atom:entry elements MUST contain exactly one atom:author element,
      unless the atom:entry contains an atom:source element which
      contains an atom:author element, or, in an Atom Feed Document, the
      atom:feed element contains an atom:author element itself.

>> or
>>
>>     If an atom:entry has neither an atom:author nor an
>>     atom:contributor child element, the author(s) of and
>>     contributor(s) to the entry are those specified at the feed
>>     level, that is, those appearing as children of an
>>     atom:source or, if the atom:entry contains no atom:source
>>     child element, those appearing as children of the atom:feed
>>     element.
>>
>>     Note that if an entry has no atom:author or
>>     atom:contributor child but contains an atom:source child.
>>     If the atom:source element contains no atom:author or
>>     atom:contributor child, the entry has no author or
>>     contributor. In such a case, the atom:author and
>>     atom:contributor children of the atom:feed element don't
>>     cascade into the atom:entry.
>>
>> (and again, excuse me for my English, it's not my mother tong)
>
> I think this clearly demonstrates why I opted for disallowing
> atom:contributor in absence of ../atom:author: it is difficult to
> explain. You need a lot of prose to express it. You also need
> more code and more grammar rules. To me, that raises flags that
> it’s too complex.

Actually, only the first paragraph addresses the author/contributor
"grouping". The second one might still be necessary to disambiguate the
"entry -> (source XOR feed)" inheritance mechanism.

Btw, had you seen the above bullet in 4.1.1 doesn't allow for a feed with
only "imported" entries (with atom:source) to be author-less?
The following feed is invalid per the current draft:
<atom:feed xmlns:atom="...Atom NS...">
   <atom:entry>
      <atom:source>
         <atom:author><atom:name>...</atom:name></atom:author>
         ...
      </atom:source>
      ...
   </atom:entry>
</atom:feed>

-- 
Thomas Broyer


Reply via email to