It's my understanding that atom:published is required by the Atom spec
as the "created date" for Atom entries. Atom AS uses the "created
date" as the time of the event.
The Atom spec also allows for atom:updated which tells a processor
that this entry has been recently modified (the "modified date") and
should be treated accordingly. I believe that Atom AS ignores the
atom:updated value.
--Steve
> --
> You received this message because you are subscribed to the Google Groups "Activity Streams" group.
> To post to this group, send email to activity...@googlegroups.com.
> To unsubscribe from this group, send email to activity-strea...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/activity-streams?hl=en.
>
>
--
Steve Ivy
http://monkinetic.com // http://diso-project.org
This email is: [ ] bloggable [x] ask first [ ] private
Atom Activity Streams uses atom:published for its immutable nature; the
activity being described happened at a specific time and changes to the
description of that activity (which would in theory result in a change
to atom:updated) don't change the time at the activity occurred.
Atom Activity Streams requires published because we provide a more
specific meaning for it than Atom itself provides and that meaning is
required. Atom Activity Streams does not itself require updated, but
since Atom itself does anyone publishing Atom Activity Streams should
include it to comply with the requirements in Atom itself. atom:updated
is does not represent any part of the Activity Streams data model and
thus does not change the meaning of a published activity.
The requirements in Atom Activity Streams should never be looser than
Atom itself, but they are often stricter due to requirements specific to
the abstract data model Activity Streams defines, as we see in this example.
--
I would contend that while that is true in the general case of Atom,
when considering Activity Streams the time an activity occurred is
fundamental to the concept of an activity and therefore anyone
publishing activities can be expected to have a timestamp to publish.
That seems like correct behavior to me. Atom Activity Streams says
nothing about management of atom:updated, so the requirements from the
Atom spec apply, and any significant changes to the entry representing
the activity should therefore cause atom:updated to be changed.
However, that only has meaning at the Atom processor layer; none of the
fields in the activity streams data model are derived from atom:updated
and therefore a change to atom:updated alone does not cause any change
as far as an Activity Streams processor is concerned.
So to pick on a specific use-case, Let's imagine an implementation where
an Atom poller receives atom:entry elements and uses the atom:id and
atom:updated elements together to decide if this content has already
been processed. If and only if this combination of atom:id and
atom:updated have not been seen before would this layer translate the
atom:entry element into an Activity Streams Activity Construct and pass
it to a serialization-agnostic codepath that integrates that content
into an activity stream.
In other words, the atom:updated element informs processing by the Atom
poller but is invisible and irrelevant to the activity processing code.
This separation between the transport and the Activity processing is
intentional, both to create a resilience to new transport mechanisms
such as PubSubHubbub (where arguably any new notification is worth
processing, regardless of atom:updated) and to allow for other
serializations such as JSON Activity Streams without changes to the core
business logic.
That observation (that a serialization-agnostic activity processor can't
order by updated time) is correct today.
We could of course decide to add an updated time to the activity streams
abstract data model, and we may or may not decide to represent that as
atom:updated in the Atom serialization. Until now no-one offered a use
case nor a desire to do that, so it doesn't exist in the spec today.
This is just my couple of cents and I don't claim to be a professional
in any of the matters. However I hope the points monsieur John Panzer
brought out will be considered and implemented in the specification.
Why?
1) If I have read the Atom specs correctly, a atom without <updated>
element is not an "valid" atom. Right?
2) We will loose all the flexibility the mentioned element provides.
I hope we will not use an existing and widely used specification
"wrong" by deprecating it's mandatory requirements or by redefining
the meaning and usage of the elements.
John, don't give up. Monica, thank you for the support.
And thank you all for the AS! I have implemented it successfully in
multiple ways.
Cheers,
--
Tuomas
xmpp:tuo...@xmpp.lobstermonster.org
atom:updated does not meet the needs of the activity time component,
since the time component is the time the event occured and should NOT
change when the metadata of the event changes.
On Friday, November 26, 2010, Martin Atkins <ma...@degeneration.co.uk> wrote:
> On 11/26/2010 09:16 AM, Marko Degenkolb wrote:
>
> I would like to support the statements from Tuomas, John, and Monica.
> We definitely should not weaken the standard we derive from.
>
> Another point: most of our discussion here focuses on the AS provider.
> Let’s now take a look at an AS consumer (e.g. a plain feed reader
> displaying activities to start with). How is that supposed to
> interpret these two fields?
> As long as we cannot define a distinct and meaningful contract to both
> along with a good understanding how they shall be consumed, we should
> require one mandatory element only – and in this case I would vote for
> updated, being the mandatory field in Atom already.
>
>
>
> atom:updated does not meet the needs of the activity time component, since the time component is the time the event occured and should NOT change when the metadata of the event changes.
>
> --
> You received this message because you are subscribed to the Google Groups "Activity Streams" group.
> To post to this group, send email to activity...@googlegroups.com.
> To unsubscribe from this group, send email to activity-strea...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/activity-streams?hl=en.
>
>
--