18:01:35 RRSAgent has joined #shapes 18:01:35 logging to http://www.w3.org/2016/09/01-shapes-irc 18:01:37 RRSAgent, make logs rdf-data-shapes 18:01:37 Zakim has joined #shapes 18:01:39 Zakim, this will be SHAPES 18:01:39 ok, trackbot 18:01:40 Meeting: RDF Data Shapes Working Group Teleconference 18:01:40 Date: 01 September 2016 chair: ericP agenda: https://www.w3.org/2014/data-shapes/wiki/Meetings:Telecon2016.09.01 18:02:43 present+ 18:02:53 present+ 18:02:58 present+ 18:03:12 marqh has joined #shapes 18:03:31 present+ 18:04:02 hi all 18:04:15 I'm trying to get connected 18:04:37 I'm running on a crippled env so, not sure how this is going to work out 18:04:48 present+ 18:04:55 present+ 18:05:00 It's Brussels, Arnaud. You can't connect from Brussels 18:05:13 Zakim, who's here? 18:05:15 On IRC I see marqh, Zakim, RRSAgent, Arnaud, Dimitris, pano, kcoyle, hknublau, simonstey, ericP, trackbot 18:05:24 especially when you don't have internet installed yet :) 18:05:25 present+ 18:05:25 present+ Dimitris topic: Admin 18:05:36 PROPOSED: Approve minutes of the 25 August 2016 Telecon: http://www.w3.org/2016/08/25-shapes-minutes 18:06:16 +1 18:06:24 +1 18:06:27 +1 18:06:29 RESOLVED: Approve minutes of the 25 August 2016 Telecon: http://www.w3.org/2016/08/25-shapes-minutes 18:06:30 +1 18:06:33 +1 18:07:20 DONE: Dimitris to send a thank you to pfps, linking https://www.w3.org/2014/data-shapes/wiki/Public_Comments#Peter.27s_Email_2016-08-16 18:07:44 no regrets for next meeting 18:07:56 topic: ISSUE-150 18:08:50 in last week's exciting espisode, we conclused that SHACL does not treat sh:Violation differently from other severities to determine if a node validates against a shape 18:09:26 scribenick:kcoyle 18:10:37 in section 3: validation definition 18:10:42 eric:question - is there any place in spec where there is idea of declaring whether node validations against shape 18:10:52 no, it is standalone 18:11:50 q+ 18:12:15 eric: asking Dimitris re: nesting of errors: Dimitris prefers least severe "win" when validating; kcoyld and Arnaud prefer most severe; 18:12:20 ack next 18:12:23 ... other options is to base on nesting position 18:12:57 no, Arnaud prefers outermost wins 18:13:06 Dimitris: prefer that outer shape overrides all; this is simplest solutionl 18:13:14 but I can live with the other way around 18:13:33 eric: simplist is that inner defines it - don't have to pass parameters or filter erros 18:14:12 Dimitris: when severity defined in nesting would not be allowed; if severity defined then nesting position not taken into account 18:14:41 eric: inner shape wins; can validate without awareness of cntext of outer severity 18:15:03 Dimitris: nesting is subjective; simple approach should win 18:15:24 eric: what you do gets more complicated as you nest down 18:15:53 it's def. better than ignoring the sev. of the nested shape(s) 18:16:13 eric: smplest approach - severity defined by innermost shape 18:16:45 what if there's no "inner most" shape? 18:17:09 PROPOSED: the severity of violations of nested shapes is determined only by the severity of the constraint in which the violation occured 18:18:43 recursion is undefined anyway in SHACL 18:18:51 +1 18:18:57 eric: much of this depends on recursion 18:19:02 q+ 18:19:10 ack next 18:19:49 present+ 18:19:53 q+ 18:20:57 ack next 18:21:07 +0 18:21:42 +.05 18:21:45 +.5 18:23:08 holger: what about a case with A or B? and both are validated? 18:23:41 q+ 18:23:41 eric: explaining a nested constraint 18:24:06 hknublau: I would prefer not to have any relationship between these. Whatever is defined locally is used 18:24:08 ack next 18:25:00 Dimitris: if I have a nested shape and both fail, if inner shape has two severities 18:25:16 hknublau: system will have to evaluate all of them to find out what the severity is 18:25:47 Dimitris: neither solution is perfect 18:26:55 that was also my understanding 18:27:08 +1 18:27:14 hknublau: this is compatible with current SPARQL queries 18:27:23 +1 18:27:25 +1 18:27:44 RESOLVED: the severity of violations of nested shapes is determined only by the severity of the constraint in which the violation occured 18:28:23 holger is right 18:28:30 issue-150 can be closed 18:28:43 PROPOSED: close issue-150 18:28:47 +1 18:28:47 +1 18:28:48 +1 18:28:50 _1 18:28:53 RESOLVED: close issue-150 18:28:54 +1 18:28:56 +1 18:29:00 +1 18:29:14 q+ 18:29:28 s/close issue-150/close issue-150 based on previous two resolutions/ 18:27:56 topic: ISSUE-105 18:27:59 ISSUE-105 18:27:59 ISSUE-105 -- SHACL SPARQL constraints depend on namespaces in a graph, which is not defined -- open 18:27:59 http://www.w3.org/2014/data-shapes/track/issues/105 18:29:44 hknublau: introduction: raised by Peter; for SPARQL extension; is curently unspecified 18:30:01 ... should sparql queries reference prexies that are used somewhere else? 18:30:04 TallTed has joined #shapes present+ 18:30:17 ... SELECT ... WEHRE... rdfs:label... 18:30:53 ... conservative is either use whole URI or always include prefix in sparql query - thus always self-contained 18:31:19 ... other approaches: have mechanism in graph holding shapes to declare prefixes globallyt (H's preference) 18:31:35 .... means don't need to repeat prefixes 18:31:45 sh:prefix "ex" 18:32:04 ... examples of namespace declaration 18:32:37 engine would use those prefix declarations into query 18:32:43 present+ 18:34:04 hknublau: would put it in OWL ontology - will be there when OWL import used 18:34:22 ericP: you are making assertions about someone else mainspace? 18:34:33 s/mainspace/namespace/ 18:34:51 q+ 18:35:09 ack next 18:35:11 hknublau: most files already have namespace declarations; usually clear one-to-one mapping 18:35:19 ack next 18:35:50 TallTed: in my experience collisions happen - multiple prefixes for same namespace are used 18:36:03 ... i can see this as an import mechansim, but not sure how to make this work 18:36:19 q+ 18:36:22 ... enviornmental setting could be specific, but on large scale more problem than solution 18:36:26 ack next 18:36:52 hknublau: in case of dcterms/dct can declare both prefixes for same namespace 18:37:17 ... problem lies where same prefix used for different namespaces 18:37:21 Turtle: 18:37:26 PREFIX ex: 18:37:42 <> sh:globalPrefixDeclList ([sh:prefix "ex"; sh:ns ]). 18:37:58 sh:constraint "ASK { ex:...}" . 18:38:32 ericP: either way we have to duplicate prefixes both in turtle prolog and in an rdf structure 18:38:55 ... this is a variation of holger's proposal - made global list 18:39:11 ... not stick assertions onto nodes where describing someone else's namespace 18:39:26 q+ 18:39:44 TallTed: no, this doesn't assuage my concern; point is to provide shorthand for sparql 18:40:21 ... when you have multiply declared prefix, whether or not same namespace, sparql 1.1 kicks back an error 18:40:51 ack next 18:40:56 ... anyone who makes conformant sparql queries (including prefixes) runs risk of error 18:41:37 marqh: don't see extra benefit; might write this in a tool that makes complicated shapes, but not if doing quick by hand 18:41:42 q+ 18:41:44 ... feels like this comes at a price 18:42:00 ack next 18:43:00 hknublau: benefit is for people writing turtle files by hand; believe majority of rdf developers are writing turtle by hand 18:43:38 ... in a tool, you could extend prefixes; or insert them in the beginning 18:44:00 ... believe users want to see only minimal 18:44:43 TallTed: the tool can hide prefix declarations; turtle file that results must include jprefix declarations 18:44:52 ... even most common namespaces 18:45:43 hknublau: prefixes of turtle files are unrelated 18:46:01 TallTed: prefix declaration does not survive serialization 18:46:25 ... but if prefix not there, it's an error 18:46:46 hknublau: when someone writes a shape, they know what graph they are in 18:46:57 TallTed: but reuse... then what happens? 18:49:01 Dimitris: see Ted's point, just re-use parameters, which would minimize need to re-write sparql queries 18:49:48 simonstey: see both points; implementation-wise see Holger's point 18:50:00 ... but also see Ted's because easier to implement but can cause problems 18:50:34 ... more in favor of an error-proof solution; 18:51:14 pano: same as simon, but leaning towards what Holger is saying - it should also be easy to write sparql 18:51:37 ...queries and use prefixes 18:52:19 ... if you want to re-use shapes need to be careful 18:52:44 TallTed: the shapes that you produce will not be reusable because not conformant 18:53:17 STRAWPOLL: a: some prefix mechanism, b: no no no! 18:53:30 STRAWPOLL: a: some prefix mechanism, b: no prefix mechanism 18:53:53 a) +1 b) -1 18:54:41 q+ 18:54:46 q+ 18:55:45 Dimitris: This is another which has precedence issue 18:56:01 ack next 18:56:08 ack next 18:56:40 simonstey: can we say - you have to write correct sparql queries in your shacl constraints including prefix declarations 18:57:05 ... you have to specify respective namespaces; you might want to consider using a tool to 18:57:16 ... automatically include this in all sparql queries 18:57:29 ... this is where tools improve user experience 18:59:28 for example... four namespaces are in fact associated with `dc:`, in the wild -- http://prefix.cc/dc 18:59:41 a) 0 b) +1 19:00:03 q+ 19:00:33 hknublau: there is a safe mechanism because the sparql queries are embeded in objects 19:00:50 ... tools could use standard and local prefixes 19:01:28 TallTed: what's "standard"? 19:01:32 http://prefix.cc/sh 19:01:41 has two wild namespaces 19:01:41 a) -1 b) +1 19:02:03 a) 0 b) 1 19:02:12 a: -0.9 b: +0.9 19:02:28 a) +0.1 b) -0.1 19:02:37 a) 0 b) 0.5 19:04:04 hknublau: prefix declaration extends other prefix declaration 19:04:24 TallTed: concatenates sh:prefix with sh:query... or something like that; 19:04:46 ... there might be various levels, subclasses... subpredicates 19:04:56 hknublau: I will write proposal for next week 19:05:21 topic: ISSUE-137 19:05:30 ISSUE-137 19:05:30 ISSUE-137 -- Missing constraint for language tag -- open 19:05:30 http://www.w3.org/2014/data-shapes/track/issues/137 19:06:27 q+ 19:06:28 sh:hasLanguageTag 19:06:48 s/subclasses... subpredicates/subpredicates like system, user, etc./ 19:07:16 kcoyle: it's not just that it has *a* language tag, or even a specific language tag, but also unique language tag 19:07:24 q- 19:07:34 ack next 19:07:37 ack next 19:08:12 ericP: uniqueLang does #3 of kcoyle's three 19:09:30 ... 'hasLanguageTag" - can it use the more complex language tags? 19:09:48 that is sh:datatype rdf:langString 19:09:51 For that we already have sh:datatype rdf:langString 19:11:03 I think that a sh:languageTagIn ( "en" "fr" ... ) is more useful 19:11:25 I like that, Dimitris 19:12:00 ericP: there's class and type includes to see if it's in a particular set 19:12:54 ... analogous to what we do already with typing 19:13:19 hknublau: don't hhave classIn anymore; using or 19:13:46 need to check... 1. every value has unique langtag; 2. there's a value for every langtag in list; 3. there are no values with langtags not in this list; 4. there is at least one value with a langtag in list; 5. ? 19:13:49 ericP: sh:in is an enumerative property; value must be in list 19:14:44 good list Ted. Maybe we need to put this in wiki 19:16:06 ericP: this is a matrix 19:16:46 STRAWPOLL: a: persue Bart's language tags, b: drop for now 19:17:03 a: +1 b: -.5 19:17:05 "at least one of" , "at least all of" , "no more than" ; "uniquness" is distinct 19:17:10 a) -0.5 b) +1 (easily handled by extension mechanism) 19:17:17 s/persue/pursue/ 19:17:38 a) 0.8 b) 0.1 19:17:42 a) +.5 b) 0 19:17:47 a)0 b)0 19:17:47 a: +0.5 b: -0.5 19:18:17 s/uniquness/uniqueness/ 19:18:47 s/"at least one of" ,/"none of" , "at least one of" ,/ 19:19:16 ACTION: kcoyle to create some wiki documentation exploring the requirements 19:19:16 Created ACTION-41 - Create some wiki documentation exploring the requirements [on Karen Coyle - due 2016-09-08]. 19:20:12 topic: ISSUE-71 19:20:28 ISSUE-71 19:20:28 ISSUE-71 -- SHACL Endpoint Protocol -- open 19:20:28 http://www.w3.org/2014/data-shapes/track/issues/71 19:20:49 hknublau: similar to what sparql endpoints provide - a web proptocal that would define how people can 19:21:10 send a complete shapes graph to a database and shacl would return result 19:21:17 ... willing to withdraw it 19:22:12 ericP: using something like this in shex; can be used to evaluate sets you don't want to move around 19:22:31 ... i'm going to test this node against this remote shape 19:22:35 q+ 19:23:24 ... it's simple - there's a shape, a node, 19:23:29 ack next 19:23:58 q+ 19:24:40 q- 19:24:41 ack next 19:25:21 kcoyle: is this the library case? going against remote vocabularies? 19:25:30 hknublau: yes, same use case 19:26:33 kcoyle: is this part of the standard? or separate? 19:26:47 kcoyle: could this be a related standard? 19:26:56 Without a standard, each database vendor will invent their own protocol. 19:27:17 ericP: a way in shex to say that this is external 19:30:31 ACTION: kcoyle to document library use cases for (remote) validation protocol 19:30:31 Created ACTION-42 - Document library use cases for (remote) validation protocol [on Karen Coyle - due 2016-09-08]. 19:30:34 kcoyle: opposes closing this without more investigation of use cases 19:31:02 ADJOURNED 19:31:29 Dimitris has left #shapes 19:40:16 trackbot, end meeting 19:40:16 Zakim, list attendees 19:40:16 As of this point the attendees have been simonstey, hknublau, pano, kcoyle, ericP, marqh, Dimitris, Arnaud, TallTed 19:40:24 RRSAgent, please draft minutes 19:40:24 I have made the request to generate http://www.w3.org/2016/09/01-shapes-minutes.html trackbot 19:40:25 RRSAgent, bye 19:40:25 I see 2 open action items saved in http://www.w3.org/2016/09/01-shapes-actions.rdf : 19:40:25 ACTION: kcoyle to create some wiki documentation exploring the requirements [1] 19:40:25 recorded in http://www.w3.org/2016/09/01-shapes-irc#T19-19-16 19:40:25 ACTION: kcoyle to document library use cases for (remote) validation protocol [2] 19:40:25 recorded in http://www.w3.org/2016/09/01-shapes-irc#T19-30-31