14:48:45 RRSAgent has joined #annotation 14:48:45 logging to http://www.w3.org/2015/05/13-annotation-irc 14:49:02 Present+ Rob_Sanderson 14:49:27 Regrets Frederick_Hirsch, Ray_Denenberg, Ben_De_Meester 14:52:25 Regrets+ Dave_Cramer 14:52:38 Regrets+ Bill_Kasdorf 14:54:14 Kyrce has joined #annotation 14:59:44 tbdinesh has joined #annotation 15:00:15 Present+ Ivan_Herman 15:00:36 paoloC has joined #annotation 15:01:11 Present+ Kyrce_Swenson 15:01:14 TimCole has joined #annotation 15:01:20 Present+ Matt_Haas 15:01:31 Present+ Tim_Cole 15:02:42 Present+ TB_Dinesh 15:02:55 Present+ Kyrce_Swenson 15:03:17 Present+ Doug_Schepers 15:03:22 Matt_Haas has joined #annotation 15:03:43 Present+ Paolo_Ciccarese 15:03:48 Present+ Janina_Sarol 15:03:59 Present+ Matt_Haas 15:04:27 Present+ TB_Dinesh 15:05:34 is anyone having problems joining the WebEx? 15:06:14 i cant hear anyone on my android webex app. no java on laptop 15:07:57 Stian joined 15:08:03 takeshi has joined #annotation 15:08:04 Present+ stain 15:08:12 Present+ Benjamin_Young 15:08:13 Present+ Stian_SoilandReyes 15:08:18 (is it wikinames?) 15:08:27 takeshi, can you hear us? 15:08:37 Present+ Stian_Soiland-Reyes 15:08:37 Present+ Takeshi_Kanai 15:08:41 No! 15:08:53 In the webex app, did you connect to the audio? 15:08:58 azaroth: you might have three of me then as I have a - in my surname.. :) 15:08:59 On the 'quick start' tab 15:09:07 takeshi, did you click on the "connect to audio" button? 15:09:13 there should be a button for connecting, either via the computer or dialing in 15:09:37 Yes, I clicked the button. 15:10:13 I'll scribe 15:10:36 just remind me of the names.. preferably using the Zakim queue! 15:10:49 davis_salisbury has joined #annotation 15:10:57 takeshi, maybe try starting it again? 15:11:03 present+ davis salisbury 15:11:32 scribe: stain 15:12:02 i know another Davis in Bnaglore 15:13:27 takeshi, still not able to connect? 15:13:40 scribenick: stain 15:14:13 takeshi, you clicked "Call using computer"? 15:14:29 RESOLUTION: Teleconference minutes from 6 May 2015 approved, see 15:14:29 http://www.w3.org/2015/05/06-annotation-minutes.html 15:15:04 TOPIC: Protocol: Authentication Requirements? 15:15:39 Agenda: https://lists.w3.org/Archives/Public/public-annotation/2015May/0029.html 15:16:21 For the protocol Requirements for authenticatoin and authorization. For model, look at annotation sets and ordering of list. 15:16:25 zakim: ^^ 15:16:41 zakim: On the use cases on which of the possible ways to ordering.. actually as the.. (?) 15:16:58 (sorry, I'm mixing up nicks with z) 15:16:59 takeshi_ has joined #annotation 15:17:46 azaroth: ..also any cross-over work with social networking group 15:18:12 TOPIC: Protocol: Authentication Requirements? 15:18:20 azaroth: how does authentication relate to the protocol? 15:18:40 azaroth: working on the protocol draft, there was no mention of authentication or authorization 15:19:00 azaroth: we would not want a protocol where anyone can mess with anyones annotation 15:19:12 azaroth: so we would need to address a&a 15:19:40 azaroth: discussion about the proposal (?), brainstorm, requirements, how it is in your own systems 15:19:54 azaroth: interactions between clients and server via (??) 15:20:09 azaroth: @paoloC - what are the Domeo requirements? 15:20:26 paoloC: We started some time ago with working with pharmaceutical companies, which have 3 requirements 15:20:32 paoloC: we integrated with LDAP for users/groups 15:20:35 paoloC: both needed 15:20:58 paoloC: step 1 was to include an API key, a low-level entry, to detect the client, and system just trusted client 15:21:03 paoloC: then moved to OAuth 15:21:19 paoloC: retrieve users through LDAP on server and client, and use OAuth for authentication 15:21:42 q+ 15:21:45 paoloC: the LDAP is just the way we retrieve the user.. the authentication layer is separate 15:21:52 ack TimCole 15:22:06 Zakim has joined #annotation 15:22:20 TimCole: Do we need a authentication protocol? Finding a way that the annotation are associated with a user. Not trying to get into how the user is determined 15:22:43 paoloC: there are two issues - the model is already including Who created the annotaion. 15:22:56 paoloC: so technically the OAuth should check the credential against the payload 15:23:04 paoloC: or the payload might not include author, this can be added by server 15:23:40 paoloC: obviously the annotatoin includes the author already, so the requirement could be light.. communication should happen through an authenticated layer and check annotation against it 15:23:55 paoloC: this works unless you allow users to send in annotatipns made by other people 15:24:12 paoloC: this might sound weird, but I might want to enter an annotation that is said by someone else 15:24:32 paoloC: so he is the Author, but I am adding the Annotation 15:24:40 (e.g. Creator vs. Author ?) 15:24:48 azaroth: so as a first step.. (?) 15:24:57 q+ 15:25:02 ack shepazu 15:25:02 yes, Stian, in fact I was using PAV for that 15:25:10 tbdinesh has joined #annotation 15:25:14 shepazu: another similar thing where there might be more than one person annotating under the same username 15:25:20 q? 15:25:21 shepazu: I don't think it's a huge deal 15:25:22 q+ 15:25:23 q+ 15:25:32 shepazu: who has logging credentials.. provenance can be different 15:25:42 ack stain 15:25:44 accounts vs people 15:25:52 scribenick: azaroth 15:26:08 q- 15:26:10 Stain: Have a lightweight requirement, hard to determine author vs annotator 15:26:19 ... permission schemes are hard and could be out of scope 15:26:27 ... rely on existing mechanisms, server specific 15:26:30 q? 15:26:31 +1 15:26:44 scribenick: stain 15:26:52 azaroth: could paoloC tell us more about the OAuth workflow? 15:27:28 paoloC: we use libraries that does OAuth, and then OAuth combines the API Key of the client and a secret key of the user, which generates a user key for the transaction.. this expires now and then so you have to handshake again 15:27:45 azaroth: right, that workflow of the key exchange 15:27:56 paoloC: that comes down to the technology used.. there is usually machinery for that 15:28:08 paoloC: all you need to do then is to match the key to the person 15:28:18 q+ 15:28:26 ack TimCole 15:28:30 paoloC: but if you have to implement OAuth yourself as a provider, then it's a bit more work! 15:28:53 TimCole: (?) reauthorization? Who is authorized to read an annotation vs. update or delete 15:28:58 q+ 15:29:02 s/reauthorization/read authorization/ 15:29:10 my apologies 15:29:29 TimCole: what do we need to add to the protocol to support that basic level of authorization? 15:29:52 TimCole: (?) 15:29:58 ack paoloC 15:29:59 Example of permissions (derived from Annotator) https://github.com/Annotopia/AtSmartStorage/wiki/Model-Permissions 15:30:28 paoloC: I think that's a good point.. when we start with Annotopia I looked at Annotator which says what is possible or not.. I added just one think 15:30:56 paoloC: in Annotator you can say Who can read it, update it, delete, admin it. Users and groups. In Domeo I also added Comment. 15:31:09 paoloC: if you think of cases where you do not want comments.. e.g. say CNN might shut down comments on a particular article 15:31:23 paoloC: and I wanted a similar feature.. you can read this annotation.. you can't edit or delete.. and you can't comment on it 15:31:27 q+ 15:31:34 paoloC: but of course in the open world assumption anyone could annotate it 15:32:17 paoloC: but you could refine this better.. the actual authentication technology is probably more temporal, OAuth is popular right now, but who knows in 5 years 15:32:17 ack shepazu 15:32:34 shepazu: another permission is to Share 15:32:41 shepazu: I'm not sure we mentioned that.. and what does it mean? 15:33:06 shepazu: If I Share it.. am I just republishing? Can I change something? Or can I just say what *I* say? 15:33:14 q? 15:33:16 shepazu: sharing is kind of quoting.. you might want to permit sharing without edit 15:33:17 q+ 15:33:23 share or embed? 15:33:32 that is related also to copyrights? 15:33:36 shepazu: I don't think this works too well for aggregation and confededatoin 15:33:39 shepazu: tumblr model 15:33:45 shepazu: you can put something someone else wrote onto your feewd 15:33:51 shepazu: twitter and retweets 15:33:55 shepazu: which is an important functionality 15:34:07 shepazu: sharing should be cross-service -- e.g. pinterest shared on twitter 15:34:12 shepazu: the provenance should be observed 15:34:15 q+ to distinguish license for reuse and authorization to modify in place 15:34:17 shepazu: we've not talked about this in depth 15:34:43 shepazu: if we have what paoloC said, the ability to say "You can't comment on this", first of all I disagree about that philosophically as a use-case 15:34:48 shepazu: but acknowledge there are some use-cases 15:35:02 shepazu: it troubles me.. but I don't think we should define that capability (?) 15:35:09 q? 15:35:13 shepazu: but in permission models there could be "Don't share this" 15:35:13 q+ 15:35:15 ack paoloC 15:35:31 paoloC: I think this is a good discussion.. technically when an annotation is public, you can read it 15:35:41 paoloC: as Benjamin was saying, if you can read it, sharing is automatic 15:35:53 paoloC: another thing is copyright.. who owns the copyright on sharing? Embedding? Other things? 15:36:07 paoloC: say Twitter, the model is simple, once you tweet, anyone can retweet it and embed it 15:36:26 paoloC: if the annotation keeps it all open, then .. Let's say an annotation is public, technically you can retrieve it 15:36:36 paoloC: if is available only to a group, but you share.. what does that mean then? 15:36:42 paoloC: is it then only available still to the same group? 15:36:50 paoloC: this gets complicated! 15:36:56 (Google+ syndrome!) 15:37:15 paoloC: another example is the Non Comment. That is why I was myself sceptical. 15:37:29 paoloC: In this environment, I would not want people to comment on it. Of course globally it can be broken. 15:37:37 paoloC: not sure how that would play out 15:37:38 q+ 15:37:41 ack azaroth 15:37:41 azaroth, you wanted to distinguish license for reuse and authorization to modify in place 15:37:56 azaroth: looking at what paoloC said.. at what (?) is this being used 15:38:01 azaroth: from authorization requirements 15:38:21 azaroth: (?) authorizatoin and permissions are keys.. and what can I do with this? Like a license. 15:38:34 azaroth: e.g. you can share, etc.. but you have to tell me 15:38:45 http://www.canyoucopyrightatweet.com/ 15:38:48 azaroth: this sounds distinct from permissions on the annotation 15:38:58 q? 15:39:03 ack stain 15:39:18 I am not sure 'copyright' is the right term 15:39:26 Stian: +1, can they be shared is more advisory. Part of the annotation description and model. 15:39:30 I am referring to for instance a CC model 15:39:43 ... Trying to model the sorts of things there is difficult. More like advisory in the open world. 15:39:53 q+ 15:40:01 ... Can't comment is definitely possible at an individual server level, e.g. you can't do this here 15:40:07 ack shepazu 15:40:15 q+ 15:40:40 shepazu: I think that summarized it well. The azaroth was right with license. Leave it for the most part of up to the sytem how it enforces the license or not. 15:40:41 +1 15:40:44 +1 15:40:44 shepazu: not a technological way 15:40:45 +1 15:40:54 +1 15:41:05 shepazu: on the other hand I feel like the protocol should explicitly say something about Sharing 15:41:10 shepazu: I think it should be one of the verbs 15:41:34 (stain:.. or is Sharing just a Meta-annotation?) 15:41:36 huge +1 for collaborating with Social on AS 2.0 for sharing 15:41:45 azaroth: (?) Social 15:41:53 q? 15:41:58 (audio from azaroth is very small-room-ish.. ) 15:41:58 ack Matt_Haas 15:42:01 +1 to collaborating with Social Media as well. 15:42:32 Matt_Haas: from an education public PoV this is important.. student and teacher. Ability for that dynamic. Role might not be right to describe Teacher and Student. 15:42:36 azaroth: Should collaborate with social web working group on the sharing aspect as closely related to the activity streams work 15:42:42 q? 15:42:44 ack TimCole 15:42:45 (thanks azaroth ) 15:42:52 q+ 15:43:04 TimCole: it sounds like what will happen is that the service is going to enforce a lot of these limits 15:43:11 TimCole: who can edit, update, delete 15:43:21 TimCole: what does the protocol need to do.. 15:43:42 q+ to discuss container vs annotation scoping 15:43:52 TimCole: can the protocol allow for the LDP Container to express "annotations who lives here are governed by this license, and this policy for reading, this for updating, etc" 15:44:11 TimCole: a container could say Bob and Doug is allowed to update, etc. 15:44:19 TimCole: and reuse according to CC-BY license 15:44:20 q- 15:44:37 azaroth: good point, TimCole 15:44:51 +1 TimCole 15:44:53 azaroth: distinction between permissions on containers, and on annotations and results 15:44:56 +1 TimCole 15:45:04 +1 15:45:22 +1 15:45:32 azaroth: if permission and authorizatoin was associated with containers, and all in that container were by that requirement.. would that be sufficient? Or should an individual annotatoin carry this? 15:45:41 q+ 15:45:44 azaroth: Benjamin has something along those lines (?) 15:45:47 ack bigbluehat 15:46:14 ack azaroth 15:46:15 azaroth, you wanted to discuss container vs annotation scoping 15:46:15 bigbluehat: we've been looking at container based access permissions the way the Annotator store annotations know, we do what paoloC mentioned earlier on the Annotatoin Package we send the Annotator 15:46:43 bigbluehat: the disadvantage for federation then is huge, as people need to read the access regulation and abide by the rule on the annotation 15:47:02 bigbluehat: if it's by box, then it's much easier to federate as you don't nee to check each annotation on the way out 15:47:15 bigbluehat: cleaner federation stories, containers can live all kinds of places and move around the web with the same content 15:47:31 bigbluehat: you could make things that took annotations out of one container and put it another to share it with another group 15:47:40 bigbluehat: and then get particular permission systems per container 15:47:40 q+ 15:48:05 paoloC: this is an interesting point, going down to implementation. We have it on the Annotation level 15:48:22 paoloC: but we use Annotation Set, and so what we really do is to check permission on the set level, e.g. the same about the container 15:48:31 paoloC: but in our system each container carry their own permissions 15:48:46 paoloC: specially if it contains multiple annotations with the same 15:48:57 paoloC: but I'm not sure about the real benefit otherwise.. philosophical point 15:49:03 q+ 15:49:21 paoloC: so every container will need to go with it.. permissions.. etc 15:49:34 ack tbdinesh 15:49:34 paoloC: if each annotation is shipped with the container, that is probably the way to go 15:49:42 q? 15:50:02 tbdinesh: what we do in the Sweep (?) case, every one that goes out.. (?) -- you can only see per container 15:50:08 tbdinesh: you can choose where your annotation gioes 15:50:15 ack stain 15:50:25 tbdinesh: (?) 15:50:50 Stain: For the annotopia case, keeping it on the container level is simpler, the container should enforce the permissions as its configured 15:50:50 s/Sweep/SweeT 15:50:58 ... makes things more complicated for the client 15:51:04 q? 15:51:19 stain: it is more complicated for the client if it is forced to figure out which permissions to set 15:51:22 Uskudarli has joined #annotation 15:51:41 azaroth: (?) We have an LDAP service where we use OAuth 15:51:52 azaroth: with the token to the client 15:52:21 azaroth: token to the annotation server (?) 15:52:31 s/(?)/each annotation is a message that is sent to the container and the its up to the container to merge or consider it as an edit of the earlier one. 15:52:31 azaroth: (?) We went for a single group with each container 15:52:45 azaroth: so anyone in that group can access and modify annotations in the container 15:52:57 azaroth: (?) 15:53:29 azaroth: so in case of the permissions on the container, if we agree that is the way to go.. then.. license can be associated with the container (?) 15:53:49 (my apologies, I can only hear the reverb of the room) 15:53:49 q? 15:54:18 azaroth: thanks for this discussion 15:54:24 TOPIC: Model: Ordering in Annotation Lists 15:54:26 no 15:54:54 azaroth: from this about the protocol.. what we should add.. license under which an annotation can be reused. 15:55:01 azaroth: we should enable on container-level initially 15:55:15 azaroth: permissions (??) 15:55:31 azaroth: we should work with Social Media WG on this 15:55:54 azaroth: OAuth pattern seems valuable to mention 15:56:10 +1 15:56:12 azaroth: is that summary reasonable? 15:56:12 +1 azaroth 15:56:13 q+ 15:56:19 ack paoloC 15:56:35 paoloC: so we are just settling on the Container that has to exist..? Is that what you are saying? 15:56:45 azaroth: so I heard that we should try to do it at container level first 15:57:11 azaroth: if we end up including it per annotation.... (?) each annotation has a container? 15:57:32 paoloC: as I was explaining Annotation Set earlier, I mentioned it can be used both as Grouping By Task, or by Grouping By Restrictions 15:57:37 paoloC: those can conflate.. and complicate 15:57:47 paoloC: I don't know how you would handle that in our container model 15:57:57 paoloC: e.g. 10 annotations in the same task with different permissions 15:58:15 paoloC: would that be two containers (task/permission)? One single? Then which annotatoin has which permission? 15:58:26 paoloC: working at container level.. if I understand.. can also be used to group annotations 15:58:28 +1 paoloC 15:58:32 q+ 15:58:50 azaroth: I would treat the Container as the Service to which the client would use 15:59:03 azaroth: there could be a separate annotation (?) that includes it in a task 15:59:29 paoloC: so we are asking if the model level or protocol level.. to ask to have 3 levels.. one container for Set, one for Permission.. and one for (?) 15:59:35 ack shepazu 15:59:42 paoloC: I understand it's easier to apply the permission, but it sounds to me more complicated 15:59:57 shepazu: could we model this as saying there could be a Container which is an Annotation of 1 16:00:12 shepazu: a container can contain Any Number of Annotations, e.g., 0, 1, 2, 1000 16:00:45 azaroth: shepazu that does make sense.. one container pr annotation 16:01:03 azaroth: do continue the discussion on the mailing list 16:01:10 azaroth: we do NOT meet next week 16:01:28 azaroth: regroup on 2015-05-27 16:01:45 azaroth: (?) serialization group 16:01:56 will you do the make-minutes-magic? 16:02:25 thanks Ivan! 16:02:26 thanks 16:02:29 rrsagent, draft minutes 16:02:29 I have made the request to generate http://www.w3.org/2015/05/13-annotation-minutes.html ivan 16:02:32 azaroth: next time.. perhaps not call from the toilet! :)) 16:03:12 hehe 16:03:28 It's an office but with very hard walls 16:04:18 rrsagent, bye 16:04:27 rrsagent, set log public 16:04:31 rrsagent, bye 16:04:31 I see no action items