{"@context":{"rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","owl":"http://www.w3.org/2002/07/owl#","foaf":"http://xmlns.com/foaf/0.1/","dc":"http://purl.org/dc/elements/1.1/","dct":"http://purl.org/dc/terms/","sioc":"http://rdfs.org/sioc/types#","blog":"http://vocab.amy.so/blog#","as":"https://www.w3.org/ns/activitystreams#","mf2":"http://microformats.org/profile/","ldp":"http://www.w3.org/ns/ldp#","solid":"http://www.w3.org/ns/solid#","view":"https://terms.rhiaro.co.uk/view#","asext":"https://terms.rhiaro.co.uk/as#","dbp":"http://dbpedia.org/property/","geo":"http://www.w3.org/2003/01/geo/wgs84_pos#","doap":"http://usefulinc.com/ns/doap#","time":"http://www.w3.org/2006/time#"},"@graph":[{"@id":"https://rhiaro.co.uk/2015/10/1445840770","@type":"as:Follow","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:object":{"@id":"https://twitter.com/sideshowbarker"},"as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-10-26T06:26:10+0000"},"as:tag":{"@id":"https://rhiaro.co.uk/tags/w3c"}},{"@id":"https://rhiaro.co.uk/2015/10/1445935472","@type":"as:Like","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"","as:object":{"@id":"https://twitter.com/therealdeiu/status/658834077991182336"},"as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-10-27T08:44:32+0000"},"as:summary":"Amy liked https://twitter.com/therealdeiu/status/658834077991182336","as:tag":[{"@id":"https://rhiaro.co.uk/tags/naps"},{"@id":"https://rhiaro.co.uk/tags/tpac2015"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/11/1448649240","@type":"as:Add","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:object":{"@id":"https://github.com/w3c/echidna/wiki/How-to-use-Echidna-with-ReSpec-and-GitHub"},"as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-11-27T18:34:00+0000"},"as:summary":"Amy added https://github.com/w3c/echidna/wiki/How-to-use-Echidna-with-ReSpec-and-GitHub to https://rhiaro.co.uk/bookmarks/","as:tag":[{"@id":"https://rhiaro.co.uk/tags/echidna"},{"@id":"https://rhiaro.co.uk/tags/github"},{"@id":"https://rhiaro.co.uk/tags/specs"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"}],"as:target":{"@id":"https://rhiaro.co.uk/bookmarks/"}},{"@id":"https://rhiaro.co.uk/2015/11/1448913283","@type":["as:Announce","as:Like"],"as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"","as:object":{"@id":"https://twitter.com/jennschiffer/status/671413607591239680"},"as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-11-30T19:54:43+0000"},"as:summary":"Amy liked https://twitter.com/jennschiffer/status/671413607591239680","as:tag":[{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"},{"@id":"https://rhiaro.co.uk/tags/web"}]},{"@id":"https://rhiaro.co.uk/2015/11/4th-social-web","@type":"as:Event","blog:tmpcontent":"# 4th Social Web F2F","as:endTime":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-03T01:00:00+0000"},"as:inReplyTo":{"@id":"https://aaronparecki.com/events/2015/12/01/1/socialwg"},"as:location":{"@id":"https://kylewm.com/venues/mozilla-sf-san-francisco-california"},"as:name":"4th Social Web F2F","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-11-07T03:43:00+0000"},"as:startTime":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-01T17:00:00+0000"},"as:tag":[{"@id":"https://rhiaro.co.uk/tags/event"},{"@id":"https://rhiaro.co.uk/tags/hacking"},{"@id":"https://rhiaro.co.uk/tags/phd"},{"@id":"https://rhiaro.co.uk/tags/rsvp"},{"@id":"https://rhiaro.co.uk/tags/social+web"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/11/maybe-got-myself","@type":"as:Note","sioc:has_reply":{"@id":"https://brid-gy.appspot.com/like/twitter/rhiaro/670638345966383104/20148603"},"blog:tmpcontent":"Maybe if I got myself some principles to irrationally and doggedly defend, [all this](https://rhiaro.co.uk/2015/11/standards-star-trek-2) would be easier.","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"
Maybe if I got myself some principles to irrationally and doggedly defend, all this would be easier.
","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-11-28T16:19:57+0000"},"as:summary":"Amy wrote about life, w3c, & standards","as:tag":[{"@id":"https://rhiaro.co.uk/tags/life"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/11/standards-star","@type":"as:Article","as:content":"This is part of an ongoing series of notes about Star Trek episodes that remind me in some way of interactions with W3C Working Groups.
In TNG S1E26 (\"The Neutral Zone\"), a man from the late 21st century is found cryogenically frozen. He is awoken aboard the Enterprise, and soon becomes frustrated that he can't speak to the Captain (who is busy diffusing a dangerous situation with the Romulans). He uses a communications panel to call the Captain, who isn't best pleased. When reprimanded for unauthorised use of the panel, he says \"If they are so important, why don't they need an 'executive key'?\" to which Picard replies \"Aboard a starship, that is not necessary. We are all capable of exercising self-control.
","as:name":"Standards and Star Trek","as:published":"2015-11-27T18:40:00-0500","as:tag":[{"@id":"https://rhiaro.co.uk/tags/life"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"},{"@id":"https://rhiaro.co.uk/tags/star+trek"}]},{"@id":"https://rhiaro.co.uk/2015/11/standards-star-trek","@type":"as:Article","as:content":"This is part of an ongoing series of notes about Star Trek episodes that remind me in some way of interactions with W3C Working Groups.
In TNG S1E7 (\"Contagion\") a computer virus attempts to rewrite the software of the Enterprise. Geordi: \"We have two completely incompatible computer systems trying to interact!\" Sound familiar? A potential consequence is complete destruction of the Enterprise, as happened to the USS Yamato shortly before. Later, during multiple systems failures and faced with imminent Romulan attack, the shields are going up and down and weapons systems are going on and off, Troi smirks: \"In another time and another place this could be funny.\" Riker adds \"In case it should become necessary to fight, do you suppose you could find me some rocks to throw at them?
","as:name":"Standards and Star Trek","as:published":"2015-11-27T18:41:00-0500","as:tag":[{"@id":"https://rhiaro.co.uk/tags/life"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/star+trek"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/11/standards-star-trek-2","@type":"as:Article","blog:tmpcontent":"# Standards and Star Trek\r\n\r\nThis is part of an ongoing series of notes about Star Trek episodes that remind me in some way of interactions with W3C Working Groups.\r\n\r\n## On neverending circular arguements\r\n\r\n\"It is a matter of honor!\" - Worf, most episodes.","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"This is part of an ongoing series of notes about Star Trek episodes that remind me in some way of interactions with W3C Working Groups.
\r\n"It is a matter of honor!" - Worf, most episodes.
","as:name":"Standards and Star Trek","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-11-28T16:16:18+0000"},"as:tag":[{"@id":"https://rhiaro.co.uk/tags/life"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/star+trek"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/12/1449607500","@type":"as:Add","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:object":{"@id":"http://www.w3.org/2015/Process-20150901/#transition-reqs"},"as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-08T20:45:00+0000"},"as:summary":"Amy added http://www.w3.org/2015/Process-20150901/#transition-reqs to https://rhiaro.co.uk/bookmarks/","as:tag":[{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"}],"as:target":{"@id":"https://rhiaro.co.uk/bookmarks/"}},{"@id":"https://rhiaro.co.uk/2015/12/dustywebhttpdustycloudorg","@type":"as:Note","blog:tmpcontent":"[@dustyweb](http://dustycloud.org) points out that the SocialWG is already in Federation Space.","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"@dustyweb points out that the SocialWG is already in Federation Space.
","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-02T20:38:30+0000"},"as:summary":"Amy wrote about socialwg, w3c, standards, star trek, federation, & dustycloud.org","as:tag":[{"@id":"https://rhiaro.co.uk/tags/dustycloud.org"},{"@id":"https://rhiaro.co.uk/tags/federation"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/star+trek"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/12/productive","@type":"as:Note","sioc:has_reply":[{"@id":"https://brid-gy.appspot.com/like/twitter/rhiaro/671872967731601409/20148603"},{"@id":"https://brid-gy.appspot.com/like/twitter/rhiaro/671872967731601409/3064618349"},{"@id":"https://twitter.com/azaroth42/status/671912611210854400"}],"blog:tmpcontent":"Productive SocialWG f2f day 1. Many resolution, such spec, so convergence, wow.","as:actor":{"@id":"https://rhiaro.co.uk/about#me"},"as:content":"Productive SocialWG f2f day 1. Many resolution, such spec, so convergence, wow.
","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-02T02:06:01+0000"},"as:summary":"Amy wrote about social web, events, socialwg, w3c, & doge","as:tag":[{"@id":"https://rhiaro.co.uk/tags/doge"},{"@id":"https://rhiaro.co.uk/tags/events"},{"@id":"https://rhiaro.co.uk/tags/social+web"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2015/12/socialwg4-summary","@type":"as:Article","blog:tmpcontent":"# Social Web WG 4th face-to-face summary\r\n\r\n*This post is my own opinion, and does not necessarily represent the opinion of the Social Web WG!*\r\n\r\nSee also [day 1 minutes](https://www.w3.org/wiki/Socialwg/2015-12-01-minutes) and [day 2 minutes](https://www.w3.org/wiki/Socialwg/2015-12-02-minutes).\r\n\r\nWhat follows is more detail on my perspective of the main conversations we had over the two days. Clarifications and corrections welcome.\r\n\r\n## tl;dr ##\r\n\r\n* Most AS2 issues are closed! CR-blocking issues are now due by 15th December.\r\n* We took a bunch of things to Editor's Draft and are pushing for FPWDs as soon as is viable.\r\n* Some of the drafts overlap but there's a general feeling that since there are keen editors we should work on everything and iron out issues and redundancies as we go, rather than holding out and waiting for clarity.\r\n* Go check out the specs and build bits of them and give the editors feedback!\r\n\r\n## ActivityStreams 2\r\n\r\nWe steamrollared through AS2 issues, which included core simplifications, vocabulary changes and reductions and editorial clarifications. James made most edits during the meeting, so there's [a much updated working draft](http://jasnell.github.io/w3c-socialwg-activitystreams/activitystreams-core/index.html) available now. You should read it and post any issues you see to be CR-blocking by the 15th of December.\r\n\r\nJSON-LD related stuff has been moved to its own section; since it is optional, having references sprinkled throughout was confusing for people who don't necessarily want to deal with it. [Chris](https://dustycloud.org) pointed out that even for extensions, if you know the extension you want to handle you can still do that in plain JSON.\r\n\r\nStill some consternation about which alternative syntax examples should be in the spec. Since they're non-normative/editorial anyway they're not a CR-blocker so left alone for the time being.\r\n\r\nWe don't need a verison number in the URL because any future widely-deployed extensions that want to make it into the core will likely be incorporated as part of a full new version (ie. AS3). At some point we should start a registry for extensions; James is keeping track himself on github, we could move this to a wiki page and ultimately a CG when the WG wraps up.\r\n\r\nLots of discussion about testing frameworks and how to meaningfully test production and consumption of syntax and vocabulary. I refer you to the minutes, as this is beyond my ability to summarise well enough, but it seemed like the people working on this gained some clarity and a plan to move forwards.\r\n\r\n## Social API\r\n\r\n### Editor's Draft all the things\r\n\r\nThere's some contention around what it means to accept a spec as an Editor's Draft in the WG. Our general consensus was that it means a spec isn't necessarily going to be rec-track, or even the direction the group is going to take, but it's in-scope and worth some portion of our attention, even if that is just to inform other things. Most specs we've picked up are work that the editors were doing anyway, and this just means the WG should explicitly not ignore them. It's expected that the specs will change significantly going forward, in response to input from the WG.\r\n\r\nAs such, it's okay that some of our now-ED specs currently cover overlapping territory. We hope that WG attention will serve to refine, cut, expand, merge, and otherwise sort this out. We may end up multiple small specs derived from our current set of EDs which cover pieces of the social puzzle, or several specs will demonstrate multiple viable ways of doing the same thing. My preference is for the former, but the latter is better than nothing. (I tentatively extrapolate the latter into either one gets wide adoption and the others quietly fade out, or they all get equal adoption and people build bridges between them, either way not a total loss).\r\n\r\n### Social Web Protocols\r\n\r\nI finally convinced people to stop calling this \"Amy's SocialAPI Document\" and renamed everything to [Social Web Protocols](https://w3c-social.github.io/social-web-protocols/social-web-protocols). This document describes the individual componants we are trying to standardise (based on user stories), covering both the API and Federation. Given the potential for the WG to produce multiple small specs, work on this is to continue to describe and serve as a guide to each building block. This should highlight both points of convergence between separate specs, and gaps that no existing specs are filling adequately.\r\n\r\nIssues filed should be to that end. Point out obvious points of commonality between specs that I haven't noted, or where it would be worth replacing the vague overview with more spec-like details.\r\n\r\nI aim to take this to FPWD next week (which does *not* imply WG consensus on the contents yet) with the expectation that this is currently an overview document: a guide to the different areas being standardised by the WG. If we end up with a bunch of small (or overlapping) specs, this could end up as a Note, detailing how they relate to each other as a guide to implementors. If we end up with one spec that covers everything, either this becomes it following input from the other drafts, or this has done its job at converging things and is dropped completely. The rationale behind going to FPWD with this document is to better advertise and explain the different angles of work the WG is doing to other WGs and the public, and to seek wider feedback thereon. The issues become a place to discuss features based on *functionality*, where they are not specific to one of the other individual specs.\r\n\r\n### ActivityPump and Micropub\r\n\r\nBoth now EDs. Micropub covers a subsection of functionality of ActivityPump, but is uncoupled from any other pieces of functionality, whereas ActivityPump intertwines lots of things. There are distinct similarities - both POST JSON to a specific endpoint to create, update and delete content. The editors are keen to cooperate so there's value in working on them both in sync.\r\n\r\n### jf2\r\n\r\njf2 is a social syntax to complement (*not* compete with!) AS2, where jf2 is content-centric and AS2 is activity-centric. The editors of both agreed that it would be beneficial to work on these in conjunction. I've written more about [the relationship between them here](/2015/12/things-happenings).\r\n\r\n### Post type discovery\r\n\r\nPTD is an algorithm to help consumers who find themselves with implicitly typed objects to derive explicit AS2 types, if that's what they prefer to work with. My concern is that it's biased towards the microformats2 vocabulary and currently useful for a niche - but a very small niche. However, James pointed out that types are actually optional in AS2 in general, so it could be expanded to help go from untyped AS2 objects to typed ones as well.\r\n\r\nMy other concern is that this space is such a moving target, and having a fixed algorithm to derive post types based on properties is going to get dated really fast. A constantly shifting algorithm doesn't fit into W3C workflow, and of course brings its own problems (who has implemented which version as it changes over time). I don't have an answer to this.\r\n\r\n## Federation: Realisations and moving forward\r\n\r\nEvan forced us to slow down and really think about what we meant by federation. I don't know if anyone else did, but I had a bit of a lightbulb during this discussion. Bogged down in the particular bits of federation that are within reach to me (basically, notifications), I forgot there are a great many other things one might want to federate, like search, following topics, user discovery, recommendations... The WG is not required to tackle all of these, as a 'federation protocol' is the icing on our charter cake, but we absolutely don't want to de-prioritise federation completely as it's important and actually ties in well with a lot of the work we're already doing. But taking a step back to reassess - and clarify to the outside world - what we're actually doing is important, and there's some effort going into that now.\r\n\r\n### Webmention\r\n\r\nWebmention has been an ED for a short while, and there were some issues to work through. Some really interesting points have been raised around technical details, security concerns and functionality enhancements, and lots of different ways to refine this spec are emerging. We talked through open issues, and group resolutions were made for most of them.\r\n\r\nThe one I'm most interested in is addition of the [`property` parameter](http://csarven.ca/webmention) for better disambiguation of the assertion being made by a webmention. It surfaces a need of people outside of the current core webmention implementors to send and verify claims more precisely, whilst adding minimal additional overhead for those who don't need it. Since bringing this spec to the WG is an effort to gain wider adoption and investigate broader use cases than what we have at present, taking these kinds of expansions seriously is good. The benefits were positively acknowledge overall, and I was hoping we'd see this added to the current version, even if marked 'at risk' pending future implementations. But the decision was taken to leave it out, in the same vein as AS2 currently relegating all *addition* suggestions to extensions. On the plus side, the webmention spec will link to all proposed extensions which are written up as specs, and if any extensions see enough adoption over the course of the work they can be integrated into the core.\r\n\r\n## Cooperation\r\n\r\nBridging between worlds has been an ongoing theme in this WG.\r\n\r\n[Chris](https://dustycloud.org) has done some great work on [Activipy](http://activipy.readthedocs.org), a Python library for handling AS2, and overnight between meeting days he added support for jf2 as well by simply passing in an alternative JSON-LD context. This means you can pass in AS2 and serialize out again as jf2, and vice versa! More or less, at least... this might even be improved by adding PTD in between for where mappings aren't already obvious.\r\n\r\nIn general, tensions between specs that could be overlapping have changed to editors supporting each other to drive all of the work forward, and, I'm hoping, to optimise where redundancies exist. We all have the same goals, after all. We've still got a long way to go, but we ended on the feeling that we can probably get there.\r\n\r\nAnd we played almost no SocialWG bingo, so it must have been a good meeting.","as:content":"This post is my own opinion, and does not necessarily represent the opinion of the Social Web WG!
\r\nSee also day 1 minutes and day 2 minutes.
\r\nWhat follows is more detail on my perspective of the main conversations we had over the two days. Clarifications and corrections welcome.
\r\nWe steamrollared through AS2 issues, which included core simplifications, vocabulary changes and reductions and editorial clarifications. James made most edits during the meeting, so there's a much updated working draft available now. You should read it and post any issues you see to be CR-blocking by the 15th of December.
\r\nJSON-LD related stuff has been moved to its own section; since it is optional, having references sprinkled throughout was confusing for people who don't necessarily want to deal with it. Chris pointed out that even for extensions, if you know the extension you want to handle you can still do that in plain JSON.
\r\nStill some consternation about which alternative syntax examples should be in the spec. Since they're non-normative/editorial anyway they're not a CR-blocker so left alone for the time being.
\r\nWe don't need a verison number in the URL because any future widely-deployed extensions that want to make it into the core will likely be incorporated as part of a full new version (ie. AS3). At some point we should start a registry for extensions; James is keeping track himself on github, we could move this to a wiki page and ultimately a CG when the WG wraps up.
\r\nLots of discussion about testing frameworks and how to meaningfully test production and consumption of syntax and vocabulary. I refer you to the minutes, as this is beyond my ability to summarise well enough, but it seemed like the people working on this gained some clarity and a plan to move forwards.
\r\nThere's some contention around what it means to accept a spec as an Editor's Draft in the WG. Our general consensus was that it means a spec isn't necessarily going to be rec-track, or even the direction the group is going to take, but it's in-scope and worth some portion of our attention, even if that is just to inform other things. Most specs we've picked up are work that the editors were doing anyway, and this just means the WG should explicitly not ignore them. It's expected that the specs will change significantly going forward, in response to input from the WG.
\r\nAs such, it's okay that some of our now-ED specs currently cover overlapping territory. We hope that WG attention will serve to refine, cut, expand, merge, and otherwise sort this out. We may end up multiple small specs derived from our current set of EDs which cover pieces of the social puzzle, or several specs will demonstrate multiple viable ways of doing the same thing. My preference is for the former, but the latter is better than nothing. (I tentatively extrapolate the latter into either one gets wide adoption and the others quietly fade out, or they all get equal adoption and people build bridges between them, either way not a total loss).
\r\nI finally convinced people to stop calling this "Amy's SocialAPI Document" and renamed everything to Social Web Protocols. This document describes the individual componants we are trying to standardise (based on user stories), covering both the API and Federation. Given the potential for the WG to produce multiple small specs, work on this is to continue to describe and serve as a guide to each building block. This should highlight both points of convergence between separate specs, and gaps that no existing specs are filling adequately.
\r\nIssues filed should be to that end. Point out obvious points of commonality between specs that I haven't noted, or where it would be worth replacing the vague overview with more spec-like details.
\r\nI aim to take this to FPWD next week (which does not imply WG consensus on the contents yet) with the expectation that this is currently an overview document: a guide to the different areas being standardised by the WG. If we end up with a bunch of small (or overlapping) specs, this could end up as a Note, detailing how they relate to each other as a guide to implementors. If we end up with one spec that covers everything, either this becomes it following input from the other drafts, or this has done its job at converging things and is dropped completely. The rationale behind going to FPWD with this document is to better advertise and explain the different angles of work the WG is doing to other WGs and the public, and to seek wider feedback thereon. The issues become a place to discuss features based on functionality, where they are not specific to one of the other individual specs.
\r\nBoth now EDs. Micropub covers a subsection of functionality of ActivityPump, but is uncoupled from any other pieces of functionality, whereas ActivityPump intertwines lots of things. There are distinct similarities - both POST JSON to a specific endpoint to create, update and delete content. The editors are keen to cooperate so there's value in working on them both in sync.
\r\njf2 is a social syntax to complement (not compete with!) AS2, where jf2 is content-centric and AS2 is activity-centric. The editors of both agreed that it would be beneficial to work on these in conjunction. I've written more about the relationship between them here.
\r\nPTD is an algorithm to help consumers who find themselves with implicitly typed objects to derive explicit AS2 types, if that's what they prefer to work with. My concern is that it's biased towards the microformats2 vocabulary and currently useful for a niche - but a very small niche. However, James pointed out that types are actually optional in AS2 in general, so it could be expanded to help go from untyped AS2 objects to typed ones as well.
\r\nMy other concern is that this space is such a moving target, and having a fixed algorithm to derive post types based on properties is going to get dated really fast. A constantly shifting algorithm doesn't fit into W3C workflow, and of course brings its own problems (who has implemented which version as it changes over time). I don't have an answer to this.
\r\nEvan forced us to slow down and really think about what we meant by federation. I don't know if anyone else did, but I had a bit of a lightbulb during this discussion. Bogged down in the particular bits of federation that are within reach to me (basically, notifications), I forgot there are a great many other things one might want to federate, like search, following topics, user discovery, recommendations... The WG is not required to tackle all of these, as a 'federation protocol' is the icing on our charter cake, but we absolutely don't want to de-prioritise federation completely as it's important and actually ties in well with a lot of the work we're already doing. But taking a step back to reassess - and clarify to the outside world - what we're actually doing is important, and there's some effort going into that now.
\r\nWebmention has been an ED for a short while, and there were some issues to work through. Some really interesting points have been raised around technical details, security concerns and functionality enhancements, and lots of different ways to refine this spec are emerging. We talked through open issues, and group resolutions were made for most of them.
\r\nThe one I'm most interested in is addition of the property
parameter for better disambiguation of the assertion being made by a webmention. It surfaces a need of people outside of the current core webmention implementors to send and verify claims more precisely, whilst adding minimal additional overhead for those who don't need it. Since bringing this spec to the WG is an effort to gain wider adoption and investigate broader use cases than what we have at present, taking these kinds of expansions seriously is good. The benefits were positively acknowledge overall, and I was hoping we'd see this added to the current version, even if marked 'at risk' pending future implementations. But the decision was taken to leave it out, in the same vein as AS2 currently relegating all addition suggestions to extensions. On the plus side, the webmention spec will link to all proposed extensions which are written up as specs, and if any extensions see enough adoption over the course of the work they can be integrated into the core.
Bridging between worlds has been an ongoing theme in this WG.
\r\nChris has done some great work on Activipy, a Python library for handling AS2, and overnight between meeting days he added support for jf2 as well by simply passing in an alternative JSON-LD context. This means you can pass in AS2 and serialize out again as jf2, and vice versa! More or less, at least... this might even be improved by adding PTD in between for where mappings aren't already obvious.
\r\nIn general, tensions between specs that could be overlapping have changed to editors supporting each other to drive all of the work forward, and, I'm hoping, to optimise where redundancies exist. We all have the same goals, after all. We've still got a long way to go, but we ended on the feeling that we can probably get there.
\r\nAnd we played almost no SocialWG bingo, so it must have been a good meeting.
","as:name":"Social Web WG 4th face-to-face summary","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#datetime","@value":"2015-12-07T23:59:00+0000"},"as:tag":[{"@id":"https://rhiaro.co.uk/tags/activitypump"},{"@id":"https://rhiaro.co.uk/tags/activitystreams"},{"@id":"https://rhiaro.co.uk/tags/as2"},{"@id":"https://rhiaro.co.uk/tags/federation"},{"@id":"https://rhiaro.co.uk/tags/indieweb"},{"@id":"https://rhiaro.co.uk/tags/jf2"},{"@id":"https://rhiaro.co.uk/tags/meeting"},{"@id":"https://rhiaro.co.uk/tags/mf2"},{"@id":"https://rhiaro.co.uk/tags/microformats"},{"@id":"https://rhiaro.co.uk/tags/micropub"},{"@id":"https://rhiaro.co.uk/tags/phd"},{"@id":"https://rhiaro.co.uk/tags/social+protocols"},{"@id":"https://rhiaro.co.uk/tags/social+web"},{"@id":"https://rhiaro.co.uk/tags/socialapi"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"},{"@id":"https://rhiaro.co.uk/tags/webmention"}]},{"@id":"https://rhiaro.co.uk/2015/12/standards-star-trek-3","@type":"as:Article","as:content":"S3E13, Deja Q...
Q: \"Simple: Change the gravitational constant of the universe.\"
Geordi: \"What?\"
Q: \"Change the gravitational constant of the universe, thereby altering the mass of the asteroid.\"
Geordi: \"Redefine gravity. And how the hell am I supposed to do that?\"
Q: \"You just DO it. GAHH! Where's that doctor, anyway?\"
Data: \"Geordi is trying to say that changing the gravitational constant of the universe is beyond our capabilities.\"
Q: \"Well, then... never mind.
","as:name":"Standards and Star Trek","as:published":"2015-12-19T17:28:00-0500","as:tag":[{"@id":"https://rhiaro.co.uk/tags/life"},{"@id":"https://rhiaro.co.uk/tags/science"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/star+trek"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]},{"@id":"https://rhiaro.co.uk/2016/03/socialwg5-summary","@type":"as:Article","as:content":"This post is my own opinion, and does not necessarily represent the opinion of the Social Web WG!
\r\nSee also day 1 minutes and day 2 minutes.
\r\nWe met in Boston on 16 and 17 March. What follows is more detail on my perspective of the main conversations we had over the two days. Clarifications and corrections welcome.
\r\nAS2 is inching closer to CR. Evan has made a validator at as2.rocks and done a lot of work on conformance criteria which we went through as a group and updated a little; mostly changing SHOULDs to MUSTs.
\r\nDiscussed and not necessarily resolved a few new open issues, including: considering dropping the Relationship
object and reviving it as an extension if necessary; a proposal for a new property to say when something was deleted; weakening the SHOULD requirement on name
; clarifying scope
and context
.
Stay tuned for a new working draft sometime soon.
\r\nThe most exciting thing I thought was agreeing on the potential for convergence between the create, update and delete parts of Activitypub and Micropub.
\r\nMicropub started life as a super small and simple way for clients and servers to agree how to create content on a website by POSTing form encoded parameters to an endpoint. As a result of this simplicity, there are dozens of client and server implementations, allowing people to use each others posting clients to add posts to their site, from simple text-only posts to photos, events, RSVPs, likes, bookmarks, reposts. When Micropub needed update and delete, it grew beyond what form-encoded parameters could sensibly handle, and added in a JSON syntax which I think to date only the editor has implemented.
\r\nActivitypub uses a JSON syntax (ActivityStreams2) from the outset for create, update and delete, and when you compare this with the Micropub JSON they look remarkably similar.
\r\nMy posting endpoint implements create the AP way, and endpoint discovery the MP way. It also catches Micropub form-encoded requests and translates them to AS2 JSON before proceeding, so I can still use simple Micropub clients. My posting clients burrow (checkins), obtainium (purchases), replicator (food) and seeulator (events, RSVPs, travel plans) all post AS2 JSON... after discovering the endpoint via rel=micropub
. Next on my list, and well overdue at this point, is adding update and delete to both server and clients.
So I proposed we write a document that unifies the common parts of AP and MP, iron out the smaller differences, and hope this coalesces into a small create/update/delete spec which both AP and MP can reference rather than duplicate. Because modularity is good, and common modules are better! I dubbed this temporarily (or is it?) SocialPub.
\r\nSo what's left in Micropub? I hear you cry. The super simple form-encoded create which is what made Micropub do so well in the first place is really what makes Micropub micro, so I'd like to see this be the bulk of the Micropub spec, with just a pointer to SocialPub for people who want to level up to JSON.
\r\nThere are still more than a few issues to be dealt with, though we handled a few during the meeting (such as media uploads). I'll be writing SocialPub up into the Social Web Protocols doc next week, stay tuned.
\r\nJessica and Chris demo'd Media Goblin federating with pump.io! Which is cool. Which brings them a huge step closer to implementing things with AS2/AP and federating that way. They discussed how one of their main impediments had been database schema migration.
\r\nAaron demo'd his Micropub editing UI, which allows partial edits on the post, only for data he is most likely to want to edit (tags, syndication URLs and date).
\r\nAaron also demonstrated a new event posting interface in Quill which uses Micropub, and showed how RSVPs from Woodwind (a feed reader) work via Webmention. Tantek and Ben also demo'd RSVPs from their sites. And Ben demo'd how he can post reactjis as replies, exemplified with the poop emoticon, and there is no question that the future of the social web is in safe hands.
\r\nFrank demonstrated federation between OwnCloud servers, which uses WebDAV and CalDAV, and talked through their access control.
\r\nWe also had a couple of admin/process related discussions. The first included agreeing to meet at TPAC in Lisbon in September as it already looks like there'll be critical mass to make it worthwhile.
\r\nSandro has made a list of issue labels for github which we painstakeingly went through to make sure everyone understands them and editors are willing to use them on specs. This should help people to figure out at a glance what the current state of a spec is from the issues, as well as help passers-by to jump in if they want to get involved.
","as:name":"5th Social WG F2F Summary","as:published":{"@type":"http://www.w3.org/2001/XMLSchema#dateTime","@value":"2016-03-29T10:43:39+01:00"},"as:tag":[{"@id":"https://rhiaro.co.uk/tags/activitypub"},{"@id":"https://rhiaro.co.uk/tags/activitystreams"},{"@id":"https://rhiaro.co.uk/tags/as2"},{"@id":"https://rhiaro.co.uk/tags/meeting"},{"@id":"https://rhiaro.co.uk/tags/micropub"},{"@id":"https://rhiaro.co.uk/tags/phd"},{"@id":"https://rhiaro.co.uk/tags/social+web+protocols"},{"@id":"https://rhiaro.co.uk/tags/social+web"},{"@id":"https://rhiaro.co.uk/tags/socialpub"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/standards"},{"@id":"https://rhiaro.co.uk/tags/w3c"},{"@id":"https://rhiaro.co.uk/tags/webmention"}]},{"@id":"https://rhiaro.co.uk/tags/w3c","@type":"as:Collection","as:totalItems":{"@type":"http://www.w3.org/2001/XMLSchema#nonNegativeInteger","@value":"119"}},{"@id":"https://rhiaro.co.uk/tags/w3c?before=https://www.w3.org/wiki/Socialwg/2016-06-06&limit=16","@type":"as:CollectionPage","as:items":[{"@id":"https://www.w3.org/wiki/Socialwg/2016-06-06"},{"@id":"https://rhiaro.co.uk/2016/03/socialwg5-summary"},{"@id":"https://rhiaro.co.uk/2015/12/standards-star-trek-3"},{"@id":"https://rhiaro.co.uk/2015/12/1449607500"},{"@id":"https://rhiaro.co.uk/2015/12/socialwg4-summary"},{"@id":"https://rhiaro.co.uk/2015/12/dustywebhttpdustycloudorg"},{"@id":"https://rhiaro.co.uk/2015/12/productive"},{"@id":"https://rhiaro.co.uk/2015/11/1448913283"},{"@id":"https://rhiaro.co.uk/2015/11/maybe-got-myself"},{"@id":"https://rhiaro.co.uk/2015/11/standards-star-trek-2"},{"@id":"https://rhiaro.co.uk/2015/11/standards-star-trek"},{"@id":"https://rhiaro.co.uk/2015/11/standards-star"},{"@id":"https://rhiaro.co.uk/2015/11/1448649240"},{"@id":"https://rhiaro.co.uk/2015/11/4th-social-web"},{"@id":"https://rhiaro.co.uk/2015/10/1445935472"},{"@id":"https://rhiaro.co.uk/2015/10/1445840770"}],"as:name":"w3c","as:next":{"@id":"https://rhiaro.co.uk/tags/w3c?before=https://rhiaro.co.uk/2016/11/week-in-review-4&limit=16"},"as:partOf":{"@id":"https://rhiaro.co.uk/tags/w3c"},"as:prev":{"@id":"https://rhiaro.co.uk/tags/w3c?before=https://rhiaro.co.uk/2015/10/1445836964&limit=16"}},{"@id":"https://www.w3.org/wiki/Socialwg/2016-06-06","as:tag":[{"@id":"https://rhiaro.co.uk/tags/attendee"},{"@id":"https://rhiaro.co.uk/tags/decentralised+social+web"},{"@id":"https://rhiaro.co.uk/tags/decentralised+web"},{"@id":"https://rhiaro.co.uk/tags/event"},{"@id":"https://rhiaro.co.uk/tags/phd"},{"@id":"https://rhiaro.co.uk/tags/rsvp"},{"@id":"https://rhiaro.co.uk/tags/social+web+working+group"},{"@id":"https://rhiaro.co.uk/tags/social+web"},{"@id":"https://rhiaro.co.uk/tags/socialwg"},{"@id":"https://rhiaro.co.uk/tags/socl2016"},{"@id":"https://rhiaro.co.uk/tags/speaker"},{"@id":"https://rhiaro.co.uk/tags/w3c"}]}]}