#sandro1. We clearly need an initial policy for adding terms to the namespace asap. The policy probably does need some waiting/comment period before anything going in which might have backward compatibility issues - eg anything used in a Mastodon release
#sandro2. Having something like as:locked sounds like it makes sense, but I think it probably ought to have a name that explains what it is, and isn't likely to mean anything else. in the context of 'activity streams' "locked" could mean a lot of different things. Maybe as:followersMustBeApproved or something like that?
#sandroIt's slightly odd / problematic modeling in RDF, because it kind of uses defaults. If it's missing, it mean false, I guess? RDF should generally be written so that missing triples are just unknowns, not something different.
#sandroI guess I'm lost on the meaning of 'locked' somewhere between the UI and the protocol. What different code paths happen when I click 'Follow' on a locked and unlocked account? In either case, a request goes to the to-be-followed user's server and at some point it replies...
#cwebber2in this case, it's more for a visual indicator than a promise
#cwebber2sandro: the maning "locked" here is borrowed from twitter
#cwebber2so I think that as:approvesFollowers is clearer
#sandroBut really the semantics are to indicate to the user that typically approval takes minutes/days and might not happen, vs will probably happen within milliseconds. But even with approvesFollowers=false, actually every follower has to be approved by the followed-user's server, and with it true, there might be a rule to approves you in milliseconds.
#sandro(I'm just poking at the edge-case semantics.)
#sandroOne *could* separate those, into slow-approval and conditional-approval.
#sandroMaybe the most pointed question is what happens when it's NOT marked approvesFollowers and yet still takes a long time and/or fails. Is it important the protocol/software wise this flag is ignored? it's only advise, not anything crisp.
#sandroas:manuallyApprovesFollowers : when TRUE, conveys that for this actor, follow requests are not usually automatically approved, but instead are examined by a person who may accept or reject the request eventually. Setting of FALSE conveys no information and may be ignored.
#cwebber2as long as we aren't seeing a 4am release I think it's okay to be bumped to tomorrow ;)
#sandroGoing back to the namespace question, the issue is how much notice do we need to give the world before giving away a little bit of the namespace like this. I feel much more comfortable giving away a term like as:manuallyApprovesFollowers than as:locked without extensive review, but I don't know how to quantify that.
#cwebber2sandro: I think probably the reason for your gutfeel there is as:locked is ambiguous and you can imagine a bunch of locking things whereas as:manuallyApprovesFollowers is very clear and unlikely to collide
#cwebber2but I don't think that means we should push for verbose properties as a lesson from that ;)
#sandroNo, just ones that are unlikely to be used to mean anything else. Properties no one else would want, as it were.
#sandrowhich mean they will tend to be long, I expect. When I first tried to make the URI scheme that became tag: I called it tann: because I didn't want it to be contested real-estate. At the time, in that process, that turned out not to be what mattered.
#sandro4. What linguistic style to use. The three current extensions are all over the map. Ideally they would all have examples, etc.
#cwebber25. should we have a versioned context that includes all these extensions? maybe it should actually be an AP versioned context, or alternately it could be https://www.w3.org/ns/activitystreams/v1 etc
#cwebber2something in activitystreams/v1 *context* will still point to activitystreams
#cwebber2the point here is to make sure you don't have the invalid signatures problem caused by append-only mutation
#sandroSpec says: Implementations producing Activity Streams 2.0 documents SHOULD include a @context property with a value that includes a reference to the normative Activity Streams 2.0 JSON-LD @context definition using the URL " https://www.w3.org/ns/activitystreams".
#sandrodoesn't need to be in /ns but I guess it might as well.
#sandroI think apache might be tricky with activitystreams being both a file and a directory. I guess I could do it with a RewriteRule. Or simpler: ns/activitystreams-context/v1.2
#sandrothe actual current sha256 is 8b8e384b31fef5b62e3a5ff6e408a8f7358cf1b4ce562da82baaca479e3b48aa. Remember that. :-)
#cwebber2sandro: I didn't want to assume that I was making a sha256 for a specific period in time
#sandroAnd the current revision is 1.8. (The w3c website is in CVS.) So, I could easily pull out 1.1 through 1.8 and put them by those names, and by the sha256 as ns/activitystreams-context.
#Loqi[cwebber] `https://www.w3.org/ns/activitystreams/` is likely to keep mutating in append-only fashion, and maybe this is just fine, since that doesn't preclude having a versioned one as well that's more specific.
One thing we discussed in #social is that may...
#sandrofound my script. But its conventions I would be putting them at activitystreams-history/rev_1.8
#sandroI think I like "-history" more than "-context", but I think v1.8 is better than rev_1.8 (as long as we're only doing numeric version tags, not words)
#Loqi[sandhawke] I've now implemented this so people can experiment:
https://www.w3.org/ns/activitystreams-history/
contains all (eight so far) versions of the jsonld version of the namespace document, with cache control max-age 1 year.
It's generated by a s...
cdchapman, jankusanagi_ and xmpp-social joined the channel
#Loqi[sandhawke] I've now implemented this so people can experiment:
https://www.w3.org/ns/activitystreams-history/
contains all (eight so far) versions of the jsonld version of the namespace document, with cache control max-age 1 year.
It's generated by a s...
#Gargronthat's good but i am still preempting stuff that's not there :D
#Gargronalso i see that i need to change my code to do manuallyApprovesFollowers
#cwebber2Gargron: heh :) yes, though if you have the pre-empted version with context terms that are not yet there, but are manually included by you in your @context alongside the context without them
#cwebber2Gargron: when the new context comes out with them, you can append that, and things will work great still