Subject: updates, and segregating annotations

From: Eric Scheid <[email-masked]>
Date: Fri, 10 Dec 2004 10:46:56 +1100

With talk of intermediaries inserting various extra bits of [whatever] into
feeds before passing them on, I've been wondering just how this interplays
with updates being re-issued from the original source.

If say I publish an atom entry at 1pm, which gets picked up by Foo at 2pm
and lards in it's FooRank details, does the [augmented] entry that Foo
publishes have a modified/updated date-time of 1pm or 2pm?

What if new information comes to hand to Foo (eg. more related links), and
the entry is retrieved from Foo at 3pm? How will Foo indicate that the 3pm
[augmented] entry from Foo is an updated version of it's [augmented] entry
of 2pm?

What if in the meantime the original source publishes an update at 2:30pm,
which Foo doesn't necessarily get to see just yet, but somehow the entry
still gets into my aggregator and is seen to be the same entry as per the
entry/id. Which version should my aggregator display: the [3pm augmented]
version #1, or the 2:30pm version #2?

If the elements from the original source entry are just mixed in with the
elements from any subsequent intermediaries then it would be a real mess
trying to figure out who added what (and lets just flag signing for future
consideration).

Would segregating the annotations be a workable idea? I'm thinking of
something like:

<entry>
    <id>...</id>
    <date>...</date>
    <content>...</content>
    [original source material gets to ride at the top level]
    <annotation src="uri-of-intermediary">
        <date>...</date>
        <foo:bar>...</foo:bar>
    </annotation>
    <annotation src="uri-of-intermediary#2">
        <date>...</date>
        <foo:bar>...</foo:bar>
    </annotation>
</entry>

e.