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