Re: Atom Activity Streams and Atom Over XMPP (XEP-0277 and XEP-0472)
Ralph Meijer <[email protected]>
| Newsgroups | gmane.network.jabber.standards-jig |
|---|---|
| Message-ID | <[email protected]> |
Hi, Sure, feel free to create a XEP for this. As was mentioned before, in principle, an activity streams event would just hold an Atom entry, so you need to consider what you want to put in the new XEP. In our system (anyMeta), we had an existing framework for representing "things" connected to other "things" using edges with a predicate. Very semantic web like. The activity streams for events in those websites, as well as the interactive installations tied to them, were a natural extension. We used "pubsub-as-node" here, so notifications to subscribers were just emitted as a side effect of events in the system. No explicit publish action in terms of an XMPP protocol action, but rather an API call to the service that talked to the XMPP network (anyxmpp). Here are some debug logs of when I was testing back then, formatted for easier reading. The first stanza is for an RFID reader in an interactive "voting wall" being coupled to a specific answer (so that a tag read there would cause the person tied to the tag to put in vote for the answer). For reference A3Q5ULX3 is a specific RFID reader, and "Nog een antwoord" an answer. 2011-01-10 09:26:27+0100 [-] SEND (0): " <message to="localhost" from="dwaal.local"> <event xmlns="http://jabber.org/protocol/pubsub#event"> <items node="activity"> <item id="activity/299"> <entry xmlns="http://www.w3.org/2005/Atom"> <published>2011-01-10T09:26:26+01:00</published> <updated>2011-01-10T09:26:26+01:00</updated> <id>http://dwaal.local/activity/299</id> <title type="html">Ralph Meijer made a link from A3Q5ULX3 to Nog een antwoord.</title> <link href="http://dwaal.local/id/135" type="text/html" rel="alternate"/> <verb xmlns="http://activitystrea.ms/spec/1.0/">http://mediamatic.nl/ns/anymeta/2010/activitystreams/link-to</verb> <object xmlns="http://activitystrea.ms/spec/1.0/"> <id xmlns="http://www.w3.org/2005/Atom">http://dwaal.local/id/135</id> <object-type>http://mediamatic.nl/ns/anymeta/2008/kind/artefact</object-type> <title xmlns="http://www.w3.org/2005/Atom">Nog een antwoord</title> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/id/135" rel="alternate"/> </object> <target xmlns="http://activitystrea.ms/spec/1.0/"> <id xmlns="http://www.w3.org/2005/Atom">http://dwaal.local/id/117</id> <object-type>http://mediamatic.nl/ns/anymeta/2008/kind/artefact</object-type> <title xmlns="http://www.w3.org/2005/Atom">A3Q5ULX3</title> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/id/117" rel="alternate"/> </target> <author> <id>http://dwaal.local/id/80</id> <object-type xmlns="http://activitystrea.ms/spec/1.0/">http://mediamatic.nl/ns/anymeta/2008/kind/person</object-type> <title>Ralph Meijer</title> <link href="http://dwaal.local/id/80" rel="alternate"/> <link href="http://dwaal.local/image/432/96-192-192.jpg" rel="enclosure"/> <link href="http://dwaal.local/figure/80" rel="figure"/> <name>Ralph Meijer</name> <uri>http://dwaal.local/id/80</uri> </author> </entry> </item> </items> </event> </message> " The second example is for a person registring an ikTag (personal RFID tag): https://www.mediamatic.net/image/2016/12/13/undefined-760108413.jpg%28mediaclass-list-image.e236162578feb619104a8b70b221afe1aa6b7c0d%29.jpg 2011-01-07 10:53:32+0100 [-] Routing to localhost: u" <message to="localhost" from="dwaal.local"> <event xmlns="http://jabber.org/protocol/pubsub#event"> <items node="activity"> <item id="activity/292"> <entry xmlns="http://www.w3.org/2005/Atom"> <published>2011-01-07T10:53:31+01:00</published> <updated>2011-01-07T10:53:31+01:00</updated> <id>http://dwaal.local/activity/292</id> <title type="html">Ralph Meijer connected an ikTag to their account.</title> <link href="http://dwaal.local/id/80" type="text/html" rel="alternate"/> <verb xmlns="http://activitystrea.ms/spec/1.0/">http://mediamatic.nl/ns/anymeta/2010/activitystreams/iktag</verb> <object xmlns="http://activitystrea.ms/spec/1.0/"> <id xmlns="http://www.w3.org/2005/Atom">http://dwaal.local/id/80</id> <object-type>http://mediamatic.nl/ns/anymeta/2008/kind/person</object-type> <title xmlns="http://www.w3.org/2005/Atom">Ralph Meijer</title> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/id/80" rel="alternate"/> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/image/432/96-192-192.jpg" rel="enclosure"/> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/figure/80" rel="figure"/> </object> <author> <id>http://dwaal.local/id/80</id> <object-type xmlns="http://activitystrea.ms/spec/1.0/">http://mediamatic.nl/ns/anymeta/2008/kind/person</object-type> <title>Ralph Meijer</title> <link href="http://dwaal.local/id/80" rel="alternate"/> <link href="http://dwaal.local/image/432/96-192-192.jpg" rel="enclosure"/> <link href="http://dwaal.local/figure/80" rel="figure"/> <name>Ralph Meijer</name> <uri>http://dwaal.local/id/80</uri> </author> <agent xmlns="http://mediamatic.nl/ns/anymeta/"> <id xmlns="http://www.w3.org/2005/Atom">http://dwaal.local/id/105</id> <object-type xmlns="http://activitystrea.ms/spec/1.0/">http://mediamatic.nl/ns/anymeta/2008/kind/person</object-type> <title xmlns="http://www.w3.org/2005/Atom">ikCam Agent</title> <link xmlns="http://www.w3.org/2005/Atom" href="http://dwaal.local/id/105" rel="alternate"/> </agent> </entry> </item> </items> </event> </message> " On 11/11/2025 14.27, Schimon Jehudah wrote: > This is great! > > It was a good read. I will read it again, more thoroughly. > > Shall we create a new XEP for Atom Activity Streams? > > I think, that doing so would definitely be an incentive to the > developers of Friendica to extend support for XMPP. > > I have forwarded your message to Friendica. > > https://github.com/friendica/friendica/issues/15306 > > Schimon > > On Tue, 11 Nov 2025 12:55:14 +0100 > Ralph Meijer<[email protected]> wrote: > >> Everything old is new. I've worked on this quite extensively at >> Mediamatic in 2008-2011. Have a look at >> <https://ralphm.net/blog/2011/02> and >> <https://ralphm.net/publications/fosdem_2011/>. >> >> On 11 November 2025 10:13:41 CET, Schimon Jehudah<[email protected]> >> wrote: >>> Good day >>> >>> I have elaborated about it to the Movim project. >>> >>> https://github.com/movim/movim/issues/1488 >>> >>> And I have two additional rationals. >>> >>> * Utilizing Activity Streams would allow to set icons and photos to >>> Atom Over XMPP feeds, which is currently not possible because Atom >>> Over XMPP only include element"atom:entry", and does not include >>> element"atom:feed". >>> >>> * Utilizing Activity Streams would also to set a different icon and >>> photo representations by *context* (e.g. family, sports, traveling, >>> exploring, et cetera). >>> >>> And this is an argument for future concerns. >>> >>> * As with Atom Over XMPP (XEP-0277 and XEP-0472), some people might >>> justly ask for RSS Over XMPP; and adopting Atom Activity Streams >>> would significantly assist in refuting an argument to add a new XEP >>> for RSS Over XMPP. >>> >>> Kindly, >>> Schimon >>> >>> On Mon, 10 Nov 2025 08:36:38 +0200 >>> Schimon Jehudah<[email protected]> wrote: >>> >>>> Good day. >>>> >>>> I have explored the "Atom Activity Streams" documents of Friendica. https://activitystrea.ms/specs/atom/1.0/ >>>> I have further added rendering capabilities to an RSS extension. >>>> https://greasyfork.org/scripts/465932-newspaper-syndication-feed-reader >>>> Proposal -------- Since Atom Activity Streams documents can be >>>> delivered as a single "atom:entry" element, as so with XMPP PubSub Node Items; then, it >>>> might be beneficial to mention "Atom Activity Streams" in the XEP >>>> specifications of Atom Over XMPP (XEP-0277 and XEP-0472). >>>> >>>> >>>> Rational >>>> -------- >>>> >>>> Even though, as it seems, an Atom Activity Streams document is, as >>>> with Atom Over XMPP, a single"atom:entry" element, with a couple >>>> of XML namespaces, this would stimulate people to: >>>> >>>> * Utilize XMPP PubSub Node Items in an independent fashion, without >>>> compiling an Atom Syndication Format document; and >>>> >>>> * Consider interoperability with Friendica and other platforms that >>>> produce Atom Activity Streams documents, and also Json Activity >>>> Streams documents, which Nostr utilizes. >>>> >>>> * Consider interoperability of projects with XMPP. >>>> >>>> * Motivate projects, such as Friendica to extend support of XMPP. >>>> >>>> >>>> XML Namespace >>>> ------------- >>>> >>>> The namespaces that are utilized by Friendica, and may be relevant, >>>> are: >>>> >>>> xmlns="http://www.w3.org/2005/Atom" >>>> xmlns:at="http://purl.org/atompub/tombstones/1.0" >>>> xmlns:activity="http://activitystrea.ms/spec/1.0/" >>>> xmlns:dfrn="http://purl.org/macgirvin/dfrn/1.0" >>>> xmlns:georss="http://www.georss.org/georss" >>>> xmlns:media="http://purl.org/syndication/atommedia" >>>> xmlns:ostatus="http://ostatus.org/schema/1.0" >>>> xmlns:poco="http://portablecontacts.net/spec/1.0" >>>> xmlns:statusnet="http://status.net/schema/api/1/" >>>> xmlns:thr="http://purl.org/syndication/thread/1.0" >>>> >>>> >>>> Sample >>>> ------ >>>> >>>> Herein attached an Atom Activity Streams document. Source: >>>> >>>> https://my-place.social/display/feed-item/107999490.atom >>>> https://my-place.social/display/1c9fc4fa-f51b9f6f654d0bd7-7c3a0251 >>>> https://piaille.fr/@movim/115519544289510132 >>>> >>>> >>>> Kind regards, >>>> Schimon >>> _______________________________________________ >>> Standards mailing list [email protected] >>> To unsubscribe send an email [email protected] _______________________________________________ Standards mailing list -- [email protected] To unsubscribe send an email to [email protected]