From W3C Wiki
Jump to: navigation, search

02 Dec 2015

See also: IRC log


Arnaud, rhiaro, aaronpk, sandro, kevinmarks, wilkie, eprodrom, jasnell, cwebber, tantek, Rob_Sanderson, wseltzer,
ben_thatmustbeme, tsyesika, rene, shepazu
Arnaud, eprodrom, tantek
cwebber2, rhiaro, eprodrom, wseltzer, bengo, aaronpk


Summary of Resolutions

  1. Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements
  2. mark the above set closed
  3. mark the above set closed: 175, 235, 240, 256, 242, and 223
  4. close issue 208
  5. close the issue, dropping content objects
  6. close 157
  7. remove the current text, close issue 251
  8. publish a new WD of AS2 drafts as of / by Friday.
  9. Accept as the github procedure for the Social WG
  10. add cwebber as co-editor of activity pump
  11. make any FPWD- issues on Post Type Discovery visible by next telecon 12/8

Agenda items

<cwebber2> present~

<tantek> scribenick: cwebber2

tantek: the first thing is that cwebber2 had an item to propose
... the other first thing is to discuss the as2 features from rene but he's not online

jasnell: he did document it in a github issue

sandro: let's give him a few hours

tantek: I agree
... there were a few things added to the agenda
... integration user stories. Is that you bengo ?

bengo: yes

tantek: how much time do you need? 10 minutes?

bengo: yes

tantek: and cwebber2 how much time do you need for the activipy demo

cwebber2: 10-15 minutes

tantek: I propose we do those first to give time for rene to show up

bengo: so there's a sorting user stories wiki page


<tantek> 10 minutes for this item

bengo: this one is close to what we're doing at our company, we give people javascript snippets that people put on their site, templatized

<Loqi> Bgoering made 1 edit to Socialwg/2015-12-01

<Loqi> Cwebber2 made 1 edit to Socialwg/2015-12-01

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

bengo: want to ask how this would work. lots of discovery stuff is about delegating servies
... frequent problem at big companies is the person who installed a cms no longer works there
... so webfinger (?) type things are useful in that you don't need to muck with the headers, etc
... so service discovery is something I've talked about a lot, rather than just point to an activitypump endpoint, they want a traditional comment setup type thing
... how do you do that with this

sandro: is the comment box normally an iframe

bengo: in our case no, most cases yes
... in our case it's mostly because customers like to use css to arbitrarily change things even though that makes our lives hard

sandro: so do users have accounts on your or their system

bengo: it's pluggable
... when a user does something that needs to plug in, it gets a token, and ..?
... a lot of our things our these things but have been done internally as a proprietary way

eprodrom: it's an interesting use case because many things do stuff like reviews, likes on a page., etc

eprodrom_: there's a few ways it could work
... on pumpio if you want to do something on a remote site, you log into their server via your server, via outh
... so their server acts like a client to your server
... it's a complicated mechanism, there are other ways it could work. There are some other patterns you may want to implement.
... I don't know if you collect posts around the web but you could do that too
... I think that's actually an interesting case for the api
... my gut feeling is that it requires things like a global firehose that everybody aims their public posts towards
... and whoever wants to can drink from that firehose
... but I think it' an interesting issue
... might be worth sketching out as a little api type protocol situation

<Zakim> aaronpk, you wanted to bring up comment services via webmention

bengo: I think there's enough of existing specs where we could boot something up and see if indiewebbers and (?) want to do it


aaronpk: there are som eexisting examples with webmention, like ^
... if you set your webmention endpoint to that, it pulls in the comments to put them on the page
... kind of like disqus, it shows the comments there
... we have the mechanism to show the comment form and stuff
... the nice thing it lets the author choose where their comments are bieng collected
... as opposed to "use twitter and tweet on the hashtag and we'll pull it out"


tantek: are you able to show examples of people using this bengo?

bengo: yes *posts above link*

<aaronpk> all the comments on are pulled in via that herokuapp

bengo: in that case if you sign in on the page it does an arbitrary auth thing

tantek: ok any other input you want to the working group?

bengo: I think I got it

<rhiaro> scribenick: rhiaro

Activipy demo

<wilkie> rhiaro++

<Loqi> rhiaro has 189 karma

  • technical setup*

<scribe> *postponed until magical arrival of vga cable*

<Loqi> Tantekelik made 2 edits to Socialwg/2015-12-01

<cwebber2> scribenick: cwebber2

<tantek> any word from Rene?

tantek: ok, then let's jump right into federation protocol, which is our next agenda item

federation protocol

eprodrom: I'd like to talk for a couple minutes for what our plan is for tackling federation protocol
... esp when we have a lot to do as in terms of syntax and api
... sorry to be blunt, but it's the optional item on our charter, but I think it's likely the last rather than the immediately last piece

tantek: ok for 5 minutes to discuss this beforehand?

aaronpk: ok

tantek: ok 5 minutes on agenda prioritization

<tantek> rhiaro, can you scribe?

<rhiaro> scribenick: rhiaro

cwebber2: Federation and social api things are not too different. I tmight end up not being in terms of

<cwebber2> scribenick: cwebber2

aaronpk: my take on it is why a social api is useful it's not too useful without federation

<rhiaro> micropub depending on what comes out of aaron's brainstorming. If it turns out we can do those things in one fell swoop, it would be kind of nice and nice to not force ourselces to not work on them if is actually most efficient for us to address them together

aaronpk: I agree there's value in it, but I think it's not a very good goal to stop there
... for me a lot of the goal of this group is to do federation
... and I don't want a repeat of oauth where nothing interops because there was no attempt to do it

<ben_thatmustbeme> finally catching up on all the logs, i had an app that did server to server micropub for syndication to twitter, the negotiation of access keys was the most annoying part really, but once that was done, it worked fine

eprodrom: so I think that by far the great majority of social programming is done as client/server apis, there are very few very small client/server apis comparativley
... while most of us come from that federated social web world, while that might feel like the most important goal, I feel like the federation thing is the treat for us is all cool and fun, but I think giving the dessert first is a bad idea
... we do things like we tangle up the social api and federation
... but I think attacking federation at this point is not the best use of our resources
... I'm happy to go at it but it feels like a big stretch
... and I'd like to talk about what process we have to do it

sandro: who's the market for the API without federation?

eprodrom: so who would use it? take for example a new social network, which those launch all the time
... secret, instagram, periscope, etc
... having a standard api that's close to hand might be what's used
... that might be a market is what they're doing

sandro: and the benefit is it's less work to adopt their own
... ?
... I guess you're suggesting it's not cost effective to switch to the standard
... and the new folks don't know they want it

eprodrom: yes, and I think it's easier to do incremental adoption

sandro: in the needs document, federation is 1, 2, and 5

eprodrom: yeah, I think also managing profile stuff

aaronpk: follow-up question evan, the value is to design the api

eprodrom: it's not me saying this, it's the charter

aaronpk: my follow up question is you also see as part of that the value is someone's building an amazing iphone app that does video editing in a new way
... is the value that they can already do a web api they can point to?

<Loqi> Tantekelik made 2 edits to Socialwg/2015-12-01

aaronpk: and someone wants to build something but not use the mobile app... ?
... there does seem some value in having federation standardized
... you're able to swap out what servers you're using

eprodrom: that's exactly it, you can use off the shelf libraries and etc

<kevinmarks> I am now

eprodrom: both on client and server side

<kevinmarks> muted and video off

eprodrom: I think there's a number of ways you could do something that doesn't have federation at its core
... for companies, individuals, everyone

<kevinmarks> as the train is in noisy level crossing mode

eprodrom: I think ultimately form a procedure standpoint, we have 3 deliverables, are not at CR for any of them, we have one that's optional, and we have worries about what to do about all of them is useful
... I'd like to hear we start federation protocol because XYZ not be cause we think it's cool

<rhiaro> scribenick: rhiaro

<kevinmarks> if we want to do a micropub+webmention+webaction demo later, I have all the bits for that set up

<tantek> kevinmarks - if you want to do that, could you add to ?

cwebber2: I think a couple of things. 1) most of the companies that ar eputting out things like this probably don't want to use an off the shelf mobile app anyway, because they want to control their brand in some way. Although it is true that when media goblin implemented the pump api we were able to use existing clients and it just worked

<tantek> q/

cwebber2: that is pretty cool, but one concern is that it would take a lot of work to try to decouple the client to server stuff in AP

<kevinmarks> hi wseltzer see you in 40 mins or so

cwebber2: I also worry that in terms of motivation to stay active in this group, it's going to be hard to stay motivated if federation is not on the horizon
... My interest drops dramatically. That's the whole reason I'm int he group.
... If federation looks like it's not a likely target it's going to reduce the amount I'm enthused to stay involved. I want to keep it on the horizon. It's a high priority / life goal for m to advance that

<cwebber2> scribenick: cwebber2

bengo: aside from social api benefits of the next api benefits etc, I think it's useful for reusable readers/writers etc, but also because web components that real enterprise buyers will have motivation to use
... those same benefits could come from a standardized api, might not benefit from federation
... my other question is evan, are you just not eager to talk about it for 4 hours right now?

eprodrom: I'm more concerned over months and years than the next several hours
... we are at 5 drafts that we're working on, and we're going to start a new process for federation protocol


sandro: I think we concluded that the user stories covered both

eprodrom: I think we said it's topology agnostic

sandro: right, so that means we can just say applies across servers

eprodrom: that sounds like a good thing to do

tantek: so that's basically a requirement for a user story

eprodrom: so federation is server to server level, so I assume it has more to do with server protocol than about user interaction
... so we already have what we need?

tantek: as part of our charter, webmention was part of our protocol, same as we accepted as2 as a draft, so proceeding a similar track as as2
... there's no sense of exclusivity for sure
... but I understand there's a concern about the amount of time on it

eprodrom: so I'd just like to hear what our plan is from the next few months
... are we choosing webmention immediately?

tantek: I didn't hear that,

eprodrom: so we're going to look at alternative systems?
... I propose we talk about how we're going to do this
... I suggest you add that

tantek: that sounds more process oriented than tech oriented


<bengo> It would be interesting to resolve finalizing reader/writer Social API stories above federation, which could just be standardizing processing rules for that API

sandro: that's what we're talking about now?

tantek: no this was 5 minutes to express concerns

eprodrom: will add to proposed admin items

tantek: based on concern over how much time, let me ask aaron how much time we need

<bengo> e.g. decouple delivery/notification rules of ActivityPump from describing POST /outbox and expected semantics/errors

tantek: how much time do you actually want?

<Loqi> Aaronpk made 1 edit to Socialwg

<Loqi> Eprodrom made 1 edit to Socialwg/2015-12-01

aaronpk: I have a couple issues I want feedback on
... I also want to clarify process stuff about webmention spec

tantek: how much total time do you want

aaronpk: I imagine an hour is fine

tantek: any objection to slotting an hour time?

sandro: that's fine

tantek: let's timebox yours to an hour. is that okay eprodrom ?

eprodrom: sounds great

<jasnell> btw, given that I have a 3.5 hour drive home, I'd like to try to get on the road home a bit early today, if at all possible, I'd like to see if we could handle the remaining AS2 issues a bit earlier in the agenda

sandro: let's do demo after break (vga cable had arrived)

discuss Webmention to take it to First Public Working Draft

aaronpk: a lot of people read over webmention doc, lots of issues filed, lots of good discussion
... trying to work before this meeting
... before we do that, I wanted to clarify the place the spec lives etc

<kevinmarks> when is break? I added a demo suggestion to the items

aaronpk: after last call I made for issues only

<tantek> kevinmarks, we'll take a break at 10:50

<Loqi> I added a countdown for 12/2 10:50am (#5772)

<kevinmarks> OK, I'll be there by then

aaronpk: my proposal is to move from w3c issues to my personal account on github, so it follows same protocol as activitystreams (under jame's account) so there's no confusion over who's the admin of ther epo


aaronpk: I'll have to do the work of moving the actual spec contents to respec format, I'm planning on doing that on github because that's an easy way to manage source code, so that's then the source of the document using the normal workflow, and if I have trouble I can ask james

<kevinmarks> if you want to schedule a few minutes for a webmention micropub demo

sandro: so if you move the repo

aaronpk: all the issues will stay
... I don't want to fragment the convo too much
... that also means the indiewebcamp wiki, which is where the spec is canonical right now, will have to figure out how to deal with that
... if we write that in the github html source, have to figure out how to move to the indieweb (?)
... I think that's outside the scope of this group though, I mostly wanted to make sure the described worklow makes sense
... since AS2 does that too
... happy to make chairs admin on the repo

tantek: I'm not hearing objections to use same workflow as AS2
... I think we can accept it if no concerns

jasnell: no concerns, I think having it with full chair access helps
... that's something you might want to consider, with full rights
... having someone else there with same permission level helps balance that it's not just you
... that's my recommendation

tantek: that cover yer spec process issues/


aaronpk: yes it does
... let's get onto the guts of it then


aaronpk: this has always been a vague par to fthe spec, verifying that source links back to the target
... in the land of html, it's easy to do that
... but if we're talking about other types of source docukments, need to see if it needs to be spelled out more explicitly
... that doc links to another doc
... if that's clear by content type, then it doesn't need to be

sandro: I think it's not well spelled out
... my instinct is there's motivation to spell it out but as I commented
... if there's a way to do webmentions, a blog system that does webmentions, to know if it's conformatnt to the spec, have to define what is a link that does webmention?
... if I have a piece of software with a webmention endpoint, then we should agree on what counts as passing verification

aaronpk: right, first step of processing webmention is to see what's in it

<Loqi> Kmarks2 made 1 edit to Socialwg/2015-12-01

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

sandro: first exmaple is relative URIs
... eg, "is this string in there, the url doesn't appear there, but it's absolutely specified"

aaronpk: ok so we don't need to discuss the actual contents right now, but worht specifying...?

tantek: is it reasonable to say you raise issues as helpful...?

sandro: you get my point it's not just about verificaiton, but aloso when do you send the webmention

aaronpk: ok
... yeah
... 17 is a similar one

bengo: webmention does seem useful as a way of doing an "FYI" standard
... I kind of agree that it's possible to recommend specifying algorithms
... webmention as FYI in a timely manner, that's separate from specifics

<kevinmarks> is the verification part going to be normative?

<kevinmarks> or suggested

bengo: there seems like a way to separate FYI from each content type

sandro: for instance in json-ld to find out if there's links or not you have to do full expansion

tantek: similar for html parsing algorithm you have to do media type parsing

sandro: I don't know the right answer but conceptually here's webmention on this matrix, and here's webmention for each other possible media type

tantek: perhaps the general approach that sandro / bengo 's mentioning is apply webmention FYI, but if per media type processing to do, write an example for each media type
... then add after that and say, for other media types, handle their processing model for each term
... as bengo said for each media type it's worth processsing

sandro: maybe spec says it can apply to each terms
... but conformance is weird maybe
... so it's a sender/receiver for different types

<kevinmarks> what do we mean by 'each media type' - would we process a QR code?

bengo: but even ?? ships
... if it's already should, it's specific about each type


aaronpk: that brings me to something related, which is 18 from wilkie
... I think gist of this is that is there a way the spec can limit the amount of work receiver has to do

wilkie: yep


aaronpk: because anyone having to verify document, can link a document, which could even be a 1gb document...

wilkie: I'm looking for some bullet points saying "this could happen, here's how to avoid some obvious/easy ways to get hut"

sandro: for example, never bother to fetch more than a megabyte

aaronpk: so this seems not part of the algorithm, but

tantek: it's a MUST vs SHOULD

sandro: alternatively you could say it's only defined for the first megabyte
... another technical solution is you could say include range

someone: *trollish laughter*

aaronpk: I'll try to find some way to avoid falling into a pit of processing

tantek: maybe send two megabytes and see what happens

sandro: many redirects is another thing

wilkie: if anyone wants to give permission to have their webmention endpoint to be possibly broken

sandro: so another way to put it, do I have the legal authority to post whatever I want to an endpoint?

tantek: for a lot of these things you can see if there's prior art in pingback or etc
... it's very mature

sandro: it's also discarded

tantek: unmaintained

sandro: who should review webmention? particularly, what ietf groups might get upset, so we can approach in the appropriate way
... the kind of people who will say "this is crazy, you can't do this"

<ben_thatmustbeme> totally confused myself on start time

sandro: they look at pingback and say nobody should do this, we'd like them to have them say "oh this is (good?)"

aaronpk: (what to display after you receive a pingback) was left out of pingback

sandro: jasnell you have some experience with the http working group right?
... if we could have them not hate it that'd be nice

jasnell: we could float it, experience has been mixed

wseltzer: if it's something you want brought to ietf apps-area discussion that's the right place to raise an issue for people to review

tantek: maybe consider that for draft advancement

jasnell: the apps working group might... hm.... might be a more appropriate venue. But I think it could rabbithole very quickly...
... nneither is ideal, but of the two, apps might be it

sandro: we could find liason types

jasnell: I'm very familiar with both groups so I can do that....

tantek: is there an appropriate maturity schedule needed to do that review?
... need is before CR? I'm sensing there's an opinoin that having review soner could be helpful?

sandro: related thing is, how this is framed/scoped as... is it for everything on the web?
... it's grown out of the social use cases, but you could mention things that grew out of social or not social
... do we want to say we don't care about some of those others? i don't know the righ answer
... it's simple/elegant enough it might be able to, but we might see it hits other issues....

jasnell: that's a common problem for apps group, scope bloat

tantek: sounds like you're asking for a scope section

sandro: I'm... not sure scope section will help.
... quesiton back here is does anyone have interest in selling it more broadly? or are we too concerned about feedback?

aaronpk: within the realm of social web stuff, I don't know if it's appropriate for other uses stuff

sandro: one relatively harmless way to do it might be to have a w3c staff technical ...?
... any group can say we'd love w3c staff to look at it but
... could be kinda interesting

tantek: best before or after first working draft?

sandro: probalby after
... I don't think there's much risk

<Zakim> wseltzer, you wanted to comment on security review

wseltzer: another productive avenue of review could be in security, and how will this actually worked when deployed at scale across a variety of malicious mentioners and mentioneees
... what could one feed to someone else's verifier to have it blow up etc?
... we have Privacy IG and Security IG that WG can invite at any time to review

bengo: just thought, should it respec the robots.txt for ...?

aaronpk: whether to respect robots.txt ...

sandro: robots.txt is about crawling


<kevinmarks> No-one is on reception, can someone let me in?

aaronpk: this one is issue #9

<kevinmarks> Never mind

aaronpk: issue #9 is about talking about parmeter name, source, target, and fact that they aren't actually URIs
... I don't... things seem to be working just fine as strings
... is there some way to get around this the way the json-ld workaround to wokr

bengo: I got the author to agree later to language they would do

melvin would resolve "we can convert this to semantics"

sandro: we should pick a namespace

bengo: not actually the protocol that needs to change


aaronpk: if not pingback what's the proper name

tantek: namespace for what?

aaronpk: for the terms source, targget

sandro: they're link relations from webmention...

aaronpk: so string source is not a fully qualified uri

rhiaro: same as AS2, default namespace

sandro: I don't think it really matters, but it doesn't hurt to give a default namespace

tantek: I recommend you follow up with jasnell


<ben_thatmustbeme> presumably we don't actually need to send that namespace correct?

bengo: needs a version ;)

<ben_thatmustbeme> or rather the context?

tantek: now you're borderline trolling ;)

<rhiaro> ben_thatmustbeme: right

<sandro> right, ben_thatmustbeme

<rhiaro> just for receivers if they want to add it upon receipt


<elf-pavlik> webmention seems to represent a link, how about using terms from as:Link ?

aaronpk: let's talk about issue 13

<jasnell> fwiw, I've actually been playing around with an experimental draft for processing form data into json-ld

aaronpk: right now every implementation afaik assumes only one webmention endpoint
... and only pings that one

<kevinmarks_> mine doesn't

aaronpk: maybe correct anser is use first one you bump into

tantek: but there's implementation agreement?

kevinmarks: mine doesn't do that, it pings all
... did it in response to tantek's comment

aaronpk: but when you discover a webmention endpoint do you discover one

kevinmarks: no it does as many as it can
... an experiment, but useful use case is when transitioning from one endpoint to another

tantek: do you feel strongly about that enuf to make that a should

kevinmarks: you may want to ping more than one

<ben_thatmustbeme> are we bothering with queue?

kevinmarks: the one I gbuilt stores entirely in ???

aaronpk: my inclination is if you see value in multiple webmention pings, you can't acutlaly guarantee sending it to all of them, so you're better off sending to one

<ben_thatmustbeme> nevermind, aaronpk basically said what i was going to

aaronpk: the most reliable way is to have single webmention endpoint
... that's the only way to guarantee they all get the webmention

kevinmarks: the other thing is to potentially handle webmentions for ones who haven't installed it yet
... it's slightly off, but you could imagine a webmention sender automatically pings webmention services in case they have it there

aaronpk: kind of like pinging

kevinmarks: potential utility in queueing, but not sure it's core enough to try to get everyone else to do it too

aaronpk: another risk that having senders send multiples, you might potentially send thousands
... kind of tempted to limit to just one first
... good things to document

kevinmarks: if we do adopt the well-known approach to finding it, we do have the posssibility of doing ...(?)
... we may want to discuss about related things

tantek: there's order already for discovery
... sounds like you're close to proposed resolution

aaronpk: I think so
... so, you MUST ping first on you find, then document reasons for not require multiple

tantek: implementation guidance?

aaronpk: yes

sandro: I hadn't thought of well-known, I'd like to have it at end, but it woudl be nice to never have to do discovery again

tantek: the stableness of well known is well known
... google kept breaking it

sandro: they weren't updating their well known?

tantek: correct
... so if the large corporation handling large centralized place, yeah they oculdn't
... if google can't get it right, then

kevinmarks: not everyone there knew about well known

tantek: that's a data point


aaronpk: so this is an interesitng one, it basically shows whether webmention payload should be allowed to have other content types

it's basically url source and target

aaronpk: it kind of looks like a minimal activity, where there's an id and an object
... what if you want to send activity as a paylod
... now it looks like federation protocol sending activities around
... interesting idea, quickly growing out of scope
... quickly growing into its own protocol with its own security concerns and etc
... it's potentially an even biger rabbithole


kevinmarks: that makes sense

aaronpk: easy one


aaronpk: last one: issue #1 about property parameter
... don't bother reading whole thread... several months ago ?? gave source and target
... basically switched to rel, where to find the link
... if in-reply-to on page, what do you parse to get key in-reply-to(??)
... if my webmention payload contains rel="in-reply-to" you don't need to look at all links on pag




aaronpk: thing that got me to really understand what this is about is to include rel parameter page may mean multiple things
... one is in-reply-to and one is ??-of
... one means reply one means like

<kevinmarks_> like-of

aaronpk: if you want to send two webmentions to that you could
... if you tell me where to look in the page I can look and then stop

sandro: in practice how do you do that

aaronpk: stop as in most peoples' code when they look beyond "what does this mean" they have "is it a bla, or a blah"

<kevinmarks_> I implemented this in

rhiaro: if it's json you can just look

<kevinmarks_> and it was very confusing

aaronpk: right in microformats world you can look
... look for one key you're looking at

kevinmarks: I implemented this and to see what it's like

rhiaro: the idea is you send whatever you want
... you send what's in the document. if they receive what you understand then it's up the target anyway
... if it's rdfa you send rdfa prop, of microformats you send a microformats propoperty

azaroth: seems like slipper slope towards oauth

aaronpk: couldn't you use a fragment on url as subject?

sandro: this seems like the perfect kind of at risk thing

rhiaro: that was my lsat point

aaronpk: I think if it goes in the spec it may be a suggestion
... they MAY prioritize that
... with assumption most implementations won't include

sandro: with assumption we might take it out of the spec later

aaronpk: that seems like a good path forward

<Zakim> ben_thatmustbeme, you wanted to discuss my concerns with it

ben_thatmustbeme: ok, so my concerns are that 1) especially with like-of it becomes possibly not even on that page

<bengo> verification is already not required

ben_thatmustbeme: so if they see like coming in and that's all they care about well
... then it becomes why not send comments as well
... it sends info about it instead of the actual stuff

tantek: do you have a counter-proposal?

ben_thatmustbeme: I queued up before marking at risk
... someone could send you the wrong type

rhiaro: you always run the risk without validation

<bengo> It all already says 'you cant trust the ping', you SHOULD verify it

<kevinmarks_> like me - I record it without valdiating it

rhiaro: someone can still process incoming webmention as a REPLY
... they could still violate the spec

aaronpk: seems like good reasons on both sides
... looking for feedback from implementers might be right way forward
... as an extension what does it look like? a type hinting extension?

<wilkie> I feel like in the context of the Social API that you would want to parse the entire page anyway. to pull out ALL comments and ALL likes that refer to you (with the same url) and represent them.

kevinmarks: yes and property is not a good description (??)
... for me that makes more of an extension

cwebber2: wilkie: you mean federation api right? :)

rhiaro: one suggestion in that thread is for those who don't care about semantic content you just send it ...?
... I think it would be useful to get more feedback from different perspectives

<ben_thatmustbeme> other issue with one proposed advantage of it is that it allows you to dismiss types you don't support, but thats just as premature as accepting likes without verifying them

tantek: I'm queed to talk about htat which is that we have more extensions already


<bengo> wilkie agree

tantek: that's Vouch

<wilkie> cwebber2: webmention would be the federation on top of the social syntax for servers that aren't known/trusted/discovered

tantek: it already has multiple implementions
... for those who see value in it, they have the burden of writing it up first
... rather than burdening you with trying to interpret their wishes
... if that's something the community wants to do in core well....
... I want to resist the default tendency to mark everything at risk, I was criticized for that, and I think it was a legit criticisms
... also a good way to get person proposing to think more formally

<azaroth> +1 to tantek

tantek: rather than getting you to distribute the work

rhiaro: it is written up, where does it go then

<rhiaro> It is already written up at

tantek: in a separate spec

rhiaro: so published where?

tantek: wherever person wants

rhiaro: it's already up

<kevinmarks_> it's currently written up at

tantek: give it a name, say its extension

rhiaro: I just dropeped a link

<ben_thatmustbeme> i wouldn't call that at all spec like. It generally explains it

tantek: doesn't look like a spec,, make a separate spec
... not just a bunch of thoughts

<ben_thatmustbeme> but what do you do with it if its not found? what do you do if it is given, also that page talks about making target optional

tantek: I think jasnell_ is resistant to add stuff to as2 core, that's not a bad pracrtice
... call for review

<ben_thatmustbeme> indeed, link to extensions in the spec +1

<Loqi> kevinmarks, we'll take a break

<Loqi> Countdown set by tantek on 12/2/15 at 9:52am

bengo: add a registyr?

tantek: specs are registries by default

<Zakim> tantek, you wanted to note we have at least one Webmention extension already, Vouch, with multiple interoperable implementations, seems like other additions should also start

sandro: if you're going to have extensions, what's the extension mechanism

<Zakim> sandro, you wanted to ask who runs the registry for webmention extension field names

sandro: it might be the IWC wiki, because htat seems to be the answer. I don't like it, but that's how it is
... I don't understand why there's an extension mechanism in there

tantek: ther'es no formal webmention, you can just do it

sandro: but there's no way to detect who's implementing extensions
... so if two people come along and use vouch with conflicting terms, there's no way to do it

azaroth: I believe that's issue 9 which we won't tlak about

<Zakim> azaroth, you wanted to discuss extensions and #9


sandro: converting to URIs is one way to solve this, having a registry is another

bengo: one way to do it is what does this support

sandro: we could add those to the link

bengo: configuration endpoint



tantek: we've had fewer than one extension per year, so I don't see any benefit for an abastract solution
... so far everyone knows about every extension

azaroth: so if everyone that we know

tantek: if million people implement webmention I'll be impressed

<jasnell_> one possible approach is to have the discovery mechanism to allow a site to declare a prefix for a particular base URI mapping... for instance, "xyz-" = "http://xyz.example#", then a parameter named "xyz-foo" would expand to "http://xyz.example#foo"

<ben_thatmustbeme> i think a registry of "extensions fields" and links to extension in IWC wiki would make a lot of sense

aaronpk: effectively for now, the spec becomes registry of extensions, around CR we can revisit
... I saved that one for last because I knew it would be tricky
... talk about it on the next calll

sandro: goal is for working draft?

tantek: do we want to say we have a certain a mount of time?

sandro: let's wait

aaronpk: I can get it by... I'm not james so I can't probably do it during the rest of the day
... I'll try to have it done by next telecon
... I probably won't have it done by next telecon

tantek: let's agenda to update and discuss at next telecon

<aaronpk> ACTION: aaronpk publish new editor's draft of webmention before next telcon [recorded in [[1]|]]]

<trackbot> Created ACTION-81 - Publish new editor's draft of webmention before next telcon [on Aaron Parecki - due 2015-12-09].

<tantek> any word from rene?

<tantek> reconvene at 11:05

<Loqi> I added a countdown for 12/2 11:05am (#5773)

<eprodrom> I sent Rene an email; let's see if it produces anything.

<tantek> thanks eprodrom

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

<kevinmarks_> if I webmention people from the logs, what happens?

<Loqi> reconvene

<Loqi> Countdown set by tantek on 12/2/15 at 10:57am

<rhiaro> scribenick: rhiaro

Activipy demo

<ben_thatmustbeme> for demos could we turn talky to projector?

<tantek> ActiviPy demo, showing a combination of ActivityStreams, Linked Data (through json-ld) and Microformats (through JF2) support - Chris Webber

<azaroth> ben_thatmustbeme: is that better?

<ben_thatmustbeme> thank you whoever that was :)

cwebber2: Activipy started off as a validator, then a generalised library for doing AS2 stuff

<ben_thatmustbeme> yes

<azaroth> :)

<ben_thatmustbeme> azaroth++

cwebber2: But expands out into a linked data representation, but as of this morning alos handles microformats (jf2)

<Loqi> azaroth has 10 karma

cwebber2: contains a full tutorial and documentation
... But I'll show you
... It has all the vocabularly loaded into it, including descriptions, making good use of our free software license
... So self documenting
... import library, call vocab.Person and it shows the description
... Can set values of properties for AS2 classes
... Can get json-ld version, but doesn't do expansion until it needs to
... Provides different ways of representing an activity
... Can feed in JSON itself, or use a more pythonic constructor
... In this one I'm creating a note, with a URI, setting all the properties
... It's composed of several python objects
... eg. has a person object
... so can expand out
... and can access individual properties
... and can acess object to get python representation
... all immutable, so change a value spits back a new version of the object
... so very efficient
... what's neat about this is... I can get types, and it gives you, but no json-ld expansion
... But the moment I do types_expanded, it does json-ld expansion
... Moving off the idea that theoretically it's just json until you need extensions
... So it already knows all the vocabulary
... Has all the objects, properties, short ids
... So what can you do with an environment?
... You want to do something with the stuff, and you might want to expand the vocabulary
... So what i did this morning is an environment for jf2

  • live demo woes*

scribe: the environment knows about all the classes available to it
... So I create a very specific jf2 object and set properties
... Can switch between python object and json
... and I can get a linked data representation of the jf2
... All I did was declaritively describe the vocabulary
... use the context taht ben wrote up
... and now it's composable with AS2

<kevinmarks_> this is very neat

scribe: You can mix and match with AS2 now, and other linked data
... But that's not all!
... One of the motivators was writing a validator that could extend to new vocabularies
... Python object inheritance model didn't work in the first place, because AS2 can have multiple types for objects
... We want to be able to do method dispatch. If you're assuming a python or java style inheritance model, methods get attached
... But we still might want eg. all collections to have certain methods available to them
... So Activipy includes a method dispatch system based on environments
... Uses the dumbest key value store possible. Serializes to key-value stor saved on disk. dbm
... Say you're doing an application that's streaming a bunch of objects and you know how you want to save them, maybe do functions on them, and save to database
... Now I've got a note that's an AS object, and we want to serialize it to our database
... this note has its own environment
... the environment is the dbm environment
... can now do method dispatch on it, with save
... So now I've saved it to the database
... now I can pull it out by id, which is URL of the note
... You can have different applications that share vocabluary, and hook up different methods depending on the application
... Really flexible, can fit changing vocab of application
... So you can do it with AS2 based stuff, embed jf2 inside the same thing, alongside as2, and expand to linked data
... Pretty cool!
... The jf2 support was literally checked in this morning
... All I had to do was add that vocabulary
... Looks almost like the other one
... You can compose it together with AS2
... The worlds are brought together

  • applause*

scribe: It's on pypy
... can install and use today
... 0.2 release - jf2 will be in next release
... It can pull in jf2 json that's json-ld encoded
... assuming that ben roberts' thing actually matches jf2 document, which isn't verified, it'll do the same thing
... Basically just json-ld with an implied context
... This is the implied context, that ben put together. Had to make one change
... as2 context fix, then just worked

tantek: code knows about implied context?

cwebber2: that's right
... in environment
... context uri is ben's uri, implied context being jf2 context uri


cwebber2: Previously had it hard coded to be AS2, two line change to give it any implied context
... So you can pass it
... 2 commits this morning

sandro: the architecturally correct thing to do is media types have implied context
... operating system maps file extensions to media types
... so it should be able to read file extensions to get implied context

tantek: if it has an explicit context it just works?

cwebber2: right
... either you have something set up so it goes to fetch it, or it alraedy knows about it
... I have it set up so it already has it, so never has to fetch from the web
... if you you pass it a url you already know about, it can use that

tantek: Any questions for chris?

<tantek> 10 min. demo of existing webmention+micropub federation using woodwind, known and other indie sites. Also webaction example Kevin Marks

kevin demos webmention and micropub federation

kevinmarks: This is woodwind, which is kylewm's feed reader
... I've subscribed to a bunch of sites and it gives me their posts
... If I click on a post, this little thing pops up which is a box, with three buttons - post, repost, like

tantek: this is in your reader?

kevinmarks: this is kyle's website, not mine
... If I put in a response, it sends a micropub post to my website
... Post appears on my site
... and sent a webmention to jeremy
... my site should have sent a webmention in response to getting a micropub request
... (it didn't, sending one manually)
... Back in reader, sending reply to kyle

  • live demo woes strike again*

scribe: Shows published on site, webmention appears on kyle's site
... kyle's site shows reply thread/context
... The other thing you can see in a few places
... If I look in safari at this page, you can see reply, retweet, favorite on jeremy's site (

<tantek> s/webintent/webaction

scribe: actually wrapped with web action
... so in chrome, with extension(?) his buttons are replaced with my buttons
... You can do it without a plugin
... But then the like goes to my site, instead of twitter
... directly from jeremy's site


scribe: THe point of this demo which is not working as well as I would like, is to show that we have multiple implementations of webmention receiving and micropub
... so it's possible to embed the posting ui on one site and have it post to another
... and have it federate back again

tantek: which is the part that's showing federation? so thats' on topic

kevinmarks: Depends on the definition of federation. My sense is that I'm reading something on one site, responding to it on another site, and having that information show up on the first site
... I'mr eading in one place, responding inline, which pings mine ,which pings his, so reply shows up there
... Mine doesn't show context, but there's a link back to what I'm replying to


kevinmarks: Webmention based commenting
... Different peopl ehave different versions of how much context they display

wilkie: how does it work? it gets a webmention...

kevinmarks: it gets a webmention. What it says here is... this is marked up with microformats in-reply-to classes

bengo: then kyle stores a copy of it

kevinmarks: *parses page into mf2 json*
... So you can see what's going on, shows all the properties
... So on his side he is parsing it, then storing the reply in a way that makes sense for him, to display
... You can send a webmention for a larger entity and you want to do more thinking about how you're going to extract the content, but for short notes it works quite well

wilkie: wondered if there's anything written explaining that

kevinmarks: there's discussion on the indieweb wiki on how to make sense of replies
... The general assumption is the easy thing is you can take the name
... The common type of a content type post is a h-entry, which will ahve a name

rhiaro: how to parse/mark up is deliberatley not in the webmention spec

<ben_thatmustbeme> jf2 version

<ben_thatmustbeme> :)

<cwebber2> ben_thatmustbeme: btw where should I submit a patch to your jf2 context?

bengo: rdfa or microformats explain how to parse/publish as options

<cwebber2> it totally worked minus one short thing

kevinmarks: so another one, here's my reply saying yes I'm coming to this event, which has an rsvp yes on it

<bengo> (or microdata)

<ben_thatmustbeme> cwebber2, in the next couple days i will be moving in to a more specific repo for the spec, but for now,

<wilkie> I suggested what I thought the process was: you get a webmention and pull down the source page and look for links to you (in-reply-to, like-of) and work backward to determine the context

<wilkie> I guess you can go backward until you find something you already know... to determine the conversation thread etc

kevinmarks: So aaron parses my reply and can show that I'm attending

<tantek> kevinmarks: shows federated RSVPs to an event

<ben_thatmustbeme> or more specifically

kevinmarks: The webmention part is - these two are linked in some way, try to make sense of them
... the like, repost, etc we've built separately
... Other rsvps on here are coming in from facebook via bridgy
... bridgy translates silo mentions into webmentions and sends you those

tantek: wrap up, thanks

<ben_thatmustbeme> kevinmarks++

<Loqi> kevinmarks has 185 karma

<ben_thatmustbeme> cwebber2++ for last demo

<Loqi> cwebber2 has 60 karma


<tantek> rhiaro++ for scribing

<eprodrom> scribenick: eprodrom

<Loqi> rhiaro has 190 karma

<tantek> cwebber2++ for scribing

<Loqi> cwebber2 has 61 karma

jasnell_: I'm happy to summarize rene's issues

<tantek> AS2 Extension questions/issues from Rene

jasnell_: He's opened a number of issues with new terms to add to the vocabulary
... based on the discussion on those proposals, Rene asked what is the principle between vocabulary and extensions
... Rene wants to have a documentation of those guidelines
... Conversation has been between Rene and myself
... I have said we should be conservative in expanding the vocabulary
... Default position is to reduce, not add new classes

<tantek> +1 on pull things out and simplify rather than add things new

jasnell_: Hopefully when Rene reads the minutes he can correct if necessary

<azaroth> (that :) )

<jasnell_> eprodrom: can we create a wiki page to document the current status ?

eprodrom: can we document scope for vocabulary?

<cwebber2> :)

tantek: This would be appropriate to discuss in the draft

jasnell_: are we in agreement on that position?

bengo: It sounds like our principle is don't add anything that doesn't meet that bar
... but what is that bar?

jasnell_: I'd like to leave that open

sandro: Do we have a registry for extensions?

<tantek> related:

sandro: if good extensions come up, we may add them to the next versions

jasnell_: I have a list of items removed from the spec already, which could go to an extension
... What is the process for registering extensions
... If it is a workgroup-managed thing, can we discuss the process?

sandro: We can keep a list of extensions personally, or by the group

jasnell_: I have a list of other extensions

sandro: Do you own domain?

jasnell_: No, Chris Messina has it
... but he will let us directly update it

bengo: A reasonable bar is approved user stories linked from the home page of the wiki


bengo: if any of those can't be described using the vocabulary, then that makes sense for an addition

jasnell_: in the list of proposals we have for adding vocabulary, we have 3 that might be worth discussing
... Evan suggested a Blog type

<Zakim> tantek, you wanted to discuss dropped terms, changes from AS1?

tantek: There's a section in the vocabulary about AS1 properties. Do you have any plans to include a section of changes, including dropped classes or properties?

jasnell_: Currently that table is not in the editor's draft to simplify
... Considering creating a separate document to show differences, how to deal with differences
... Still debating whether I'll have the time to write it

<rhiaro> scribenick: rhiaro

eprodrom: I wanted to talk about what sandro mentioned, having an extensions area that we may bring into the as2 vocabulary
... although it seems like a nice mechanism, wouldn't the namespacing effort make that not backwards compatible?
... if I had a geo store item that got widespread, it would not be identicaly to a store that ended up in our core

sandro: I suggest we keep namespaces intact, which suggests that either we use their namespaces or we suggest people use a w3c namespace for their extensions

jasnell: as I understand it, we're not creating a extension namespace that people add terms to, but people add their extension with their own namespace

eprodrom: I don't see pipeline of get a popular extension and that moves on to be in core
... That doesn't seem important to me, but don't want to extend that as a possibility if it is hard to do

sandro: say in our doc if you think this extension is going to be popular and might be in future version, use a namespace that is going to b epersistant

<eprodrom> scribenick: eprodrom

jasnell_: we can have the registry have its own context document

<azaroth> +1 to jasnell

jasnell_: if an extension becomes popular enough, the registry context can import it
... There could be a curated list
... It gives us an ability to promote popular extensions consistently

sandro: if that's true, it should be a curated list by the WG or a CG

<Zakim> sandro, you wanted to suggest the bar for inclusion is 2+ independent implementations

sandro: if there are 2 implementations of a particular term, it should be included

<Zakim> azaroth, you wanted to respond to sandro to suggest 2+ _promises of_ implementations at this stage

sandro: or maybe a larger N

azaroth: If we have promises of implementations, then that makes more sense

sandro: if you're not going to write it, then that doesn't give us a lot of security that it's worth doing

tantek: I'd say deployed, not written

bengo: What about stuff that was implemented in AS1?

tantek: implementation documentation for AS1 is poor
... implementation links are poor, broken

jasnell_: except for in-reply-to, all other extensions of AS1 are out of AS2
... most implementations of extensions of AS1 are not in AS2
... The registry has an implied context, then implementation can use terms from the extensions

sandro: Doesn't that suggest changing the media type?

kevinmarks_: As part of your implementation test, you'd need publishers and parsers

sandro: I'd set the bar at 2 publishers and 2 consumers

jasnell_: That's the bar for adding. For terms already in the vocabulary, we are getting the minimal level of interop for most common cases.
... Minimal stuff doesn't get pulled out if we're not going to use them

sandro: it'll get pulled out when we go to PR

jasnell_: Every term in there is optional

<Zakim> kevinmarks_, you wanted to distinguish publishing and parsing implementations

jasnell_: Implementers don't have to support them

kevinmarks_: If this is a bar for adding new things, then we should use the bar for deleting old things

jasnell_: we've already pulled things out like that
... if we think some terms might be useful, we can reserve them, saying we might use them in the future

<cwebber2> eprodrom: doesn't have the open farm game vocab ;)

<cwebber2> I guess we'll need an extension for that :)

ACTION eprodrom compare AS2 vocabulary with's use of AS1

<trackbot> Created ACTION-82 - Compare as2 vocabulary with's use of as1 [on Evan Prodromou - due 2015-12-09].

<cwebber2> (yeah it was an extension originally I know)

eprodrom: this document is useful

sandro: This is useful

jasnell_: We could do this in the wiki

<Zakim> tantek, you wanted to note at-risk vs pumpio

tantek: the first time we talked about what it would take to get AS2 to CR, I suggested we mark everything as at-risk
... Now, I think we should take stuff to at-risk that's not in

sandro: we need to review this in CR

<kevinmarks_> so would sending PR's to be useful for eg bengo to do for his implementation

kevinmarks_: can we get information from bengo on this? Can we send PRs?

sandro: How do we update this document?

bengo: We don't use a lot of different verbs

<kevinmarks_> is the repo

bengo: We do have an ongoing project to exercise more verbs

tantek: There's a proposed agenda item for discussing federation protocol
... 10-minute break

resume at 12:20

<Loqi> I added a countdown for 12/2 12:20pm (#5774)

<tantek> eprodrom++ for minuting!

<Loqi> eprodrom has 27 karma

<wilkie> how does loqi know what timezone we are in

<Loqi> resume

<Loqi> Countdown set by eprodrom on 12/2/15 at 12:10pm

<aaronpk> shh it's a secret

<rhiaro> loqi knows all

<wilkie> does Loqi understand what is on the agenda? is Loqi scared? is Loqi trying to be useful?

<jasnell_> Loqi is becoming self aware

<jasnell_> SkyLoqi

<wseltzer> scribenick: wseltzer

<tantek> Discuss process for Federation Protocol. --Evan

eprodrom: processes we've previously followed, esp for Social API
... review of non-standardized implementations
... about 20 APIs, a number of formats
... collected candidate specs and then reviewed
... we're trying to run in parallel or converge candidate specs for Social API
... similar for Social Syntax
... Is this also the process for Federation Protocol?

sandro: strawman proposal: don't distinguish between API and federation
... over past few months; activitypump, solid are both; Social Protocols doc is both
... not closing the door, but until we see a different proposal

eprodrom: saying we won't support unfederated social API?

aaronpk: my understanding was that while developing specs, we won't treat them as separata things, but that doesn't mean the result is combined

eprodrom: so one doc?

sandro: we have 3 stacks, keep thinking about them together
... Social Web Protocols doc -- perhaps reorg so API sections first, federation second

tantek: I heard, we've done a whole process for API, re-use that for fderation

cwebber2: most of the work on federation has already been considered, discussed in many conversations

<tantek> cwebber++ for Star Trek reference

<Loqi> cwebber has 5 karma

eprodrom: we haven't looked into details of what's required for federation space
... you can't use webmention for subscribing to remote feed
... so we haven't fully considered federation
... what does it mean to read a remote feed?
... thesse are reqts of what a federation protocol do, not nec reflected in usec ases for API

cwebber2: starting to break things into levels
... I think it's feasible to keep going that way

<kevinmarks_> the webmention bug on is fixed now

cwebber2: rather than saying federation stuff is off the table
... we're already making progress

tantek: I didn't hear eprodrom say federation is off the table
... but exisiting rqts not yet reflected

cwebber2: can we say that moving forward with API, editors are encouraged to keep working with federation?

eprodrom: that we mix up the 2 deliverables we're supposed to produce?
... We don't have rqts for federation protocol; we don't have significant analysis of what's out there
... I'm not trying to stop federation
... but asking for systematic analysis, not just byproduct of API wokr
... good protocol that people cna implement

sandro: Like you, I think federation is important; it would be interesting to analyze

<kevinmarks_> stop trying to make federation happen

sandro: also think each of the 3 stacks has already come up with a solution they think works
... we're all talking about federation; could probably do it better, but that sounds like R&D

eprodrom: we did analysis of API, syntaxes

aaronpk: have we used that?

tantek: for API we did
... AS we chose to move with because so much adoption already

<Zakim> tantek, you wanted to acknowledge Evan's concerns that we have not yet captured explicitly all the desired requirements for federation, and propose we come up with a way to collect

tantek: Existing federation solutions may not be solving all rqts Evan sees as necessary

<eprodrom> Review of social syntaxes


tantek: We did lots of reserach for API
... user stories, gathering, voting, etc. took lots of time
... I wouldn't want to repeat all for federation
... and yet we need method to address Evan's issues
... hope we could find some middle ground; some user stories illustrating federation

<kevinmarks_> 9nOuB7F.jpg

cwebber2: user stories designed to be topologically neutral

<kevinmarks_> sorry

cwebber2: Evan, what ground od we need to cover; how to use work already done?

eprodrom: List of requirements for federation:

<tantek> feedback on replies, hmm, sounds like Salmentions

eprodrom: e.g. @@ remote access to replies

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

<Loqi> Rhiaro made 1 edit to Socialwg/2015-12-01

eprodrom: comment remotely, remote interaction with local site
... which are in-scope, which out

cwebber2: I think everything you said is captiured in user stories

eprodrom: but not expressed as protocol requirements
... could we do minimal amount of work, eg. wiki approved in a telcon?

tantek: one possible way of turning rqts into something more concrete
... do you think we could come up with user stories to illustrate federation?
... assuming there are holes, what additional miminal user stories would we need to cover rqts?
... can you do the diff, and see what's missing from current user stories for federation?
... add the misssing stories?

cwebber2: I think I mostly understand it, there are propbablyu some holes in the understanding

eprodrom: I'm thinking we take a number of federation protocols to the public/w3c, and say "this is a federation protocol", they'll ask "what does that mean"
... we want to be able to say "here's what we considered; here's what we left out"

sandro: first reax, use cases cover them all
... each stack has a topology
... yet solid and indieweb have basic one-user-one-site

eprodrom: solid is everything mediated through the client

tantek: webmention demos going through proxies

cwebber2: strawman: take evan's concern that not everything has been addressed, and try to address
... ideally through user stories, or supplemental requirement, by a deadline

<melvster> Im not sure either statement is accurate: solid does not mandate one user one site, afaik, and the technology can be deployed on the server or the client, typically it's on the client to be user centric and offer more control, but that's not a must

cwebber2: discuss
... only if not already exposed by existing user stories

eprodrom: current user stories are topologically neutral.
... e.g. 2 players in a "following" scenario, harder in a federated situaiton

tantek: I think we're using "topoligcally netural" differently

<kevinmarks_> we have done SWAT0 with both all indieweb players and with a facebook player

cwebber2: we were saying, you should be able to take all these stories and assume users are on differnet servers, so must be federated

eprodrom: that igves different scope of work

tantek: provide lots of rqts for federation

cwebber2: so show that all the user stories, including gap-fillers, are met

tantek: if someone tags and responds, that's SWAT0
... following a person is approved user story

eprodrom: we need a remote follow

cwebber2: current user story covers, if you say diff servers


cwebber2: could formalize: you ahve to assume users are on different servers
... and b) give opprotunity to plug the gap
... [repeat]
... a) for your spec to qualify as federation...

<kevinmarks_> that one says "company social network"

eprodrom: does that mean we're soliciting new specs?

cwebber2: we're taking existing stacks

<kevinmarks_> which is not topologically neutral

cwebber2: unless there's a really good case for new

eprodrom: will we be adding new parts?

<tantek> approved user stories:

sandro: Protocols document has indieweb stack, etc

eprodrom: expanding from micropub to indieweb stack

cwebber2: are you happy with loose description of "indieweb stack" ?

tantek: I'd prefer to avoid that characterization

<ben_thatmustbeme> micropub was never a federation api, its social API isn't it?

<rhiaro> eprodrom:

<aaronpk> ben_thatmustbeme, yesterday cwebber asked if micropub could be used for federation

<aaronpk> that's the context of that comment

<ben_thatmustbeme> ah

cwebber2: more inclusivity; but not actively searching new approach

<bengo> "Federation with Microformats2"

<ben_thatmustbeme> okay, yead i read the logs on that

<kevinmarks_> well, there's syndication in micropub

cwebber2: proposal b) if gaps, opportunity to propose things not covered by existing user stories
... do those proposals get there?

eprodrom: why not take tiem to think it through?
... having already implemented 2 federation stacks, it's not an easy process, doesn't just fall out of user stories, so worth thinking through
... don;'t want to force on the group, but think hard about what uiser stories imply about server-server communication
... and requriements: discovery, identity,
... if we pursue each of 2.5 stacks is the best way to go forward, let's, but think abou tit

cwebber2: what' smissing?

eprodrom: looking at other federation stacks that have been tried before, user stories, come up with requirements for federation protocol.
... I think that's weeks, not months.


kevinmarks_: one possible approach is SWAT0 on indieweb, wehre we asked what do we need fore ach person in the graph
... mapping was informative
... we found a few new pieces we needed to implement
... how would you expand story into sequence of steps.

tantek: eprodrom has built many of these systems
... so I'm willing to believe that verything doesn't necessarily fall out of user stoires
... wilkie has built a lot too

<Zakim> tantek, you wanted to discuss Evan's doesn't just fall out of user stories, looking at other federation stacks that have been tried before

bengo: can you add more of that knowledge to the not-existing stories

tantek: I agree we're missing pieces


tantek: but I don't think we need such thorough research as previously
... open the door for a few weeks
... ... additional user stories for federation holes is reasonable; good place to cite prior efforts
... e.g. in the past, this story was implemented by PQR
... implementations as background to user story

eprodrom: I thin that makes sense

<Zakim> cwebber, you wanted to turn conversation into real proposals

cwebber2: since I'm making three proposals, I should type them out

eprodrom: I suggest that we ack that we're unlikely to solicit other federaation protocol proposals
... besides activity pump, solid, indieweb cluster

<kevinmarks_> indieweb components?

eprodrom: pulling in lots of things there

<rhiaro> indiewebstuff

<tantek> (aside: indieweb has tended to use Webmention + Salmention + PuSH for Federation use-cases)

<kevinmarks_> not so much a stack as a jumble

eprodrom: we'll move forward with those, review other feed proposoals, review of user stories with critical eye ot federation

<tantek> kevinmarks, or building blocks

eprodrom: we probably won't implement federated search

<ben_thatmustbeme> was that wseltzer's phone?

eprodrom: idea that federation is "doing whatever social does on the web" is a long reach

<ben_thatmustbeme> oh, n/m that was on talky i think

eprodrom: so describe what we ned to do
... I'll take th lead

<sandro> +1 eprodrom taking the lead on writing the list of which features are in bounds and which are out of bounds

eprodrom: remote subsscribe, remote feedback, access to profilees
... and "this is what we're not trying to do" e.g. federated search
... so list, agree on telecon, and them move forward
... reasonable next step?

<kevinmarks_> as in

tantek: would you be open to be curator?

eprodrom: yes

sandro: I can't think of a user story
... each feature that's out of bounds needs a paragraph explaining why it's out of bounds

<cwebber2> ack that we are unlikely to solicit other protocols / the bar is very high; as a side effort do review of other federation protocols, consider user stories with critical eye to federation, being critical of inbound new requests for expanding scope of the group (Evan will take lead / be "curator")

cwebber: ^
... 1. we are unlikely to solicit other protocols / the bar is very high
... 2. as a side effort do

review of other federation protocols, consider user stories with critical eye to federation, being

critical of inbound new requests for expanding scope of the group (Evan will take lead

tantek: those sound like guiding principles

sandro: is pubsubhubbub part of the stack?

cwebber2: if indieweb stack does so

tantek: table that discussion

cwebber2: things we agreed at Boston meeting

<rhiaro> scribenick: rhiaro

<bengo> This page now exists and has some related work:

<Loqi> Bgoering made 3 edits to Socialwg/Federation/Requirements

cwebber2: Can turn these principles into actual proposals?

tantek: thought I heard that from evan, with modified suggestsion from myself and sandro

eprodrom: I'll see if I can do a proposal

<eprodrom> PROPOSED: Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel develop requirements from user stories and other federation protocol efforts

tantek: you're volunteering for that right?

eprodrom: yes

<cwebber2> social register machine

<eprodrom> PROPOSED: Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts

tantek: make that an open call fro requirements from the wg, and trust you to curate the input you receive
... and from sandro, any non-requirements you document with a paragraph explaining why

sandro: with bodies

<eprodrom> PROPOSED: Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements

<cwebber2> +1

tantek: how much time for call for reqs?

eprodrom: next month?
... next 4 telecons?

<sandro> +1

<wilkie> +1

<tantek_> +1

kevinmarks: will need more than a month

<tsyesika> +1

eprodrom: not a great month to get work done

<bengo> +1

<kevinmarks_> +1

<eprodrom> +1

<aaronpk> +1

RESOLUTION: Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements

<scribe> ACTION: eprodrom to Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements [recorded in [[2]|]]]

<trackbot> Created ACTION-83 - Continue developing federation aspects of existing candidate specs (activitypump, solid, micropub/indieweb building blocks) and in parallel evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements [on Evan Prodromou - due 2015-12-09].

  • adjourn for lunch*


<ben_thatmustbeme> @here, as I already have wget copies of all old socialWG minutes, would it be useful to put a page together for WG resolutions and what meetings they were in?

<aaronpk> oh yes we were just talking about this

<eprodrom> ben_thatmustbeme: that would be amazing

ben_thatmustbeme, aaronpk: was it azaroth who said he has a script for this already?

<melvster> I'd like to clarify one point. Solid is not bound to the one user one site policy. It would be essentially incapable of widespread adoption if it were, because it would be impossible for social nets like facebook, google, twitter, icloud etc. to adopt. If that's a limitation (actual or perceived) it should be looked at. But im not sure it is.

melvster: that discussion was rapid and could have been minuted in more detail. Thanks for the clarification for the minutes!

<melvster> And in practice Tim's profile is on with a bunch of other people, so in reality I think that's not the situation

melvster: I don't think anyone actually in the room thinks that, we know solid allows both multi user and single user

<melvster> ok cool

<Loqi> Eprodrom made 1 edit to Socialwg/Federation/Patterns

<melvster> the other part is about Solid being client side technology ... I can see why it gives that impression because most of the demos are client side apps ... but the same JS could actually live anywhere ... e.g. on a server running node, on a different server running node, in a desktop say electron app, or anywhere else ... when you want performance you'll probably use a server, when you want user control you'll probably use the the client ... in short, Solid

<melvster> is super flexible and probably covers the topologies of both of the other two stacks

<ben_thatmustbeme> huh, rhiaro, eprodrom, azaroth, it looks like there would be a lot of manual checking with that, but i'll throw a quick fetch of what i get in to the wiki, and we can work with it from there

<ben_thatmustbeme> just literally grepping all minutes for 'resolved:' (case insensative)

<eprodrom> melvster: sure

<aaronpk> ben_thatmustbeme: do you have a permalink associated with them that you can also add?

<ben_thatmustbeme> aaronpk: i'll have the link to the document, i don't have link to the specific lines

<eprodrom> But there are things like, if I post a note, the server would take care of distributing that note to all of my followers

<eprodrom> In SoLiD, that is up to the client

<eprodrom> Sorry, rhiaro just corrected me, there is server-to-server communication using WebSockets

<melvster> eprodrom: it's good that you raise that, it ties in to my previous point. When a user posts a note, it happens on the server. Now all that is specified (loosely) is that some javascript (or other language) will then act on that posting and then federate out to followers. In the case of systems with few followers you can 'get away' with that JS living on the client. In the case of larger user bases, it's probably going to mean the JS has to live very

<melvster> close to, or on the server (or server farms). So there is architectural flexibility much like 3 tier MVC programming vs fat clients. Solid allows both. Hope that makes sense!

<melvster> eprodrom: in practice, because solid is young, we've not dont much of this kind of stress testing, but we'd like to see more of it happen as the work progresses

<melvster> and yes solid can communicate via websocket and/or HTTP

<Loqi> Eprodrom made 1 edit to Socialwg/Federation/Patterns


<melvster> it strikes me that IWC is more the one user one site policy, AP is more the one site many users ... solid is either

<aaronpk> plenty of indieweb examples of multiple users per site in IWC, (*, *, etc)

<aaronpk> it's just that when they federate, they use the same protocol as they would if they were on different domains

<melvster> i should probably replace 'site' with 'origin'

<melvster> or in IWC case, 'homepage'?

<melvster> but we could probably not expect facebook to adopt the * policy for every user

<aaronpk> the IWC specs don't actually care about whether something is in a subfolder or not, a URL is a URL

<melvster> any examples of that in the wild?

<melvster> ie multiple users on the same origin?

<aaronpk> you can find some of those here

<ben_thatmustbeme> aaronpk, eprodrom

<ben_thatmustbeme> don't know where you want to link that

<aaronpk> ben_thatmustbeme++

<Loqi> ben_thatmustbeme has 125 karma

<ben_thatmustbeme> needs a lot of cleanup still

<ben_thatmustbeme> and i'm sure there are some missing

<aaronpk> lol "with unanimous silence, we've approved it"

<melvster> hmmm 'own your data is one of the principles of the IndieWeb and is an encouragement to always post content directly to your own domain'

<eprodrom> ben_thatmustbeme: really nice!

<eprodrom> ben_thatmustbeme: one thing is that URLs are being handled weirdly

<eprodrom> The full <a> is in there

<eprodrom> Rather than just the URL

<melvster> 'Examples of what doesn't count: You post some notes on your own site, and some notes directly to Twitter'

<ben_thatmustbeme> eprodrom: yeah, i know thats just a quick dump, there is certainly cleanup to do

<aaronpk> melvster, i'm not sure what point you are trying to make

<ben_thatmustbeme> and i've already found others

<bengo> ben_thatmustbeme is there a github repo to which I can make pull requests of ?

<eprodrom> ben_thatmustbeme: OK. Let me know when you're tired of re-dumping and I can edit by hand

<Loqi> Benthatmustbeme made 2 edits to Socialwg/resolutions

<wilkie> I can edit by hand

<eprodrom> ben_thatmustbeme: OK. Let me know when you're tired of re-dumping and I can edit manually

<inserted> scribenick: wseltzer

Agenda-bash, post-lunch

Arnaud1: jasnell wanted to talk activity streams, and he needs to leave
... how much can we discuss without overriding agenda

tantek: I relinquish my time in favor of AS2
... return with AOB if time

Arnaud1: more to talk about re API and federation protocol?

<ben_thatmustbeme> eprodrom, cleaned up more

Arnaud1: f2f meeting schedule
... github workflow
... so for the next hour, we can talk AS2
... Anything else not on the agenda?

<Loqi> Benthatmustbeme made 1 edit to Socialwg/resolutions

Arnaud1: hearing no additions, let's move forward
... Good progress yesterday closing AS issues, let's continue

Activity Streams Issues

Arnaud1: James, over to you

jasnell: most pressing issues: adding new things, or bringing back things that were removed
... about 3 we should discuss individually
... Propose we start with bulk issues
... If objection, pull it out of the list for discussion

<jasnell> Specific types of Offer? -

<jasnell> Account / accounts -

<jasnell> Assign activity (bring back) -

<jasnell> Confirm Activity (bring back) -

<jasnell> CheckOut / CheckIn activities -

<jasnell> Blob Types -

jasnell: as posted to irc ^
... 175, author activity. eprodrom wondered if we need specific kinds of offers


jasnell: I think we should drop offer
... I'm recommending we close all these
... Account. none of our use cases call for it
... Assign and Confirm previously removed from vocab for lack of broad interest
... Checkout, Checkin. source-control use case
... blob types, proposal was unclear, no justifying use-cases
... PROPOSED: close the set due to lack of action/justification

<tantek> +1

<aaronpk> +1

<jasnell> +1

<wilkie> +1

<bengo> +1

jasnell: all can be done as extension if someone wants
... to eprodrom, do you ahve specific types of offers?

eprodrom: in the example, URN product-offer
... examples should use core vocab if it exists, if not, are we covering schema of the verb

jasnell: we're only covering a bit of the idea

<azaroth> +1

jasnell: in general offer should be marked at-risk

eprodrom: that sounds ok to me

<cwebber2> +0

eprodrom: I'd rather put at-risk than define fully

<eprodrom> +1

jasnell: hearing no objectins, mark the above set closed.

RESOLUTION: mark the above set closed

RESOLUTION: mark the above set closed: 175, 235, 240, 256, 242, and 223


jasnell: Also recommend closing 208 without action
... proposal to revisit a fundamental design point in RDF
... since RDF is optional, nothing to do, close

PROPOSED: close 208

<tantek> +1

<cwebber2> +1

<jasnell> +1

<azaroth> +1 to closing rather than starting again

<eprodrom> +1

<wilkie> +1

<bengo> +1

<sandro> +1

<aaronpk> +1

Arnaud: Challenge, when we close issues when the person who raised it is not present in the discussion
... likely a bit of resentment at not being able to defend

jasnell: this issue has been on github for a while

Arnaud: At least I'd like the justification we agreed on to be recorded
... can we agree on the reason to close?

<ben_thatmustbeme> also, we have a system for that, object at next meeting before approval of minutes

jasnell: as I said, the RDF modeling is optional, non-normative

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

<Loqi> Sandro made 1 edit to Socialwg/2015-12-01

azaroth: it's a total recasting of the spec to say that things that are currently classes should be relationships

jasnell: it goes back and changes fundameental design

sandro: no justification given for reopening this previously settled issue

Arnaud: also, the issue lacks description of the rational for reopening

rhiaro: there's a bunch of dsicussion in github
... sounds as though it's going back to AS1, which was presumably changed for a reason

Arnaud: there's a link in the issue to a wiki page
... describing a model he thnks is better without xplaining the benefit

rhiaro: I think he's saying the benefit is types of properties we can reuse for direct relations

<azaroth> +1 to bengo

<bengo> wiki page proposes "If we have Follow, we need isFollowing and isFollowedBy relation"

<bengo> that's state, not atomic activities (like log objects)

<bengo> that may or may not still be true or guaranteed to have not been reversed

jasnell: while it could be better in some use cases, that's not drawn out, unclear they're core use cases

<bengo> state is harder than activity objects

<bengo> make scope had

<bengo> *hard

Arnaud: can we agree that we're not convinced possible benefits justify reengineering the data model at this point?

<sandro> yep

RESOLUTION: close issue 208

rhiaro: it could be reopened as an alternative

<bengo> updating a stateful social graph from activity objects out of scope of this syntax

sandro: it could be a straightforward transform

jasnell: next set of proposals


<sandro> (from RDF to RDF)

jasnell: 268 is one I'd like to see happen
... removing existing content object, flatten hierarchy, simplify vocab
... Content obj in vocab now is non-functional abstract
... duration could move up a layer, eliimnate layer of abstraction, simplify
... clarify use of dimensions
... overall, think it's an improvement.
... I have a current;y open pull request

PROPOSED: close the issue, dropping content objects

eprodrom: to make sure I understand issue, content is intermediate abstract type
... prperties used by it will be sent to object or used on clasees

<tantek> +1

eprodrom: since we dont' have range specified for CRUD verbs, no reason to maintain

jasnell: right
... only three properties. Height, width, duration
... height and width move to link
... dureation moves to object

<Zakim> azaroth, you wanted to clarify properties -not- on the subclasss

<eprodrom> +1

jasnell: duration not on link

<azaroth> +1

<aaronpk> +1

<eprodrom> +1

<wilkie> +1

<sandro> +1

<rhiaro> +1

Arnaud: please vote

<cwebber2> +1

<bengo> 0

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

RESOLUTION: close the issue, dropping content objects


jasnell: 157, opened by eprodrom
... do we need a blog object type to repreesent that common use case
... I'd like to propose either website or site
... currently have a "page" type
... site as same level of generality

eprodrom: motivation was that first example in core was using extension type for blog
... if it's such a good exmample, maybe it should be in vocab, or change example

<bengo> Site is in our domain:

eprodrom: I like change to use ordered collection, rather than blog, in example

<bengo> (as1)

eprodrom: as that's the only place "blog" is referenced

Arnaud: which do you prefer?

eprodrom: jasnell's pull request replaces "blog" with "ordered collection". that makes sense to me
... I prefer ordered collection.

PROPOSED: close 157, replacing example with ordered collection

tantek: collection vs ordered collection?

<azaroth> +1

jasnell: blogs tend to be ordered by date

<eprodrom> +1

jasnell: and it's just informative

<tantek> +1

<eprodrom> +1

<wilkie> +1

<jasnell> +1

<aaronpk> +1

<cwebber2> +1

Arnaud: everyone agrees?

RESOLUTION: close 157

Issue 251


jasnell: 251, language property
... background. JSON-LD has @language keyword
... that can be used within context
... to specify language of document
... or at value, to set for value
... according to W3C guidelines, every format should have way to specify language default for each item
... the only way we can do that is JSON-LD
... current spec says it's optional, since JSON-LD is optional
... propsal from Rob is to add language property
... challeng is that it's not compatible with JSON-LD

tantek: you can't just alias?

jasnell: no

<tantek> sounds like a bug in JSON-LD if it can't handle JSON documents that have a "language" property explicitly

jasnell: @Context processing requires a processing model

sandro: or "use this boilerplate text, put your language here"

tantek: why doesn't it play well?

sandro: JSON-LD has its own way to do language tagging, and this isn't it

azaroth: JSON-LD, all the string values are now lang-type
... thta doesn't mean you can use it with a web page

jasnell: when I have a JSON-LD doc that @context Lang=EN, every string will be expanded to a language-tagged string
... vs if we @@ the strings don't get tagged
... to some of the JSON-LD folks, it's recognized as a limitation of JSON-LD
... possibly to be addressed in new version, but not there yet
... so we could go with limited profile of JSON-LD, boilerplate text
... or we go with the language property, that was in the original version of AS2, that doesn't play well with JSON-LD
... JSON-LD implementers would have to do more work with language property

cwebber2: I understand @language doesnt' cover all the case we want
... within the scope of things it does do
... is it possible ot alias @language to Language

jasnell: no.
... JSON-LD algorithms will ignore Language except in very specific places

cwebber2: same for @vocab, @base

jasnell: yes

<Zakim> tantek, you wanted to note that we could add a 'language' property for JSON processors, and then add extra processing step for JSON-LD consumers to pay attention to the

jasnell: only ID and type can be aliased

tantek: inclusion of lang in HTML at a document level is at least 1/2 a disaster
... lang=en is meaningless in the wild because it
... is in templates
... if we need to specifry language, we should have a property
... if that requires extra work for JSON-LD processors, we should specify the extra work

jasnell: the extra work is not necssarily trivial

sandro: can you do @language in AS per-value?

jasnell: @@
... extension would ahve to define themselves

sandro: so issue is you read i18n guidelines as saying we need a whole-doc language tag?
... my sense is it does more damage than help, so we shouldn't do it

jasnell: we could take current lang defaul tout
... and dont add language property

<azaroth> JSON-LD Playground example of aliasing @language and @value:

jasnell: explicitly don't provide default language in the format

cwebber2: I think that's better

tantek: I agree

sandro: proactively go to i18n group with this question

<cwebber2> np

jasnell: there's one doc section with default language context. propose to remove that section
... and document the reasoning

tantek: anohter way to be proactive, is document, highlighting for specific i18n review
... at CR time

Arnaud: what's our position in the meantime

jasnell: in the interime
... remove the current text, close issue 251

PROPOSED: remove the current text, close issue 251

Arnaud: are you happy with that?

azaroth: yes

sandro: and get i18n review

jasnell: this has been messy for a while
... so I'm happy to see movement

<scribe> ACTION: Sandro to bring issue to i18n [recorded in [[3]|]]]

<trackbot> Created ACTION-84 - Bring issue to i18n [on Sandro Hawke - due 2015-12-09].

<jasnell> +1

<azaroth> +1

<sandro> +1

<cwebber2> +1

<wilkie> +1

<rhiaro> +1

note action-84, the "issue" is default language for whole document

<tantek> +1

<eprodrom> +1

Arnaud: seeing agreement

RESOLUTION: remove the current text, close issue 251

<scribe> scribenick: bengo


jasnell: one way we could deal with transience is expires
... without necessarily needing processing model specified
... value would be date and time at whcih it should be considered invalid. has come up a few times
... was'nt acted upon because no implementations needed it
... one way of dealing with this

azaroth: are there two implementations of this or promises to impl

jasnell: no

eprodrom: this seems like a informative, nonpresriptive way
... it's elegant way to handle
... this makes the most sense. dont see better alternative

cwebber2: transiency came up. in you have to leave tombstone behind

cwebber2: that way other things can still reference it

cwebber2: how can you verify subcomponents of message if they go away
... i had originally thoguht of dealing with this via source signatures, which are complex
... Expires is interesting but in a federated context it could create its own complexities
... if you make something and tell another system, but it's expired by then, the other system doesn't know if true or false

cwebber2: I'm not sure expires doesn't add more complexity unless thought through more.

<azaroth> +1 to extension and experimentation

cwebber2: use an extension it would be easier to take time to think through

cwebber2: Whether expires, signatures, something else. Leave this as an unsolved problem

sandro: on flip side, can't do as extension

Arnaud: yes you can

sandro: snapchat means expires and transiency is important enough to be Core

cwebber2: It's possible if activitypump processing rules require it
... (even if extension)
... might even be that we can't solve in this timeframe but do have to do in core eventually, but we should take our time
... Each server in federation has a decision to make on expiry

eprodrom: Please don't say signatures again (to cwebber2 )
... another form of transiency is very small or not that important of activities

eprodrom: IMing, turned left, turned right, big data stuff

eprodrom: expires coul dindicate "this isn't crucial"

cwebber2: ephemeral

Arnaud: Is anything like this in requirements?

Arnaud: that would necessitate 'expires'

cwebber2: idk but I've wanted to bring this up since Boston

Arnaud: ok just wanted to clarify

jasnell: Worth noting this isn't first time
... last time we said to pump
... long standing discussion but only recently do prominent silos impl

<Zakim> tantek, you wanted to note that transient *content* (part of a post) is a use-case seen more than just "whole posts", from IndieWeb research:

tantek: even if federation can't validate transient things, may still be useful

tantek: like parts of post could expire even if not full post

<cwebber2> reminding myself: can only come from same origin

tantek: In favor of dropping it

sandro: It's complicated, i get it. But so is rest of vocab. So what's the harm of putting it in
... gives us a first best effort at it if we let 'expires' in

sandro: whats the harm?

sandro: only harm is if it people interpret as more than it does

tantek: there is harm with every addition

<Zakim> cwebber, you wanted to discuss suggestion of ephemeral on create

sandro: it's hard to build a system wihtout this

cwebber2: There may be a way of doing this without time-based expiration.
... In IMing and Game stuff, you don't need a log of it all anyway. The server can just relay and give a UUID
... Could just have ephemeral flag instead of expiry date


cwebber2: there wouldn't be a permanent url

cwebber2: only for same-origin

jasnell: we can do something like that already

jasnell: we have other activities in core like Invite and Offer that have a lifecycle

scribe: there are alreayd use cases for this

<cwebber2> w+

jasnell: Offer may be at risk, but this could still be useful for Invite
... Not arguing for. Just sayign we can
... but if we add, should mark at risk
... Then in CR if it's not going to work out, we drop

Arnaud: that's reasonable way of moving forward. Draws attention from others

cwebber2: At risk is good

sandro: I'm now more in favor of not having it
... we need to solidify extensinos so it doesnt matter if in core

jasnell: Let's not decide to accept/reject yet. And see if there's a better solution


jasnell: we should consider a few more
... Is there anything else bad in spec to be forwards compatible? e.g. lists of lists

sandro: if they upgrade JSON-LD they'll have to be back compat anyway

jasnell: all open proposals are closed
... oops one more abuot lifecycles

sandro: we should make a community group that maintains a website that maintains all the terms/verbs/words

<Loqi> 4eXd_Q8B.jpg

sandro: Thing description status of that thing

Arnaud: how about wiki page?

jasnell: start as wiki, if difficult, then we can adjust and see if CG is necessary

sandro: CG needed (even if trivial) because it gets us a wiki

tantek: siloed wikis are W3 antipattern

sandro: but they can give out namespaces
... and that helps with extensions using a w3 namespace

tantek: What's wrong with custom elements convention of hyphens

sandro: Because that doesn't help with collissions

cwebber2: And we want JSON-LD expansion to work

tantek: ostensibly cusom elements have solved this

sandro: no x-header (??) are the real solution
... x-headers are widely acked as mistake i HTTP
... And in this case we have an easier solution than that
... (w3 namespace for extensions)

wseltzer: prefixes are bad pattern

tantek: only for some things

wseltzer: because they require revision later once the old prefix is standardized

tantek: As a trivial counterexample, border-radius in CSS

cwebber2: big db of past accrued activities would be really hard to re-name properties

<azaroth> +1 to cwebber2

cwebber2: We should avoid that if possible
... CG is reaosnable solution

sandro: Hard for even more reasons

eprodrom: One big apps to is schema at read
... and avoid db migrations
... *what big apps do

sandro: so whats wrong with CG?

jasnell: just whether the process overhead is worth it

sandro: Process overhead vs extension overhead

Arnaud: Who's signing up to do the reviews of proposed additions?

cwebber2: could just have wiki page of extensions with their own ns
... not curated by official group but at least the activities are preserving their contents

jasnell: Other way of not having it be a WG thing is to make a github project managing this
... PRs/issues accepted
... this doesn't need w3 tamp

cwebber2: I'm cool with that

sandro: CG overhead is 10min
... and github is compatible with that

jasnell: as long as overhead isn't too much and folks are willing to participate

sandro: same people as adminning a github repo

Arnaud: that's always the challenge. open wiki is open toa bbusers. Control requires personhours/effort

sandro: Should we let them use main namespace

bengo: no

<cwebber2> AS2 Pro namespace, I'm telling you!

jasnell: that could cause problems for implementations that build that into their namespace
... something can be in namespace without bieng in jsonld context

sandro: namespace just means they use it as imaginary prefix

jasnell: idk...

sandro: Let's analyze options later

Arnaud: What should we do?

eprodrom: Is this last one?

Arnaud: We said yesterday we would give folks two weeks to bring up issues so we have to wait now anyway

sandro: A more conventional way to do this would be to ask editor when they would like next review to happen
... then 1 week or so before next phase

tantek: publishing moratorium coming soon
... soon enough that changes just made are of sufficient enough value that we ought to publish WD with jasnell changes by... friday

sandro: And then aim to go to CR by early Jan

<wseltzer> [W3C publications moratorium 21 Dec-1 Jan]

tantek: yeah issue velocity has dropped but if it picks back up we wont go to CR
... it's great there is renewed interest and activity

jasnell: seems reasonable
... remaining issues are mostly editorial
... I think we're done

<tantek> PROPOSED: publish a new WD of AS2 drafts as of / by Friday.

<azaroth> +1

<jasnell> +1


<wilkie> +1

<cwebber2> +1

<rhiaro> +1

<eprodrom> +1

<kevinmarks_> +1

<sandro> +1

Arnaud: Let's shift gears

RESOLUTION: publish a new WD of AS2 drafts as of / by Friday.

15m break

<kevinmarks_> bye jessica

eprodrom: next up, resolve more issues in api and federatio protocl. next F2F schedule

<kevinmarks_> did we lose post type?

just made

<eprodrom> reconvene at 3:45

<tantek> kevinmarks: yes I reliquished my time and deferred to resolving AS2 Issues instead.

<snarfed> bengo: cool! any idea how you expect it to differ from , , , etc?

it depends on the former

and james told me to keep as separate

I just wanted a cli

<snarfed> ah ok

so i could

(curl "" | node index.js ) && echo "perfect"

scribe: it is not perfect

<snarfed> lol

sorry, not `node index`, `as2-validate`

which you can now `npm install -g as2-validate`

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

<aaronpk> scribenick: aaronpk

Open Issues for other drafts than AS2

eprodrom: let's talk about next f2f first then fill the rest of the time with issues

tantek: when I put that there it was an umbrella for peopel to put specific issues, but if nobody has a specific issue then that becomes a no-op

eprodrom: then what makes sense is to do the f2f planning, for people to take part of that time to identify issues they want to talk about, then we can have people propose them as they come up

rhiaro: we need to resolve something about github

eprodrom: okay yes

tantek: and i just added somethign about post-type-discovery

eprodrom: f2f, admin items, PTD, then extra issues

Next Face-to-Face meeting

sandro: MIT in the spring?

eprodrom: MIT in mid-march would be 4 months

sandro: spring break is march 21-ish
... i'm traveling and stuff so after march 28th is better

cwebber2: libre planet 2016 won't fit then (march 19-20)
... best for me would be after the stripe open source retreat
... ideally end of april or beginning of may

<rhiaro> libreplanet 19-20 March

tantek: i wanted to make the observation that w'eve been tremendously productive at f2f, more than at telcons, which is more than irc/github, more than email

<Zakim> tantek, you wanted to discuss productivity at f2fs

tantek: i feel like the time cost of the f2f pays off in the productivity and group morale that comes out of these f2f
... so i would advocate that we consider having 3 or 4 in 2016
... it's our last year of our charter and we'll be furiously trying to get through a lot

sandro: does that suggest doing it earlier like february?

tantek: early march, then another one in june maybe
... another data point is TPAC next year is mid september
... in Lisbon

<cwebber2> so the end of the stripe open source retreat is april 15 2016

<cwebber2> right after would also work for me

tantek: i'm going to be going there already, anyone else?
... september 19-23

<wseltzer> [TPAC 2016: ]

eprodrom: if we were going to do September TPAC, March MIT, could we do another in between?

aaronpk: Portland!

rhiaro: December would be like a party since we finished everything right?

eprodrom: most of us probably need around 8 weeks of planning time
... can we pick a time now for March?

cwebber2: could we do it right before libre planet?

eprodrom: march wed-thu 16-17?

tantek: then have friday the 18th off

<eprodrom> reserve 16-17 March 2016 F2F at MIT

tantek: if we like the idea of portland in june we can capture that as a general range and figure out details later
... open source bridge is June 21-24 in Porltand
... I don't be able to do the week before that

eprodrom: rough plan is March 16-17 at MIT and then late June in Portland, September in Lisbon, then December in San Francisco
... next steps?

sandro: how about we set up the page and start having people RSVP

clarify Github workflow

sandro: my sense is we had a culture clash between open source workflow vs w3c culture
... where someone makes a comment and we're obligated to formally address the comment

<Loqi> Tantekelik made 1 edit to Socialwg/2015-12-01

sandro: we don't have to necessarily make them happy, but we have to do our best to make sure they're aware we handled it fairly
... at a transition meeting we have to report how we handled those
... each one should end with a sense of closure
... so it's fine to close issues with a polite my sense is we reached a resolution here, if you don't agree, comment this way,
... we need to not stomp on people on github

eprodrom: we spoke yesterday about process a little about AS2, and we discussed editors have discretion to deal with issues, and if there is not a willingness to defer to the editor then we'd take it to a group proposal and resolution

sandro: so if that is communicated clearly to the commenter then that's fine
... the editor should post "i feel like this issues is closed, if you don't agree, say so and i will escalate it to hte working group"

eprodrom: we don't need fto vote on every issue, we've had some small issues fixing spelling mistakes etc

sandro: i've had luck where if you ask the person are you satisfied with my handling of the issue that makes people happy
... i'd be inclined to not mark it as closed
... what i feel would be the best is ask people do you feel satisfied with how this was handled, and if so can you close it by this date

rhiaro: ask them toclose it by a certain date
... so i queued to say we probably all agree, but we should write it down so that we can refer people to this later
... so that people who want to complain for the sake of complaing we can say you're wrong

kevinmarks_: if we're going to discuss the process, it would be good to constrain each issue to a single issue
... lets make sure to mention this in the process so we have a place to refer to that

sandro: one bit of advice we could say is if you think this might be a different issue, err on the side of more separate issues

rhiaro: so i wrote this on the agenda

<Zakim> rhiaro, you wanted to say Cooperating in creating new individual issues if multiple crop up in a single thread, and staying on topic. If a new thought occurs to you whilst writing

eprodrom: the only thing i disagree with is that i would like editors to be able to close minor issues
... would you mind copying this to a wiki page?
... throw that on a page and then we can have a quick proposal to accept that page

Arnaud: in my opinion it's the lack of proces that leads to this kind of thing, the idea that the problem should be addressed by playing with access rights is really wrong

sandro: i'd be inclined to leave the access control out of the proposal

tantek: there was an explicit request to clarify that

rhiaro: part of the problem was that who had the owner of the org was weird

sandro: if you see a violation of these then email chairs

<Zakim> tantek, you wanted to request: put burden/responsibility on those posting multi-issues to split them out to separate issues if they think the additional issues are worth being

tantek: when some of these multi-issue threads start happening, when the editor responds to the original issue, i'd like to make it explicitly clear that if there are tangential issues it's the burden/responsibility of the person who raised them to make them new issues

sandro: we talked also about labels in the titles like "blocking"

tantek: how about we not solve that until it's a problem

<Zakim> bengo, you wanted to talk about charter deliverables vs work items labels e.g. overloaded "Social API" and lack of "Federation Protocol" repo

<cwebber2> I added an item to the wiki as a possible thing to discuss, if we have extra time

bengo: I started an issue that got out of hand on webmention, but because some of the work items are related to the same thing but happening independently, it's tempting to jump in on a broader issue. especially as federation will start to be talked about, would it be beneficial to have topical repos separate from an individual spec so that there's a place for this converation
... at the very least i feel like there may be benefit to having a repo for federation protocol separate from actiivtypump so that there's a separate place

sandro: how about the social web protocols document

cwebber2: we also have the mailing list and telcons

tantek: irc is a good place to start


tantek: the issue ben is bringing up is that the github repos allow anyone on github to file an issue/comment, and if you're not a WG member or participant we say you cant' participate in the telcons and meetings, so there's a little asymmetry going on there. we should address what's the policy for if you're not a member of the WG
... if you're not a member then you're not obligated to the processes

sandro: i think we treat that as public comments

there are communication venues we have that don't require you're a WG member

rhiaro: how do we treat issues that are raised ont he public mailing list

cwebber2: sometimes an editor wants to do things in a specific place and then someone says i raised it in this other venu and you didn't respond
... i think we should cater to the editor's preferred communication medium

tantek: that's been accepted with a bunch of prior practice at w3c
... the spec has a "here's where you go to discuss it" section
... some peopel say github, some say email
... and we promise to respond to comments here
... if you send feedback elsewhere we don't guarantee a response

<eprodrom> PROPOSED: Accept as the github procedure for the Social WG

sandro: can we just please have it all on github instead of per document?

tantek: that seems to be the emerging trend

<Loqi> Rhiaro made 4 edits to Socialwg/github

<Loqi> Cwebber2 made 1 edit to Socialwg/2015-12-01

<Loqi> Tantekelik made 1 edit to Socialwg/github

<cwebber2> +1

<eprodrom> +1

<bengo> +1

sandro: on the first bullet i think editors should have the ability to close issues

<kevinmarks_> +1

tantek: one of the antipatterns we saw was that an editor closed an issue because the original topic was adddressed and then someone else reopened it because an unrelated topic in the thread was not addressed, do we have enough language here to address that?

<tantek> +1

<azaroth> +1


<rhiaro> +1

<sandro> +1

<wilkie> +1

RESOLUTION: Accept as the github procedure for the Social WG

Arnaud: this is something the whole WG should be made aware of, so we should make a point of going over this on the next telcon or something to make sure everyone is aware

here is the specific version at the point of this resolution:

sandro: i'll send an email right now

eprodrom: okay that leaves us with about 30 minutes
... how much bandwidth do we have for additional issues on other docs?

cwebber2: i also added a new item to the agenda
... we'd like to add myself as a co-editor of activitypump

tantek: sounds good to me

RESOLUTION: add cwebber as co-editor of activity pump

post type discovery


tantek: i feel pretty good about the state of the algorithm, it's been pretty stable for a while
... what i want to do is to make a call similar to the social web protocols document, if people know of any issues that would be a FPWD blocker, to file them by the next telcon
... with the intent that I will try to address those issues so that we can take it to FPWD, perhaps even to take both the protocols documetn and this at the same time
... i want to bring this up. it's come up several times as a piece that's useful for building things

sandro: i'm still confused about its role

rhiaro: it's useful to go for something where type is implied through properties (microformats) to something with specific types (activitystreams)
... so it's obviously useful, but is it like WG useful or just useful?

tantek: James said it's useful even outside of microforamts, because the type property in AS is optional, so if you want to build a system that is dependent on type, you could use it to fill in that type

rhiaro: but AS doesn't have implied types

tantek: AS still has photos and such

rhiaro: okay i just thought there weren't enough semantically relevant properties

<Loqi> Tantekelik made 1 edit to Socialwg/github

<Loqi> Sandro made 1 edit to Socialwg/github

tantek: type is optional, i don't know why, but it is. the purpose is to use this to determine type.

bengo: i think James said this sort of thing is useful, but the way it's written right now is too specific, i'l file an issue

rhiaro: maybe if we cangeneralize it that might help

tantek: feel free to open a vague issue and i'll see what i can do
... there are at least 2 implementations


tantek: kyle impleemnted it for his reader

<Zakim> aaronpk, you wanted to discuss relation with webmention

tantek: he used his implementation to present posts differently

<eprodrom> scribenick: eprodrom

aaronpk: PTD is also useful for Webmention
... I would like to reference it. When you receive a post, you can identify it.

tantek: potential future dependency



<aaronpk> scribenick: aaronpk

<tantek> PROPOSED: make any FPWD- issues on Post Type Discovery visible by next telecon 12/8

<eprodrom> +1

<wilkie> +1


<azaroth> +1

<rhiaro> +1

<kevinmarks_> +1

<bengo> 0

<sandro> -0 not comfortable with how it fits in, but not interested in raising an issue

<cwebber2> +1

RESOLUTION: make any FPWD- issues on Post Type Discovery visible by next telecon 12/8

eprodrom: i think that takes care of PTD
... that wraps us up except for closing additional issues

<tantek> sandro I filed for you - I hope that captures your question.

eprodrom: i for one would rather spend the next 10 minutes using my brain or somehow trying to revive it so i'm not sure trying to dig into additional issues is the best use of the next 10 minutes
... so i'd like to adjourn and see you in march

  • applause*

<eprodrom> trackbot, close meeting

<trackbot> Sorry, eprodrom, I don't understand 'trackbot, close meeting'. Please refer to <> for help.

<eprodrom> trackbot, end meeting

Summary of Action Items

[NEW] ACTION: aaronpk publish new editor's draft of webmention before next telcon [recorded in]
[NEW] ACTION: eprodrom to Continue developing federation aspects of existing candidate specs (ActivityPump, SoLiD, Micropub/IndieWeb building blocks) and in parallel Evan will curate requirements from user stories and other federation protocol efforts, with documented reasons for non-requirements [recorded in]
[NEW] ACTION: Sandro to bring issue to i18n [recorded in]