Feed level elements in items/entries?
by ZetaGecko | Add Your Comments | Atom/RSS
Discussion on the Atom syntax mail list has hilighted an issue: sometimes the entries in a feed share certain information with the feed they appear in, but sometimes they don't. And a related issue: sometimes an individual entry travels by itself and needs a way to carry information inherited from the feed along with it. Should an individual entry be able to carry elements heretofore found only at the feed level, or are there better ways of dealing with this issue?
The particular issues that raised this question are the fact that an entry may or may not have the same copyright or licensing terms as the feed, and the need for aggregators to know which version of an entry they are handling when the entry is separated from its feed. At present, a copyright notice may appear only at the feed level, and the presumption is probably that the entries bear the same copyright. But this is not always true. Should entries be able to specify their own copyright? If one doesn't, should it inherit the feed's copyright, or should it be considered of unknown copyright? As for the format version, at present, it is specified at the feed level, but not in each entry. Should entries be able to specify a version too? Should a feed be able to hold entries from different versions of the specification?
Here are my (current) opinions:
* Copyright should be specifiable at either the feed or entry level, and if present in the feed but not the entry, should be inherited from the feed. If the feed specifies a copyright, but the entry has no (known) copyright, an empty copyright could appear in the entry. I expect this should cover the most common cases.
* To keep file size down in cases where most or all of the entries have one of a few different copyrights, perhaps a mechanism could be devised for specifying, at the feed level, a number of copyrights, in a way that makes clear that none of them applies to the feed, but that they are just there to be referred to from within entries. Then, the entries could refer to the one that applies to them. It might look something like this:
<presets>
<copyright id="c1">Copyright 2004 Antone Roundy</copyright>
<copyright id="c2">Copyright 2004 Electric Eel</copyright>
</presets>
<entry>
<copyright ref="c2" />
...
* I don't think a feed should be able to carry multiple versions of entries. If one wishes to combine feeds of different versions, the entries should be converted to a common format.
* Perhaps rather than allowing entries to specify their version, when an entry travels by itself, it could be wrapped in a feed element, which would specify the version.