08:17:42 RRSAgent has joined #poe 08:17:42 logging to http://www.w3.org/2017/05/18-poe-irc 08:17:44 RRSAgent, make logs public 08:17:44 Zakim has joined #poe 08:17:46 Zakim, this will be 08:17:46 I don't understand 'this will be', trackbot 08:17:47 Meeting: Permissions and Obligations Expression Working Group Teleconference 08:17:47 Date: 18 May 2017 08:17:59 RRSAgent, make logs public 08:18:09 present+ 08:18:17 Agenda: https://www.w3.org/2016/poe/wiki/Meetings:London2017 08:18:22 present+ 08:18:28 Chair: Renato/Ben 08:19:53 present+ 08:20:06 Hi guys - just trying to sort out wifi. Be with you soon. 08:22:02 Hope this helps: https://en.wikipedia.org/wiki/Wi-Fi 08:23:08 or this: http://www.dummies.com/computers/computer-networking/networking-components/configure-a-router/ 08:26:57 this will be a very peaceful f2f 08:27:32 Yes, technology ruins everything ;-) 08:29:04 phila has joined #poe 08:29:06 as long as they don't have to set up a beamer too.. :) 08:31:50 RRSAgent, make logs public 08:32:19 philA, who will dial-in ? 08:32:22 present+ Stuart, Victor, Michael, Dave, Ben, Phil, Linda_Burman 08:34:39 We should add "extraTable" to the ODRL vocabulary for future permissions ;-) 08:37:37 smyles has joined #poe 08:37:49 present+ 08:37:59 zakim, who is here 08:37:59 phila, you need to end that query with '?' 08:38:04 zakim, who is here? 08:38:04 Present: simonstey, renato, ivan, Stuart, Victor, Michael, Dave, Ben, Phil, Linda_Burman, extraChairs, smyles 08:38:06 On IRC I see smyles, phila, Zakim, RRSAgent, benws11111111112, renato, ivan, simonstey, trackbot 08:39:59 - extraChairs 08:40:12 zakim, who is here 08:40:12 renato, you need to end that query with '?' 08:40:28 zakim, who is here? 08:40:28 Present: simonstey, renato, ivan, Stuart, Victor, Michael, Dave, Ben, Phil, Linda_Burman, smyles 08:40:30 On IRC I see smyles, phila, Zakim, RRSAgent, benws11111111112, renato, ivan, simonstey, trackbot 08:40:33 davec has joined #poe 08:40:49 present+ 08:41:24 https://www.w3.org/2016/poe/wiki/Meetings:London2017 08:41:53 present+ 08:42:05 agenda: https://www.w3.org/2016/poe/wiki/Meetings:London2017 08:42:18 RRSAgent, draft minutes v2 08:42:18 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 08:43:11 michaelS has joined #poe 08:43:27 present+ 08:43:36 Linda has joined #POE 08:43:53 present+ 08:44:13 victor has joined #poe 08:44:15 present +victor 08:44:40 zakim, who is here? 08:44:40 Present: simonstey, renato, ivan, Stuart, Victor, Michael, Dave, Ben, Phil, Linda_Burman, smyles, davec, benws, michaelS, Linda 08:44:43 On IRC I see victor, Linda, michaelS, davec, smyles, phila, Zakim, RRSAgent, benws, renato, ivan, simonstey, trackbot 08:45:43 benws welcomes everyone to the london f2f + remote meeting and points to the agenda https://www.w3.org/2016/poe/wiki/Meetings:London2017 08:45:55 Topic: Requirements for an ODRL Processor 08:46:10 RRSAgent, draft minutes v2 08:46:10 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 08:46:31 q+ 08:46:32 renato what do we expect an odrl processor to do - expression, validation, enforcement? 08:46:57 renato this will determine what are the testing requirements 08:47:13 scribe: smyles 08:47:15 renato without specifying the nature of the odrl processor, we can't test it 08:47:18 scribeNick: smyles 08:47:28 +q 08:47:33 q- later 08:47:50 ack s 08:47:52 benws the authors of the formal semantics should be able to speak to the requirements 08:48:25 simon we need to clarify constraints in odrl - should an odrl processor do constraint checking? 08:48:52 simonstey we are in between - some constraints can be checked, others cannot be automatically evaluated 08:48:52 q+ 08:49:10 q+ to highlight https://w3c.github.io/poe/model/#dfn-odrl-processor 08:49:15 q+ 08:49:31 simonstey we should directly state - odrl processor must be able to check constraints (or decide not) 08:50:41 ok 08:50:54 s/ok// 08:50:57 simonstey constraints in odrl are currently a more concise version of the natural language expression. however, we have changed some constraints so that they could be automatically checked - e.g. current date or time 08:51:21 ack me 08:51:21 phila, you wanted to highlight https://w3c.github.io/poe/model/#dfn-odrl-processor 08:51:23 simonstey the question is should we fully follow that route - should odrl processor be able to evaluate constraints? 08:51:26 q+ 08:51:38 -> https://w3c.github.io/poe/model/#dfn-odrl-processor ODRL Processor 08:51:49 phila agress we should discuss what a processor should do. but we need to start with defining "what is an odrl processor?" 08:52:20 phila we have a definition "A system that provides services that creates, manipulates, and validates ODRL Policy expressions" 08:53:08 q- later 08:53:15 phila but we need to more fully specify the definition 08:53:36 michaelS exactly how should the processor be defined - is it a list of features? 08:53:54 phila yes, we should have a section in the document which lists all the things that a processor should do 08:53:56 q? 08:54:18 michaelS in the RightsML definition, yes we did believe that constraints should be evaluated 08:54:19 ack m 08:54:52 michaelS but the tricky thing in resolving constraints is interpreting the left operand. some are implicitly normative, others are explicitly non normative 08:55:32 michaelS we need to define the difference between normative and non normative more precisely 08:56:17 ack v 08:56:20 renato the normative and non-normative terms was based on the survey of current ODRL usage. if two or more uses were found a term was declared normative 08:56:24 http://delicias.dia.fi.upm.es/~vrodriguez/static/odrl/semantics1.pdf 08:56:37 q b 08:56:37 victor the editors of the formal semantics note met only once 08:56:40 q? 08:56:47 q+ 08:57:17 victor several possibilities were identified. SHACL was discussed, but maybe it doesn't cover everything? 08:57:35 victor should we require conversions between formats - XML, JSON, RDF? conclusion, no 08:57:53 victor should the processor validate profiles? also no 08:58:30 +q 08:58:42 victor other items were declared secondary. the main priority was to create a conformance validator 08:58:43 q+ 08:59:08 simonstey rules in the information model - you are able to check your policy conforms to the specification, e.g. via SHACL 08:59:31 simonstey odrl concepts all have shapes, which lets you confirm whether your policy conforms to the spec 08:59:59 q+ to distinguish between function and method 09:00:00 simonstey some constraints - e.g. absolute position - how can this be checked in a standardized way? 09:00:27 simonstey we as a working group must define how to automatically evaluate each constraint 09:00:48 simonstey some constraints are more straightforward, but many are too abstract to define in a standardized way 09:00:49 ack r 09:00:57 ack simonstey 09:01:17 renato it will be almost impossible to define constraint checking - too difficult to cover all cases 09:02:14 +q 09:02:18 renato we could validate that the expression is a valid ODRL policy, but it is out of scope to require that an ODRL processor can evaluate every constraint type 09:02:20 q? 09:02:27 ack benws 09:02:29 ack iv 09:02:46 q+ 09:02:52 ivan wondering whether it makes things too complicated to discuss "one" odrl processor 09:03:24 ivan there are several different type of task - saying they are all the same thing. perhaps it is better to discuss them using different names 09:03:55 ivan do we only have one odrl processor? no. we have a constraint processor (one kind) but several other kinds too 09:04:16 s/ivan /ivan: /g 09:04:21 ack me 09:04:21 phila, you wanted to distinguish between function and method 09:04:23 benws in the standard we should discuss a processor which validates that the processor is syntactically correct 09:04:44 phila agree that there should be a level beyond which we should not go 09:05:55 phila should an odrl processor as defined by the group check for conformance to the odrl standard? or do we say that an odrl processor requires valid odrl as an input 09:06:31 s/phila/phila:/g 09:07:21 q? 09:07:41 phila: an odrl processor does need to be able evaluate constraints - "is the sky blue?" "all of those things must be jpegs" - those are not things that can be specified within turtle or XML, therefore they must be evaluated via the processor 09:08:39 simonstey: constraint checking is integral - e.g. a duty is not fulfilled unless all of the constraints are satisfied 09:08:54 q+ 09:09:48 simonstey: for formal semantics - we could say "either a constraint evaluation result is either true or false". but i'm not sure if we need to help users more than that? 09:10:05 ack v 09:10:50 victor: we should have a numbered list of features that a processor must support. but are some features automatic and some are not? 09:11:23 ack s 09:11:31 q+ 09:11:37 ack r 09:11:42 phila: there are different types of constraints - some which can be evaluated automatically, but some not. and we need to prove that we have different machines that will provide the correct and consistent results 09:12:16 renato: we do talk about constraints in the spec. but currently not any further details on how to evaluate the constraints 09:12:30 CarolineB has joined #Poe 09:13:03 renato: should we have an odrl processor that validate syntax and something else (not called a "processor") which evaluates the constraints 09:13:06 Present+CarolineB 09:13:06 +1 to Renato 09:13:18 RRSAgent: 09:13:18 I'm logging. I don't understand '', phila. Try /msg RRSAgent help 09:13:29 RRSAgent, draft minutes v2 09:13:29 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 09:14:13 benws: is there room for a different part of the processor which says "given that the constraint is satisfied" (even if we don't say how) "then this permission is actionable" 09:14:34 s/^renato /renato: /g 09:14:41 RRSAgent, draft minutes v2 09:14:41 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 09:14:58 simonstey: we could say "if all of the constraints are satisfied then the action is actionable" 09:15:09 simonstey: we could say "if all of the constraints on a duty are satisfied then the action is actionable" 09:15:13 s/renato /renato: /g 09:15:21 RRSAgent, draft minutes v2 09:15:21 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 09:15:30 i can see an easy task to build an automated processor if "constraint validation" is a made as a "black box". 09:16:17 s/benws /benws: /g 09:16:34 benws: if a constraint (a left operand) was strongly defined in a profile to have a meaning within the context then we could evaluate the permission 09:16:40 s/simonstey /simonestey: /g 09:16:56 q+ 09:17:06 s/michaelS /michaelS: / 09:17:26 s/victor /victor: / 09:17:30 s/victor /victor: /g 09:17:33 benws: perhaps we should require that all profiles meet that definition standard - that they must be precisely defined within a context 09:17:33 s/michaelS /michaelS: /g 09:17:34 https://w3c.github.io/poe/vocab/#term-absoluteSpatialPosition 09:17:49 RRSAgent, draft minutes v2 09:17:49 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 09:17:56 q? 09:18:03 q+ 09:18:03 ack benws 09:18:05 q+ 09:18:11 simonstey: an example of a constraint which cannot be checked in a general way is absolute position 09:18:25 victor: points out that some constraints could be manually checked 09:19:02 http://w3c.github.io/poe/vocab/#term-absoluteTemporalPosition 09:19:10 michaelS: example - advertising clip has to be between 1 minute and 1.30 minute of a stream. how could this be checked by an ODRL processor? 09:19:12 ack m 09:19:43 michaelS: how well do some left operands work? such as count of usages? 09:19:51 q+ 09:20:24 benws: there is only so far we can go in machine readable representation 09:21:05 davec: many of these constraints are not edge cases 09:21:17 benws: agreed 09:21:33 ack r 09:21:43 davec: some constraints can't be done programmatically, but are core to odrl 09:22:12 renato: we should take the black box approach for constraints. how else can we cover all the cases? 09:22:24 Side note: I find the word "processor" too broad. For example, I can conceive a service that given a ODRL expression, an automatically generated English expression is given. This would be a "processor", wouldn't it? I believe that this software would abide to the constraints we are discussing now --although not called "processor", but "validator" 09:22:35 q? 09:22:42 renato: if we try to enforce constraints, then there is a risk that our group would be misunderstood in is intent 09:23:21 renato: we can have a processor which validates the odrl properties, but the actually checking of the constraints needs to be done by some external system 09:23:36 ack me 09:23:39 renato: POE has the word "expression" in the name, since that is the scope 09:23:54 q+ 09:24:00 phila: the notion of "actionable" is useful 09:24:17 smyles: I agree with where we seem to be getting 09:24:40 ... The thing I built that I call an ODRL processor, consults context 09:25:05 ... It asks "is this constraint satisfied" but doesn't ask how do you know 09:25:07 q 09:25:10 q? 09:25:16 ack s 09:25:32 smyles: The separation is useful as is the black box concept 09:25:33 ack i 09:25:45 ivan: i agree but ... 09:26:05 ivan: the processor must be more than what, say, SHACL can do 09:26:21 ivan: this would then be a testable thing for our CR criteria 09:26:54 LindA: will the ODRL engine check whether the constraint has been processed? 09:26:55 q+ 09:27:29 ack i 09:28:04 q+ 09:28:10 ivan: do we need an engine, which depends on the true or false of the constraint evaluation and then acts upon it 09:28:26 ivan: if so, then this evaluation must be defined and testable 09:29:16 phila: each constraint needs to be evaluated via a "black box" which returns "true or false" 09:29:28 q+ 09:29:35 ack p 09:29:53 benws: the processor then makes decisions based on the true / false status of the constraints 09:29:58 ack r 09:30:05 renato: can the black box be a human? 09:30:09 everyone: yes! 09:31:03 phila: it is literally true or false coming back from the API 09:31:22 lindA: introduces herself to the team 09:31:24 https://www.linkedin.com/in/lindaburman/ 09:31:41 davec: introduces himself to the team 09:31:56 https://www.linkedin.com/in/davecompton/ 09:32:09 q? 09:32:47 benws: asking whether formal semantics support the odrl processor we have just agreed? 09:32:54 victor: yes i think so 09:33:19 simonstey: yes, since something else will do the actual constraint evaluation 09:33:38 victor: if we do an implementation, will that count? 09:33:41 phila: yes 09:34:07 phila: stages. the concept of an odrl processor, then the 09:34:23 proposal: we define fully the concept of an odrl processor 09:34:39 ... 09:34:41 +1 09:34:57 phila: knowing that we therefore have to show independent implementations exist 09:35:23 phila: they don't have to be open source or commerical or public, but they must be shown to exist 09:35:28 +1 09:35:34 +1 09:35:35 +1 09:35:36 +1 09:35:38 +1 09:35:38 +1 09:35:42 +1 09:35:43 +1 09:35:47 +1 09:36:05 resolution: we define fully the concept of an odrl processor 09:36:32 phila: what does the odrl do (and not do)? 09:37:00 phila: do we want validation of the odrl policy a part of the processor? 09:37:17 benws: it is better to split validation from processor 09:38:07 victor: we should have a validator and something else 09:38:17 victor: what should we call the "something else" 09:39:14 policy 09:39:19 linda: evaluation is not sufficient to determine whether something is actionable 09:39:47 michaelS: we should not forget about restrictions 09:40:03 benws: suggest - a validator and an evaluator 09:40:05 q? 09:40:30 phila: the process of validation is seperate from evluation 09:40:44 s/evluation/evaluation/ 09:41:04 +q 09:41:39 michaelS: validation could include structural items, such as duties can only be there for permissions not restrictions 09:41:43 ack s 09:42:06 simonstey: on the one side is syntactic validation and on the other semantic validation 09:42:34 simonstey: semantic validation could detect contradictory statements, for example 09:43:01 benws: three elements? syntactic validation, semantic validation and then evaluation 09:43:12 simonstey: no, just syntactic and semantic validation 09:43:26 benws: you also need to know whether the policy is actionable or not 09:43:40 q+ to say you can't eliminate nonsense 09:44:09 simonstey: if you already know whether a policy is semantically correct then is there anything left for evaluation? 09:45:03 phila: syntactic validation tends to mean just whether a parser can read the file, so we are really talking about "semantic validation" 09:45:05 s/syntactic/structural ? 09:45:41 phila: can you write a syntactic and smenaticaly valid policy which is still nonsense? yes 09:45:49 q- 09:46:16 simonstey: if two rules are not actionable at the same time, you need to evaluate them - such as for conflict detection 09:46:34 simonstey: structural validation - is this valid odrl? 09:46:58 benws: aggregations of policies is an issue, for later debate 09:46:59 q+ 09:47:16 benws: we should only discuss the processor 09:47:30 benws: structural validation for correct odrl 09:48:07 benws: given values (e.g. via an API) for constraints being true or false, then there is an evaluation step to determine whether the policy is actionable 09:48:29 ack d 09:49:09 davec: how do we handle contradictory constraints? 09:49:22 benws: this is beyond the scope of what we're talking about 09:49:52 benws: odrl validator and an evaluator 09:50:12 ODRL Validator = odrl policy meets IM requirements 09:51:00 proposal: an odrl validator checks the correctness of the policy 09:51:37 [debate about what does "correctness" mean] 09:51:43 conformance? 09:52:04 ivan: could we define correctness by the set of tests we define 09:52:33 victor: correctness has a specific meaning, will this be confusing 09:52:43 :-) 09:53:06 proposal: an odrl validator checks the conformance of the policy to the ODRL standard 09:53:12 +1 09:53:18 +1 09:53:19 +1 09:53:20 +1 09:53:21 +1 09:53:21 +1 09:53:22 +1 09:53:26 +1 09:53:38 +1 09:54:18 proposal: an odrl evaluator determines whether the policy is actionable, including with reference to external boolean returning processes 09:54:27 +1 09:54:30 resolution: an odrl validator checks the conformance of the policy to the ODRL standard 09:54:41 RRSAgent, draft minutes v2 09:54:41 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 09:55:38 +q 09:55:55 proposal: an odrl evaluator determines whether the policy is actionable 09:56:08 ack s 09:56:21 simonstey: what does it mean for a policy to be actionable? 09:56:48 proposal: an odrl evaluator determines whether the permission is actionable 09:56:54 Rule? 09:57:46 proposal: an odrl evaluator determines whether the permissions and prohibitions of a policy are actionable 09:58:34 +1 09:58:36 +1 09:58:39 +1 09:58:39 +1 09:58:40 +1 09:58:44 0 09:58:44 +1 09:58:47 0 09:58:47 +0 09:58:50 +0.9 09:59:01 i dont think an external reader will understand the word actionable 09:59:28 simonstey: what does it mean to be "actionable" in this context 09:59:40 i woulud speak in terms of actions, not prohbitions and permissions 10:00:27 michaelS: we should be careful - actions are only parts of the permissions and prohibitions 10:01:05 benws: that is not the job of the evaluator 10:01:36 renato: the evaluator is really about evaluating constraints and duties 10:02:17 renato: the evaluator is mainly about checking whether the constraints are satisfied 10:03:02 phila: we are trying to determine what the evaluator does and what the black box does 10:04:06 michaelS: is the verb "applies" clearer? 10:04:27 benws: applies to ... what? 10:04:52 benws: "in effect" captures the concept more precisely 10:06:09 proposal: an odrl evaluator determines whether the permissions and prohibitions of a policy are in effect 10:06:12 +1 10:06:12 +1 10:06:13 +1 10:06:14 Linda has joined #POE 10:06:14 +1 10:06:16 +1 10:06:19 +0 10:06:20 +1 10:06:23 +0.99999999 10:06:23 +1 10:06:35 +1 10:08:11 +1 10:08:59 resolution: an odrl evaluator determines whether the permissions and prohibitions of a policy are in effect 10:10:10 RRSAgent: 10:10:10 I'm logging. I don't understand '', phila. Try /msg RRSAgent help 10:10:20 Back in 20 mins 10:11:05 phila: does an evaluator specify whether a set of permissions and restrictions are in effect for a specific use 10:11:13 RRSAgent, draft minutes v2 10:11:13 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 10:11:19 phila: does an evaluator specify whether a set of permissions and restrictions are in effect for a specific target 10:11:37 [coffee or tea break] 10:11:46 RRSAgent, draft minutes v2 10:11:46 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 10:30:18 nandana has joined #poe 10:30:29 back 10:34:58 we too - slowly 10:34:58 We're back too 10:39:08 scribe: phila 10:39:11 CarolineB has joined #Poe 10:39:16 scribenick: phila 10:39:34 phila: in re-reading the spec, i was looking at the discussion of "scope" 10:39:45 https://w3c.github.io/poe/model/#asset-scope 10:39:53 phila: the target - where does the permission apply 10:40:04 https://w3c.github.io/poe/model/#party-scope 10:40:13 phila: within that, you can add a "scope" - the value given was a URI 10:40:20 http://w3c.github.io/poe/model/#asset-scope 10:40:46 phila: the URI given was meant - via some voodoo - "this is only applicable to e.g. JPEGs" 10:40:52 benws: connection with processing? 10:41:05 phila: there is a lot of processing going on there 10:41:09 q+ 10:41:15 benws: the target can be one or more URIs 10:41:32 benws: what those URIs mean is outside the scope of URI 10:42:09 renato: what exactly is the problem with scope? 10:42:37 renato: scope limits the application of that particular permission to URIs that match that additional scope URI 10:42:52 q? 10:43:09 renato: e.g. you refer to a catalogue, then you limit to to a subset of the catalogue that match the scope parameter 10:43:19 benws: how is this different than a constraint? 10:43:23 scribeNick: smyles 10:43:42 q+ 10:43:48 renato: it could be handled by constraint in that particular example, but there is also a scope process for parties and assets 10:43:52 victor has joined #poe 10:44:09 benws: is scope really just syntactic sugar? ans so could it be eliminated? 10:44:14 s/ans/and/ 10:44:28 benws: constraints could be applicable to the target 10:44:43 +q 10:44:46 +q 10:45:14 benws: is scope anything beyond what you can do with constraints? 10:45:55 renato: this was a requirement which was accepted by the working group, so we can eliminate it, but we did previously discuss and agree 10:46:17 phila: the processor needs to understand that.. 10:46:32 q? 10:46:36 benws: no, processors cannot understand constraints themselves 10:47:12 benws: processors use the results of constraint evaluation, the odrl engine does not in itself evaluation scope 10:47:36 phila: will be happy if the requirement can be satisfied via constraints and so eliminate scope as a different concept 10:47:46 q? 10:47:47 http://w3c.github.io/poe/ucr/#POE.R.DM.08 10:48:11 scribeNick: phila 10:48:16 q- 10:48:39 ack ivan 10:48:40 ivan: I'm not sure this is still relevant... The way I would have read the example, the code was something like a media type 10:48:49 ... That's probably not exactly what you meant 10:49:03 ... The other possibility I was wondering about, was something like URI patterns 10:49:11 ... They may express a set of targets 10:49:23 ... But it seems it[s all going away based on your discussions 10:49:26 " The scope feature is useful is there is no ability to directly identify the target Asset with a uid identifier." 10:49:47 simonstey: If you read 3.2.2 the scope... the scope feature is useful is there is no way of identifying the target by UID. 10:49:49 https://github.com/w3c/poe/issues/111 10:50:17 simonstey: There's another issues where I was questioning whether every asset and party etc. must have an ID and not be bnode 10:50:27 ... so maybe we have to remove that restriction 10:50:45 ... if we can have blank nodes then you can add properties to that 10:51:32 benws: Rather than using a blank node, one could use a URI that points to an object that specifies a dataset and , say, jpegs only, a blank node is just an RDF way of doing that 10:51:48 ... You're saying that by insisting on having UIDs, you're stopping me using RDF blank nodes 10:52:21 simonstey: It is an expressivity question. If you're not able to pinpoint the asset... ODRL says I need to identify the assets 10:52:42 ... We don't have that requirement for Ps&Os, they can be bnodes, 10:52:53 ... but maybe ai want to define the targets in terms of their properties 10:53:06 benws: I can always replace the blank node with an identifier 10:53:38 Linda has joined #POE 10:54:01 q? 10:54:07 ack simonstey 10:54:07 benws: I'm neutral on whether a target has to be identified or can be a bnode 10:54:32 michaelS: I think the legal context... does it make sense to ground the permission on something that is not uniquely defined 10:54:38 ack simonstey 10:55:04 simonstey: We have this scope thing because we wanted to be able to define things without URIs 10:55:09 q+ 10:55:33 simonstey: Without a constraint language, you need to come up with a left operand... 10:55:42 benws: You can do that in a profile 10:55:53 simonstey: You can't punt everbthing to a profile 10:56:05 benws: Yes you can, all we need to know whether the constraint is satisfied or not. 10:56:25 ack smyles 10:56:37 smyles: I also would like to eliminate scope 10:56:47 https://github.com/w3c/poe/issues/174 10:57:11 ... For parties and assets where we can introduce scope. You give the group an identifier and then a scope 10:57:28 ? 10:57:30 q+ 10:57:31 q? 10:57:43 ... For me the ... I don't see how ODRL can determine whether a target is or is not in the group 10:57:54 ... I think scope is a concept that adds complication that won't be used 10:57:56 ack l 10:57:57 q+ 10:57:59 q- 10:58:12 q? 10:58:17 Linda: I think scope is too hard to define, it brings in too much complexity 10:58:43 michaelS: Regarding the scope - scope is also a constraint that applies to the asset, so it can easily be transferred there. 10:59:11 ... But we should think that scope can be applied directly to an asset where a permission can apply to multiple assets 10:59:14 ack r 10:59:29 renato: Let me explain scope for parties. That was part of ODRL2.1 10:59:47 ... The idea was the you go to identify a party and then say that the party was a group of individuals 11:00:01 ... Then that permission could be exercised by individuas in the group 11:00:11 ... SO it just gave us greater semantics 11:00:38 ... There was more about parties but that was the original idea 11:00:39 q+ 11:00:57 http://w3c.github.io/poe/vocab/#term-Party 11:01:25 benws: I understand why we want scope, my question is whether it belongs in the ODRL standard or outside it. Does the work done by scope not be done by constraints 11:01:26 ack i 11:01:38 http://www.rfc-editor.org/rfc/rfc6570.txt 11:01:38 ivan: I come back to what I said. It may be irrelevant... 11:01:51 ivan: That's the spec for URI templates 11:02:00 ... target can be a URI, can be a URI template 11:02:14 -q 11:02:16 ... Any asset that matches this template is what we meant. 11:02:26 ... Moustache is the processor that does that already 11:02:34 ... Just removing the scope might be the simplest thing to do. 11:02:37 q? 11:02:37 +q 11:02:59 benws: That sounds like a good idea. Good if we can find semantics outside our own standard. 11:03:20 https://github.com/w3c/poe/issues/174 11:03:21 ack s 11:03:28 simonstey: I come back to my blank node issues... 11:03:35 Is a URI Template an IRI ? 11:03:38 ... That's the issue about having UIDs 11:03:58 ... I replace the assigner with a bnode that has a feature of foaf:name:Bob 11:04:52 ... For an evaluator, this means that a certain rule is applicable for a certain assigner if the assigner has these properties. 11:05:14 benws: On the surface, I'm comfortable with that. but... wwe also have an XML serialisation? 11:05:24 11:05:55 smyles: It would be difficult for me to say it's an RDF-only standard 11:06:17 renato: You're saying that every party with foaf:name Bob 11:06:37 renato: It's saying any JPEG within this context is in scope 11:06:45 phila: (no it doesn't) 11:07:13 simonstey: Just because I have a URI, doesn't mean I can resolve it. 11:07:41 renato: When I looked at your example, I thought there was one individual that had foaf:name Bob, but no, it's all Bobs 11:08:27 simonstey: The scope we have now defines the general stuff and then restrictions. 11:08:46 ... Could be every party must belong to... 11:08:54 benws: Can this example be expressed as a constraint 11:09:05 renato: No, because constraints can't apply to parties 11:09:47 simonstey: It's not clear to which party the constraint applies 11:10:30 benws: We need to reduce the hidden semantics... maybe rely on the constraint. Use of bnodes seems to introduce stray semantics 11:10:52 renato: So would the proposal be to remove scope? 11:11:04 benws: And then that we don't allow bnodes 11:11:13 renato: That's a serialisation issue 11:11:30 benws: I'm not sure whether the original use case demands the scope notion 11:11:46 +1 to ben with regard to scopes 11:11:54 benws: This would mean that our evaluation engine wouldn't need to define it. 11:13:54 http://w3c.github.io/poe/ucr/#POE.UC.17 11:14:01 smyles: I think it's hard for the ODRL engine to evaluate - I'd like that to be one of the black box actions 11:14:24 q+ 11:14:45 POWDER :-) 11:14:56 phila: i struggled for 18 months with this same problem 11:15:20 phila: in ODRL you point from the policy to the asset 11:15:42 benws: in realistic implementations, assets will point to policies 11:15:48 q+ 11:15:57 +q 11:16:00 phila: so, should we remove the concept of target? 11:16:01 ack phila 11:16:35 benws: you need bi-directional relationships 11:17:01 phila: given that (assets point to policies) then why point to targets at all? 11:17:02 for all the other real examples 11:17:19 phila: If you always go from an asset to a policy, why do we ever need odrl:target? 11:17:36 q+ 11:17:36 michaelS: nextPolicy is important 11:17:53 q- 11:17:57 I wrote an example of the that here https://www.w3.org/2016/poe/wiki/Best_Practices#5._How_to_declare_externally_the_asset 11:17:58 ack i 11:18:02 ack me 11:18:22 https://w3c.github.io/poe/model/#asset 11:18:22 ivan: I've just realised that... an asset can be a uid or a URI template. It can be that now. 11:18:33 ... That's missing from the discussion 11:19:16 phila: Recites UC17 11:19:44 benws: But I think his case can be expressed as a constraint 11:19:50 ... It can't be a URI template 11:19:53 q+ 11:20:05 q+ 11:20:19 ... e.g. we have info on 500 compnies and you can by 20 of them, that's a constraint. not a URI template 11:21:16 q- 11:21:22 ack d 11:21:38 s/compnies/companies/ 11:21:58 davec: Going to the RightsML... using a document that described what the restrictions were 11:22:23 ack l 11:22:45 Linda: I was wondering why the prohibition of not applying a constraint on parties was there? 11:22:53 [No answer] 11:23:02 +1 11:23:10 +1 11:23:27 PROPOSED: That we remove the concept of scope but allow constraints to be applied to parties and assets 11:23:38 +1 11:24:21 victor: If I want to declare a constraint for adult content, the left operand can be age. 11:24:41 benws: That constraint might have a specific type of 'partyConstraint' 11:26:06 benws: I think it's clearer to have a constraint type to indicate what is being constrained 11:26:12 doh ;-) 11:26:23 phila: I prefer links. This constraint -> constrains -> That 11:26:43 renato: We don't have any constraint types for the others 11:26:43 The leftOperand MUST clearly be defined to indicate the subject of the constraint, and MAY include how the value for comparison has to be retrieved or generated. For example, the count constraint applies to the action and the language constraint applies to the asset. 11:27:42 RRSAgent, draft minutes v2 11:27:42 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 11:28:04 renato: That means that the definition of the leftOperand, you have to specifically state what the subject is. 11:28:20 ... So you'd need to point to the thing being constrained 11:28:37 benws: This is additional semantics - might be nice to make it explicit 11:28:38 q+ 11:29:27 renato: Wwhen we said define in that context, we mean define in a metadata sense. You're defining the left operand in a human readable manner 11:29:49 benws: All we're saying is that this constraint is a constraint on {x} 11:29:57 ack michaelS 11:30:05 q? 11:30:06 michaelS: I recall that we have discussed this at the time 11:30:18 ... When we were designing the left operands 11:30:33 ... if we constrain an asset - which asset? 11:30:45 benws: If it's an asset constraint then it's applicable to all those targets 11:31:01 ... If you want to apply it to some of the assets, then you split the list of targets and define 2 permissions 11:31:09 michaelS: Couldn't that be the solution for this? 11:31:37 benws: No, because if we're saying age greater than 18, we don't know whether it's about the content or the user. 11:31:55 michaelS: We can create a constraint that says this is the age of the party 11:32:10 q+ 11:32:12 ... Let the subject of the left operand define the thing being constrained. 11:32:25 benws: That's starting to hide the semantics 11:32:47 michaelS: It would be good to have an explicit property - where to put the ID of the asset 11:32:57 q? 11:33:02 file:///Users/renato/users/odrl/W3C-POE/GIT-POE/model/index.html#constraint 11:33:06 benws: Yes, that's where we're coming to I think - and it's not new 11:33:17 https://w3c.github.io/poe/model/#constraint 11:33:18 renato: If you look at the example 11:33:23 ... no. 14 11:33:32 ... There are 2 constraints in eg14 11:33:41 ... The first is a property of the permission 11:34:45 renato: The constraints explicitly apply to the permission and the duty 11:35:27 ... We had some explicit declaration of what the constraint applied to. But if we're now applying it to assigner etc. then... 11:35:55 "assigner" : [ "uid" : "http....", "constraint": [{....}]] 11:36:16 renato: That's it, thanks Ivan 11:36:35 benws: It does the work that we want it to do. 11:36:44 ivan: And it's coherent with the rest 11:36:54 q? 11:37:02 q- 11:37:12 ivan: I don't see a problem 11:37:23 smyles: It's a breaking change for the JSON but we're breaking that anyway 11:37:35 I just wrote a proposal here https://www.w3.org/2016/poe/wiki/Best_Practices#8._How_to_constrain_assets_and_parties 11:37:35 smyles: I can't remember the XML off hand 11:38:27 renato: Just a quick look at the XML... we'll probably have to break out the party and put a constraint in the middle. 11:38:33 benws: Can we take this set of proposals 11:39:27 PROPOSED: That we remove the concept of scope and allow constraints on parties and assets. 11:39:38 +1 11:40:24 -> https://www.w3.org/2016/poe/wiki/Best_Practices#8._How_to_constrain_assets_and_parties Victor's quick examples 11:41:20 simonstey: In RDF you'd need to define a new party 11:41:32 ... then link to... 11:41:39 +1 11:41:44 benws: Please vote on the proposal 11:41:45 +1 11:41:46 +1 11:41:52 +1 11:41:54 +1 11:41:55 +1 11:42:01 +1 11:42:09 -0.5 11:42:38 +1 11:42:42 +1 11:43:08 simonstey: I am happy to remove scope. But I think we're making it open to greater complexity 11:43:15 benws: Is there a simpler way? 11:44:06 simonstey: Currently there is no difference... we have a constraint that says age ge 18, there's no difference with that and a human readable doc 11:44:35 renato: It is different. We can pass off to a black box that can do age verification and pass back the flag 11:44:52 renato: We can't say how the constraints will be processed. 11:45:18 simonstey: I agree with you, but the problem is, to understand the left operand, you need to read the description. 11:45:49 q+ 11:46:07 renato: Is foaf:age any better? 11:46:11 simonstey: It gets better 11:46:16 q- 11:46:25 phila: (+1 to renato) 11:47:04 renato: If age is important to an implementation then they'll implement it 11:47:43 renato: The group seems to want to use the same constraint mechanism for parties and assets. 11:48:06 q+ on one more Occam's razor thing... 11:48:14 RESOLUTION: That we remove the concept of scope and allow constraints on parties and assets. 11:48:40 ivan: In 3.2 of the model, I think we can safely remove the reference to URI templates 11:49:04 ivan: If you can have a URI or a URI template at that place, then any processor has to be able to handle URI templates. 11:49:17 ... It is not necessarily valid RDF due to syntax 11:51:05 benws: If these are a MAY, does that change your view, Ivan 11:51:56 ivan: The media fragments URI - that sentence is wrong, fragments in a URI can identify a section of an audio or video. It's not necessary since it's already true 11:52:28 ... Whether we mention URI templates. If it's not syntactically a URI then it breaks RDF 11:53:04 I have updated the choices at https://www.w3.org/2016/poe/wiki/Best_Practices#8._How_to_constrain_assets_and_parties 11:53:16 now 5 choices, including URI templates. Did I understand it correctly? 11:53:23 If an error occurs, the result returned might not be a valid URI reference; it will be an incompletely expanded template string that is only intended for diagnostic use. 11:53:34 phila: This one looks dodgy http://example.com/search{?q,lang} for example 11:53:50 benws: I don't think we have a single use case for URI templates so why not drop it 11:54:15 URI Templates are not URIs: they do not identify an abstract or physical resource, they are not parsed as URIs, and they should not be used in places where a URI would be expected unless the template expressions will be expanded by a template processor prior to use. 11:54:20 https://tools.ietf.org/html/rfc6570 11:54:48 PROPOSED: To remove the mention of URI templates in section 3.2 (for simplification) and media frags because it's unnecessary 11:54:51 q? 11:54:58 ack i 11:54:59 ivan, you wanted to comment on one more Occam's razor thing... 11:55:05 +1 11:55:06 "assigner": { 11:55:06 "@type": [ "Party", "vcard:Organization" ], 11:55:06 "uid": "http://example.com/org/sony-music", 11:55:08 "constraint": [{ 11:55:10 "leftOperand": "foaf:age", 11:55:12 "operator": "gt", 11:55:14 "rightOperand": "18" 11:55:16 }], 11:55:18 } 11:56:05 benws: That's a suggestion for how we might implement a cosnstraint on parties and assets 11:56:07 +1 11:56:08 +1 11:56:10 PROPOSED: To remove the mention of URI templates in section 3.2 (for simplification) and media frags because it's unnecessary 11:56:12 +1 11:56:14 +1 11:56:14 +1 11:56:15 +1 11:56:20 +1 11:56:26 +1 11:56:29 +1 11:56:31 +1 (might be left as an implementation example) 11:56:35 +1 11:56:36 +1 11:56:40 RESOLUTION: To remove the mention of URI templates in section 3.2 (for simplification) and media frags because it's unnecessary 11:56:47 RRSAgent, draft minutes v2 11:56:47 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 11:57:06 Will put example in the IM - in JSON-LD 11:57:32 benws: Renato has made a suggestion for how we might express these constraints on parties 11:57:33 +q 11:57:39 victor: I've done 5 examples 11:57:40 ack s 11:57:47 https://www.w3.org/2016/poe/wiki/Best_Practices#8._How_to_constrain_assets_and_parties 11:58:04 simonstey: Just wondering... how do we know that it isn't Sony Music that must be over 18? 11:58:33 renato: It's a bad example, that's why 11:58:40 "assigner": { 11:58:40 "@type": [ "Party", "vcard:Individual" ], 11:58:40 "uid": "http://example.com/person/fred", 11:58:42 "constraint": [{ 11:58:44 "leftOperand": "foaf:age", 11:58:46 "operator": "gt", 11:58:48 "rightOperand": "18" 11:58:50 }], 11:58:52 } 11:59:01 me/ Renato, I just got to step out for 5mins. Can you chair? 11:59:17 yes 11:59:36 simonstey: That says that Fred must be over 18 11:59:46 renato: So we need to say it's for a group of people 11:59:59 smyles: The group could be all over the users of this website 12:00:10 s/me/ Renato, I just got to step out for 5mins. Can you chair?// 12:01:00 q? 12:01:06 [Some general discussion of the examples] 12:02:48 victor: Talks about his examples 12:06:13 +1 to Phil 12:09:48 sabrina has joined #poe 12:10:16 "target": { 12:10:16 "@type": "Asset", 12:10:16 "uid": "http://example.com/asset/content", 12:10:18 "constraint": [{ 12:10:20 "leftOperand": "mm:runingTime", 12:10:22 "operator": "gt", 12:10:24 "rightOperand": "2hr" 12:10:26 }], 12:10:28 } 12:10:59 present+ sabrina 12:12:00 [Phil bangs on about WebArch, one resource per URI] 12:12:16 +1 12:12:21 ivan: That would not be in line with WebArch 12:13:23 ivan: Taking that example and saying any content on the asset site with a running time of > 2 hr is not semantically correct 12:13:49 smyles: These sort of constraints being applied to assets is difficult 12:14:15 simonstey: We have the same issue - not all the exampleconstraints make sense 12:14:47 victor: Alternatively, we may define terms that define any asset in terms of its properties 12:14:58 ivan: I would receive one thing back from that URI 12:15:17 ... I'm supposed to be able to put that in a browser and get something back. 12:15:31 renato: Then I think we should review this resolution 12:15:41 ivan: It depends on the use case 12:16:12 ivan: If I have a movie, and it runs less than 2 hours, then the policy doesn't apply. That's a valid outcome 12:16:21 renato: Phil said that URI is one thing, one movie 12:16:51 ivan: Yes, so if that one movie runs 1 hour, then the Evaluator should return saying that the policy doesn't apply to the target 12:17:43 ... I don't know if that's valid use case 12:18:26 ivan: You can define a URI that refers to a collection. But its' getting from the items in the collection that's tricky 12:19:13 [More discussion about collections] 12:20:12 q+ 12:20:13 smyles: In my view... this URI identifies a collection, then asked whether an asset was in that collection or not. 12:20:45 smyles: If the assignee is Fred... is the user of this Fred... in my view the black box needs to know whether it is Fred or Fred's device 12:21:15 ... the black box has to identify whether the thing identified is the same as the real world 12:21:40 ack renato 12:21:52 https://tools.ietf.org/html/rfc3986 12:22:03 renato: I've looked at RFC3986 on URIs and it says that a URI identifies a Resource. 12:22:15 ... Then it gives an example of a resource that is a collection of resources. 12:22:18 and a collection of other resources. 12:22:31 q+ 12:22:38 ivan: That's fine. But the constraint you have there is a constraint against the collection, not the members of the collection. 12:23:05 q? 12:23:07 ivan: My feeling is that we're at the point where we hit the limits of what you can express 12:23:32 ... We won't solve this issue. Maybe we need explicit hooks for a black box to process 12:23:35 ack m 12:24:01 make it a blank node and define the constraint for that blank node 12:24:14 michaelS: In RightsML, we even had an example going along this group of assets. The thinking was - a news feed delivers new items, and each news items might have a link to a policy 12:25:10 ... But having in mind that a policy must have a target, it's not possible to update the enumerated list in real time. Therefore, this policy must point to a resource that says 'this resource covers all the news items in this feed.' 12:25:21 michaelS: Even there, having an enumerated list would be hard. 12:25:40 ... we need to be able to say it applies everywhere where X is true. 12:26:12 Simon - we'll break before two 12:27:40 q+ 12:28:49 http://w3c.github.io/poe/vocab/#term-Group 12:29:02 "assignee": [{ 12:29:02 "uid": "http://example.com/user44/friends", 12:29:02 "scope": [ "Group"] 12:29:04 }] 12:29:06 odrl:memberOf 12:29:50 phila: Repeats what Ivan said 12:29:52 odrl:targetAll ? 12:29:53 ack s 12:30:34 smyles: If I distribute a photo, as it travels it gets a new URI, and so does it apply 12:30:58 ... You end up with multiple sets of bits with multiple copies 12:31:04 benws: I suggest we do nothing 12:32:26 victor: Suggest using targetReference 12:32:45 ... This matches MPEG, for example 12:33:10 ... Is the resource a single resource or a service 12:35:06 smyles: If I have a local copy, doe the constraints still apply? 12:35:17 [mini discussion] 12:35:21 phila: No. 12:35:44 michaelS: That's why Guids are good, they travel with the asset 12:36:18 smyles: The other thing is... is it going to be too difficult to implement? Will it be too confusing. 12:37:08 RRSAgent, draft minutes v2 12:37:08 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 12:37:21 Break 50 mins 12:41:50 phil, are you still there? 13:09:47 Sabrina has joined #poe 13:20:05 back now 13:21:27 phila has joined #poe 13:23:46 victor has joined #poe 13:24:00 scribe: victor 13:24:04 present+ victor 13:24:17 chair: renato 13:24:30 michaelS has joined #poe 13:27:57 scribeNick: victor 13:32:17 Everyone back there? 13:32:32 yes 13:34:39 renato: the current issue of adding constraints to parties and assets is still open 13:35:23 CarolineB has joined #Poe 13:35:35 subtopic: how to add constraints to general parties and assets without breaking the WebArch 13:36:00 q+ 13:36:04 renato: shall we remove scope? shall they be replaced? 13:36:52 phila: I would not go back to scope. But the semantics of what we say must match the semantics of what we mean: what has to do with "collection" has to be treated carefully 13:37:40 phila: my suggestion is that where we say that if odrl:target refers to a specific resource, no constraint can be defined 13:37:57 ...whereas if the odrl:target is pointing to a collection, then constraints can apply. 13:38:31 q+ 13:38:52 renato: Possible wording "if the target asset is a collection, then you may use constraints" 13:39:03 doesnt work form xml 13:39:09 s/form/for/ 13:40:59 stuart: are we speaking about having a target and a targetRef distinct? -- this is more complicated than having a URI and can deter people from using ODRL. 13:41:53 +q 13:41:54 q+ 13:42:25 stuart: the current semantics of target identify an individual thing, not an "individual of a collection" 13:43:10 q+ Linda 13:43:13 http://w3c.github.io/poe/model/#relation 13:43:14 q- 13:43:17 ack smyles 13:43:19 q- smyles 13:43:42 simonstey: do not forget the XML legacy, which has a target as a subproperty of another element. 13:43:59 simonstey: can we get rid of relation/function? 13:44:17 q+ 13:44:35 ack simonstey 13:44:49 [webex interruption] 13:44:52 We have lost audio? 13:44:57 we did 13:45:10 Webex got disconnected ... 13:46:01 [webex recovered] 13:46:37 CarolineB: collections happens in life and we should make their use clear. 13:46:52 ack s 13:46:53 ack CarolineB 13:47:01 Linda: can we have concrete examples? 13:47:11 ack Linda 13:47:35 q+ 13:48:03 CarolineB: let's imagine I have a set of photos arranged in a collection. 13:48:21 ...I may want to refer to each of the photos individually or to the whole collage. 13:48:45 s/collection/collage/ 13:49:07 rrsagent, generate minutes 13:49:07 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html victor 13:50:24 michaelS: who has to write the black box for resolving the target? the receiver? this cannot be a business of the assignee alone. 13:51:43 q+ 13:52:34 smyles: the provider of the policy may give hints to the recepients to determing which the target/asset is. 13:53:35 benws: in order to declare a policy on a fragment of a dataset, we definitely need constraints for targets. 13:55:08 ack smyles 13:55:24 renato: I understand both options, using or not constraints on assets. 13:55:30 benws: is this the solution then? 13:55:35 ack 13:55:43 ack michaelS 13:55:59 q+ 13:56:46 smyles: setting aside constraints... can we get a solution on target / targetRef ? 13:58:00 q- 13:59:08 smyles: it does not make any sense constraining a single thing 13:59:24 benws: well, consider the case of datasets with dynamic queries 13:59:46 ...the constraint applies to the whole dataset. 14:00:36 renato: recalling what philA said (IN THIS VERY MOMENT ABSENT FROM THE ROOM) if the URI clearly identifies a collection, then constraints are possible 14:01:31 davec: we aer referring to dynamic collections 14:02:12 renato: so we only need to update the semantics of target 14:02:37 http://w3c.github.io/poe/vocab/#term-fileFormat what does that imply for already existing leftoperands? 14:03:35 +q 14:04:07 this is a different case - it's not the target but the output (...after exercising the Action) 14:04:25 proposed: to update the definition of target to include collections 14:04:39 smyles: what about assigners? does the same apply to assigners? 14:05:15 q+ 14:05:34 simonstey: again, what about the movie whose parts have to be referred? 14:06:01 ack simonstey 14:06:06 ack smyles 14:06:55 simonstey; if the asset is a collection, the description has to say "this applies to all the assets in the collection" 14:08:08 simonstey: the current definition speaks about Assets, not about Collections. 14:09:25 smyles: the current definition is not precise enough 14:09:31 q- 14:10:01 renato: the radical view would be "let us not have scope nor constraints". What this be unacceptable? 14:10:10 smyles: +1 14:10:24 +q 14:10:44 benws: this is a basic use case for us 14:11:28 benws: for example, the FTSE Index is made out of the market value of the shares of 100 companies in the stockmarket 14:12:38 ...the FTSE is calculated in a complex manner, and it is a complex dataset with high value. We woule like to refer to the individual information ("segmentaion") rather than the aggregated data. 14:13:44 rename: what about a constraint on the action? 14:14:24 benws: constraints are on the assets, that you are limiting. not on the actions. 14:15:30 benws: what we want to express about collections/members/parts is simple and it is an actual need 14:17:26 benws: we may want to specify "content type = index constituents". the problem is left to the processing engine. 14:17:50 "target": { 14:17:50 "@type": "Asset", 14:17:50 "uid": "http://tr.com/asset/ftse100", 14:17:52 "constraint": [{ 14:17:54 "leftOperand": "tr:content-type", 14:17:56 "operator": "eg", 14:17:58 "rightOperand": "index-constiutents" 14:18:00 }], 14:18:02 } 14:18:04 14:18:14 benws has joined #poe 14:18:19 simonstey: there may be ambiguities 14:18:50 renato: please see the example above 14:18:53 "target": { 14:18:53 "@type": "Asset", 14:18:53 "uid": "http://tr.com/asset/ftse100", 14:18:55 "constraint": [{ 14:18:57 "leftOperand": "tr:content-type", 14:18:59 "operator": "eg", 14:19:01 "rightOperand": "index-constiutents" 14:19:03 }], 14:19:04 benws: yeah. 14:19:05 } 14:19:07 14:19:26 Linda has joined #POE 14:20:45 renato: maybe we should have AssetCollection. the target would point either to an Asset or to an AssetCollection 14:20:50 benaws: that is clean 14:21:09 benws: Collection even as a subclass of Asset? 14:22:46 benws: another classic constraint on the asset is the "real time", also for the FTSE 100 index. We want to have a 10 seconds of delay at least. 14:23:13 q+ 14:23:29 ack simonstey 14:23:37 ... we need to constraint the asset (realtime, delay or embarg) 14:23:46 s/embarg/embargo 14:25:07 smyles: what we are proposing (Asset/AssetCollection) is also in line with phila prescriptions 14:25:39 +q 14:25:39 Why don't implementors read specs ;-( 14:25:48 ack smyles 14:26:48 smyles: then we would accept constraints, as long as the AssetCollection is there instead of Asset. This is better than having target/targetRef 14:26:49 q- 14:28:17 renato: would then we have "PartyCollection" in the same manner?? 14:28:26 q+ 14:28:55 simonsteys: yes, with the same properties. 14:29:02 +1 14:29:40 +q 14:30:15 in xml it is like this 14:30:55 michaelS: we have in XML two manners to declare relations: as a property or through a relation mechanism. In JSON we have assinger and assingees as properties instead. 14:31:35 simonstey: this has been one of the hottest topics on github. 14:32:46 simonstey: the current spec still reflects features because of the times when XML Schema was used. 14:33:46 http://w3c.github.io/poe/model/#party 14:34:22 example XML 14:34:44 benws: this issue with functions was not clear to me. 14:35:02 +1 14:35:11 A Party MUST have a function indicating the role undertaken by the Party. 14:35:32 renato: we have to move forward. 14:35:57 proposed: to add a PartyCollection and a AssetCollection 14:36:05 +1 14:36:10 0 14:36:17 +1 14:36:20 +1 14:37:05 should it read: "to add a PartyCollection and an AssetCollection, where constraints are allowed on Collections but not on Assets or Parties alone"? 14:37:23 i believe simonstey's proposal was to stick with Asset as a type and then add AssetCollection and AssetIndividual as subtypes of Asset 14:37:32 yes 14:37:41 +1 to SImons proposal 14:38:31 michaelS: consistent terminology should be used. 14:40:56 q+ 14:41:13 yack michaelS 14:41:15 proposed: Let Asset be a type and then add AssetCollection and AssetIndividual as subtypes of Asset. 14:41:20 ack michaelS 14:41:39 ack simonstey 14:41:49 smyles: the proposal introduces small changes in the XML version 14:42:07 does the proposal include having constraints on the asset? 14:42:43 re Sabrina : yes 14:42:47 proposed: Let Asset be a type and then add AssetCollection and AssetIndividual as subtypes of Asset. The same for Parties. 14:42:55 small change to XML, but needs additional attribute 14:42:57 re Sabrina: no 14:43:14 q 14:43:19 q+ 14:43:24 ack victor 14:43:48 ack Sabrina 14:43:53 proposed: Add AssetCollection and AssetIndividual as subtypes of Asset. The same for Parties. 14:44:13 "keep it simple"... 14:44:41 +1 14:44:41 +1 14:44:43 +1 14:44:45 +1 14:44:49 +1 14:44:56 +1 14:45:03 +_1 14:45:07 +1 on the design 14:45:14 +1 14:45:15 +1 (and allow constraints for both indiv. and collections) 14:45:18 resolution: Add AssetCollection and AssetIndividual as subtypes of Asset. Do the same for Parties 14:45:37 (and allow constraints for both indiv. and collections) 14:45:40 q+ 14:46:34 ack Sabrina 14:48:56 me PartyCollection 14:49:31 https://www.w3.org/2016/poe/wiki/Meetings:London2017 14:49:58 https://github.com/w3c/poe/projects/1 14:50:18 topic: WG/Wide/Horiz Review issues 14:50:19 https://github.com/w3c/poe/issues 14:52:18 renato: we had different WG Wide and Horizontal review feedback 14:52:41 renato: one of the topics is "profiles", another one is "normative vs non-normative". 14:53:07 subtopic: ODRL Profiles 14:53:20 +q 14:53:38 issue https://github.com/w3c/poe/issues/172 14:54:44 q 14:54:47 q? 14:55:13 q+ 14:55:36 simonstey: I am not against adding profiles, but they should not violate semantics and structural features. 14:55:54 q+ 14:56:00 ack simonstey 14:56:04 simonstey: some things cannot be "deprecated" nor given a different meaning. 14:56:35 https://www.w3.org/2017/dxwg/wiki/Main_Page 14:56:40 michaelS: Phil is not in the room and he should tell us about other W3C Working Groups' works. 14:57:27 q? 14:57:32 ack b 14:57:39 ack m 14:57:46 q+ 14:58:37 q+ 14:59:41 subtopic Normative vs Non-normative features. 14:59:57 subtopic: Normative vs Non-normative features 15:00:00 ivan: given a certain feature, if at the end of the CR period has not been implemented, it will fall to non-normative 15:00:51 benws: a radical suggestion, let us make the core model standard, and the vocabulary terms out of the standard; provided by different profiles. 15:00:58 q+ 15:01:05 q+ 15:01:10 ack benws 15:01:24 https://github.com/w3c/poe/issues/159 related to that 15:02:50 ack ivan 15:02:50 q+ 15:03:25 benws: let us make the actions like display to live in a profile 15:03:40 q+ 15:04:17 ack michaelS 15:05:22 michaelS: I concede that having a smaller specification is easier to agree with. But, from a pragmatic point of view it is easier to have them in the main track 15:05:34 q+ 15:07:15 ack smyles 15:07:51 smyles: odrl 2.0 was a model, and a common vocabulary, in different URLs. when we moved to 2.1, ontologies appeared and everything was merged into a single HTML document 15:08:17 Community group reports: https://www.w3.org/community/odrl/ 15:08:42 smyles: should we have different namespaces for each? 15:09:40 victor: mpeg21 REL a similar thing (though only in XML) three namespace - "core", then "s" (for standard) and then "multimedia" 15:10:16 q- 15:10:20 https://github.com/w3c/poe/issues/182 15:10:28 Another, more radical approach :-0 would be to just to only have the IM as the normative spec (have all the formal IM-only vocab terms in an appendix there) and the all the Common terms go into a NOTE, and the 3 encodings can also go into another NOTE 15:10:52 [Phil is back in the F2F room] 15:11:51 q+ 15:11:55 ack renato 15:13:58 ivan: we should distinguish the editorial way to implement this and the concept itself 15:14:09 ivan: perhaps we are saying the same thing 15:14:35 benws: having profiles with a common vocabulary (in a Note or not) fundamentally supports the idea of profiles 15:15:02 what about xml? O: 15:15:02 ivan: do we agree that the only normative part is the core? is there agreement about that? 15:15:26 ivan: fundamental question is "what is normative, what is not" 15:16:20 https://github.com/w3c/poe/issues/159 "Do you know which standard Action we could attach it to? To encourage best practices, we'd like to show how to mint a new action by extending existing ones, following the approach I've mentioned at #160." 15:16:35 renato: as of now, in the information model we have actions (but not specific actions, other than "use") 15:18:01 benws: yes, i understand we have "model" and "vocab", but the corrent "vocab" is not in a profile. 15:18:08 s/corrent/current 15:18:13 ack ivan 15:18:13 q- 15:18:40 benws: what would be your simplest profile be? 15:19:30 benws: the 5-6 top level terms 15:20:00 q+ 15:20:04 +q 15:20:07 q+ 15:20:08 renato: i hope we dont go too far taking away everything. 15:20:32 renato: because otherwise we will not be able to create a ODRL expression without using a profile 15:21:00 michaelS: test cases need having actions 15:21:10 benws: no problem, they can be taken from the profiles. 15:21:11 ack michaelS 15:21:21 nandana has joined #poe 15:21:33 q+ 15:21:35 q 15:21:49 https://github.com/w3c/poe/issues/159 "Do you know which standard Action we could attach it to? To encourage best practices, we'd like to show how to mint a new action by extending existing ones, following the approach I've mentioned at #160." 15:23:36 CarolineB_ has joined #Poe 15:23:44 simonstey: we need to provide a toolset to relate actions to each others. if we have already some actions, we favour interoperability. 15:24:03 CarolineB__ has joined #Poe 15:24:29 q+ 15:24:44 q+ 15:24:44 ack simonstey 15:24:51 ack smyles 15:25:14 fyi - for RightsML we used display, play etc from ODRl as semantics matched the news domain, but overrode archive, copy, distribute for the news profile. So the core set would be small imho. 15:25:40 q+ 15:25:58 smyles: We, as RightsML, are happy to get full support to the vocabulary we use, not only half-fledged 15:26:04 q- 15:26:15 q+ to talk about RightsML 15:26:18 ack v 15:26:38 q- 15:27:26 phila: Discussion about profiles in other W3C about content negotiation: there is no clear definition of profile 15:27:54 q+ 15:27:57 phila: you dont want to be dependent on other group. 15:28:47 q- 15:28:53 q+ about the concept of "official" (w3c blessed) profiles 15:28:56 benws: the W3C may even stamp a seal of approval on profies developed by others. 15:29:07 q+ 15:29:16 ack ben 15:29:22 ack Lin 15:29:48 linda: the only way for different content providers to operate is having a clear reference. 15:30:21 linda: the examples stemming from real life (for examples those from IPTC) are absolutely necessary 15:31:06 phila: we dont want to be a registry of profiles 15:31:59 q+ 15:32:11 benws: if i belong to the book industry, i hardly find the URL to IPTC's webpage, and then I find hard to recognize the relation with ODRL. 15:32:25 q+ 15:32:31 ack renato 15:33:37 renato: it would be possible for RightsML to become a W3C Note. 15:33:42 benws: great idea! 15:35:08 michaelS: what will happen when this POE group gets disbanded? 15:35:14 ODRL Community Group ??? 15:36:19 phil: even if the ODRL Community Group survives... ...it won't live forever. 15:36:55 phil: is it possible to stablish a liaison with IPTC and jointly publish the spec? (as long as no copyright and other laws are breached) 15:37:18 phila: we should have a default profile 15:37:21 q? 15:37:27 q- 15:37:37 phila: further, the RightsML might be the default profile. 15:37:39 benws: no. 15:37:39 ack phila 15:37:39 phila, you wanted to talk about RightsML 15:37:52 q- 15:38:10 q= 15:38:15 a note isn't normative / standardized 15:38:15 benws: let us a create a small "default profile" 15:38:28 benws: in the main Rec. 15:38:30 q+ 15:38:31 phila: why? 15:38:50 q+ 15:38:56 ack ivan 15:39:14 ivan: we are jousting about different things 15:40:10 ivan: when the WG closes down, then we assign another existing/new group the responsibility of maintenance. 15:40:34 ivan: that committee group can take the responsibility of publishing profiles as w3c notes. 15:41:23 Dec 2017 15:41:29 ivan: this group has not much life ahead! 15:41:43 q+ 15:42:25 ivan: having the core profile as a note as part of the Rec. is not that important 15:42:30 ack Linda 15:43:04 Linda: having a W3C Note together with another organization is the best of the possibilities. There are 5 IPTC members here today! 15:43:51 q? 15:43:52 Linda: I perceive a need in the industry about rights. This is a very good opportunity to cover this gap. 15:43:58 q+ 15:44:09 michaelS: how many actions should be in the spec? 15:45:10 ack mich 15:45:59 q+ 15:46:01 +q 15:46:11 -q 15:46:19 +1 what phil said 15:46:53 smyles: every action is subclass of use 15:47:18 davec: i would require that the meaning of given terms cannot be overriden 15:47:19 no...transfer is a top-level 15:47:32 but we introduce means for relating actions defined in profiles with odrl:use 15:47:46 q? 15:47:48 q- later 15:47:53 renato: use and transfer are the two top level actions 15:47:57 q- 15:48:50 CarolineB__: what if we have 59 profiles? what about their integration? 15:49:09 q? 15:49:14 ack c 15:49:14 ack Car 15:49:52 benws: we are trying to persuade companies/sectors to use machine readable rights. i feel this can only be achieved if they can use their own vocabulary. 15:49:53 q+ 15:50:12 benws: hence, the core should be as small as possible. 15:50:31 CarolineB__: it should be prepared to grow, as well. 15:50:46 q 15:50:49 ack me 15:50:58 q- 15:51:58 phila: they W3C does not do anything. the members do. 15:52:22 q+ 15:52:32 ack L 15:53:54 Linda: there are many commonalities between news and other sectors. there is legal stuff behind, which is not different. we should be happy to have mappings, and we would expect W3C to support this. 15:54:05 RRSAgent, make logs public 15:54:31 phila: this is a job for the community. the W3C is not funded to do that. W3C provides the mechanism to create and maintain Community Groups. 15:54:33 RRSAgent, draft minutes 15:54:33 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html renato 15:54:52 q? 15:57:35 ivan - can you take over and host the webex? 15:57:47 phila: once something is in the w3c/... namespace, it is difficult to change. 15:57:49 sorry gotta run.... back tomorrow 15:58:34 s/... namespace/TR\/namespace/ 15:58:50 no, I am 15:59:09 [discussion on the namespaces/profiles] 15:59:37 Host key: 352171 16:00:21 s/Host key: 352171// 16:01:10 +q 16:02:50 q- 16:02:52 proposed: (1) move top level actions to the information model: use and transfer (2) let us create a core profile, mirroring the current spec 16:03:26 +q 16:03:33 q+ 16:04:15 ack s 16:04:58 simonstey: can new profiles include new concepts like "remedies", etc.? 16:05:10 ack v 16:05:25 victor: Would left operands be part of the core? 16:05:34 all: no, not part of the core 16:05:52 benws: We'll create a core profile 16:06:07 RRSAgent, draft minutes v2 16:06:07 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 16:06:26 we decide to postpone the discussions. 16:06:47 [Adjourned] 16:07:13 RRSAgent, draft minutes v2 16:07:13 I have made the request to generate http://www.w3.org/2017/05/18-poe-minutes.html phila 16:09:02 RRSAgent, bye 16:09:02 I see no action items