13:55:38 RRSAgent has joined #sparql 13:55:38 logging to http://www.w3.org/2012/03/20-sparql-irc 13:55:40 RRSAgent, make logs world 13:55:40 Zakim has joined #sparql 13:55:42 Zakim, this will be 77277 13:55:42 ok, trackbot; I see SW_(SPARQL)10:00AM scheduled to start in 5 minutes 13:55:43 Meeting: SPARQL Working Group Teleconference 13:55:43 Date: 20 March 2012 13:55:48 zakim, this will be SPARQL 13:55:48 ok, LeeF; I see SW_(SPARQL)10:00AM scheduled to start in 5 minutes 13:56:04 Agenda: http://lists.w3.org/Archives/Public/public-rdf-dawg/2012JanMar/0262.html 13:56:10 Regrets: chimezie, kasei 13:56:30 Last week's minutes: http://www.w3.org/2009/sparql/meeting/2012-03-13 13:56:39 AxelPolleres has joined #sparql 13:56:54 SteveH, any chance I could trouble you to scribe today? 13:57:19 LeeF, hm, think I did a stint not that long ago - it would be possible I think 13:57:59 …depending on voice quality, it's a bit variable over voip 13:57:59 I've no doubt that you're right - our scribe list is rather bit-rotted these days -- so no worries if you'd rather not 13:58:25 I would rather not, but if you can't get a volunteer I'll do it 13:58:29 thanks 13:58:35 pgearon, any chance you could scribe for us today? 13:58:49 zakim, code? 13:58:49 the conference code is 77277 (tel:+1.617.761.6200 sip:zakim@voip.w3.org), LeeF 13:59:38 LeeF, I may have problems 13:59:38 SW_(SPARQL)10:00AM has now started 13:59:45 +LeeF 13:59:46 +??P10 13:59:52 Zakim, ??P10 is me 13:59:52 +SteveH; got it 14:00:03 I have JUST got a notification of "Tornado warning" for our neighborhood 14:00:10 like about 3 minutes ago 14:00:15 wow 14:00:27 +Olivier_ 14:00:38 good ol' "can't scribe; tornado". it's like the "dog ate my homework" of standards work 14:00:53 we have storms forecast for today, I'm just trying to figure out if it's supposed to be a drill or something 14:00:53 we've got guys with jackhammers outside the office, which means I'll have to keep muting 14:01:04 seriously though, be careful, Paul! 14:01:23 MattPerry has joined #sparql 14:01:36 +??P20 14:01:46 Zakim, ??P20 is me 14:01:46 +bglimm; got it 14:01:55 zakim, who's on the phone? 14:01:55 On the phone I see SteveH, LeeF, Olivier_, bglimm 14:02:10 cbuilara has joined #sparql 14:02:17 Zakim, mute me 14:02:19 bglimm should now be muted 14:02:26 +MattPerry 14:02:28 +??P26 14:02:32 zakim, P26 is me 14:02:33 sorry, AndyS, I do not recognize a party named 'P26' 14:02:37 zakim, ??P26 is me 14:02:37 +AndyS; got it 14:03:00 +AxelPolleres 14:03:11 Zakim, unmute me 14:03:11 bglimm should no longer be muted 14:03:38 Zakim, mute me 14:03:38 bglimm should now be muted 14:03:51 zakim, who 14:03:51 I don't understand 'who', LeeF 14:03:54 zakim, who's here? 14:03:54 On the phone I see SteveH, LeeF, Olivier_, bglimm (muted), MattPerry, AndyS, AxelPolleres 14:03:56 On IRC I see cbuilara, MattPerry, AxelPolleres, Zakim, RRSAgent, LeeF, Olivier, MacTed, bglimm, SteveH, pgearon, AndyS, NickH, trackbot, kasei, ya, ericP, sandro 14:04:17 cbuilara, ericP, sandro, NickH -- will you be joining us today? 14:04:41 I'll scribe 14:04:56 but if the discussions get going, may need help. 14:05:12 scribenick: AndyS 14:05:17 topic: Admin 14:06:04 regrest: kasei, chimezie 14:06:06 Next meeting: March 27th, back to standard time everywhere 14:06:17 I am not around 14:06:17 LeeF, sorry, regrets --- this meeting conflicts with eGov IG this week due to time zone craziness. 14:06:26 or at least at risk 14:06:29 Regrets +sandro 14:07:08 sandro, if you have a feeling on the property paths options as summarized in http://lists.w3.org/Archives/Public/public-rdf-dawg/2012JanMar/0262.html, it would be awesome to have you share it in IRC :) 14:07:42 regrets: kasei, chimezie 14:08:03 LeeF: anything we're likely to change based on recent grammar / escaping changes? 14:08:10 topic: RDF-WG 14:08:12 AndyS: not likely, editors not inclined to make changes -- nothing resolved in RDF WG yet 14:08:20 cbuilara has joined #sparql 14:08:32 Turtle editors not inclined to make changes at this time but no decision yet. 14:08:43 + +1.917.522.aaaa 14:08:55 zakim, +aaaa is me 14:08:55 sorry, cbuilara, I do not recognize a party named '+aaaa' 14:09:12 zakim, +.aaaa is me 14:09:12 sorry, cbuilara, I do not recognize a party named '+.aaaa' 14:09:20 - +1.917.522.aaaa 14:09:36 + +1.917.522.aabb 14:09:44 topic: property paths 14:09:49 summary email: http://lists.w3.org/Archives/Public/public-rdf-dawg/2012JanMar/0262.html 14:09:51 Topic: Property Paths 14:09:59 zakim, +1.917.522.aabb is me 14:09:59 +cbuilara; got it 14:10:17 Goal - ask what people think currently and have a strawpoll. 14:10:25 LeeF: Goal - ask what people think currently and have a strawpoll. 14:10:27 +pgearon 14:10:37 +ericP 14:10:40 ... hopefully to choose a direction. 14:11:07 ... Opt 1 - as 2LC. Rewrite using SELECT DISTINCT subquery. 14:11:22 ... no LC, no new issues from new designs. 14:11:52 ... but objections may be raised so needs a justification to the director 14:12:00 ... 3 commenters involved 14:12:30 ... and it may not the best choice (from experience and theory). 14:12:39 do we have any use cases from the potential objecters where rewriting in a DISTINCT subselect won't suffice? 14:13:16 Opt 2 -- DISTINCT, non-counting * and +, counting {*}, {+} 14:13:33 ... addresses concerns (offlist private conversation had) 14:13:42 ... full range of possibilities. 14:14:02 ... but 3LC needed 14:14:08 ... more implementation tax 14:14:20 ... new and quite late. 14:14:36 (dragons of various colors possible) 14:15:10 Opt 3 -- just add DISTINCT around path (?? part paths or full path only) 14:15:23 ... some expressivity choices 14:15:38 ... 3LC, and impl tax. 14:16:13 Opt 4 -- Just */+ and {*}/{+}, no DISTINCT operator. 14:16:33 ... 3LC, may not meeting comments. 14:16:51 Opt 5 -- make PP non-normative 14:17:11 ... 3LC? (unclear), lower impl tax, 14:17:23 i think that would require a new LC as folks are expecting property paths to e.g. traverse lists 14:17:40 ... but a significant feature, and in F&R, is removed 14:17:56 ... may lead to other objections 14:17:58 q+ 14:18:00 q+ to ask about (2) 14:18:02 ack AndyS 14:18:14 Zakim, unmute me 14:18:14 bglimm should no longer be muted 14:18:15 q+ to ask if we have any use cases from the potential objecters where rewriting in a DISTINCT subselect won't suffice 14:18:26 AndyS: technical question when you say DISTINCT(path) in 2 - do you mean whole path or some part of the path? 14:18:42 LeeF: whole path 14:18:50 ack bglimm 14:18:50 bglimm, you wanted to ask about (2) 14:18:53 Clarification of opt 2 : DISTINCT(path) means whole path not part of a path. 14:18:58 q+ to ask about other people's comfort 14:18:59 ack me 14:19:02 ack ericP 14:19:02 ericP, you wanted to ask if we have any use cases from the potential objecters where rewriting in a DISTINCT subselect won't suffice 14:19:21 Zakim, mute me 14:19:21 bglimm should now be muted 14:19:38 eric: question - any case where SELECT DISTINCT path does not work? 14:19:52 axel: bnodes in subj/obj. 14:19:55 q+ 14:20:16 (basically the projection is messed up as bnodes are a sort of projection) 14:20:30 somthing like that one .... { ?S DISTINCT(path) [ ... ] } 14:20:46 ... exactly, as andy says. 14:21:32 AndyS: The problem with that would be that you'd be expecting implementations to recognize the distinct subqueries and do something special with it, so implementation cost wouldn't be changed at all 14:21:43 andy: Impl burden is not changed - assumes an impl spots an optimization 14:22:33 q- 14:22:36 q? 14:22:38 ack SteveH 14:22:38 SteveH, you wanted to ask about other people's comfort 14:23:13 SteveH: reservation about understanding of PP, and significant problems may yet arise. 14:23:51 q? 14:24:02 q+ 14:24:04 ... want to hear how comfortable people are with the draft text 14:24:16 ack AxelPolleres 14:24:29 (andy can answer but want to hear others) 14:24:29 I have not implemented them. sort of afraid of them 14:25:07 axel; Non-norm PP may address commenters concerns. 14:25:49 I have implemented DISTINCT property paths. Haven't done counted paths yet 14:26:28 steveH: make new design non-norm?? 14:27:00 We have seen a lot of interest in property paths as a poor man's inference for transitive properties. 14:27:01 we're using property paths all the time. We use them for list membership 14:28:22 leef: see significant interest in the feature ... driven by some UCs that can't be addressed by SPARQL 1.0 e.g lists, trans properties 14:28:36 AndyS: I've found pp quite easy to implement 14:28:51 ... i've implemented a recursive evaluator that takes the operator tree straight from parsing and runs eval() on it 14:29:23 ... some paths simply get rewritten into triple patterns and UNIONs 14:30:41 ... i've tried counting & non-counting versions on the Chileans examples (foaf:knows on clique graphs) makes huge implementation speed difference from just changing one or two lines of code 14:30:52 ... any questions about how I've implemented this? 14:31:21 SteveH: our concerns are that it's not worth implementing unless it's optimized, and that seems to be way too much of a challenge 14:31:30 AndyS: I've optimized for certain use cases 14:31:57 ... have not optimized for the case where subj and obj are both unconstrained, free variables 14:32:44 SteveH: seems like it requires an entire regex engine and evaluator for an unknown language 14:32:59 AndyS: it's not doing regexes on strings 14:33:04 SteveH: it's significantly easier? 14:33:09 AndyS: yes 14:33:25 SteveH: i don't have the intuition for why it's significantl yeasier - it still has the same backtracking problems 14:33:37 AndyS: we don't have some regex features that makes them tricky, like capturing groups 14:33:51 ... this is jus the matching aspects of regexes 14:34:12 ... for non-counting, there's no backtracking because it's just a positive match, no negative features 14:34:39 q? 14:35:01 zakim, who's on the phone? 14:35:01 On the phone I see SteveH, LeeF, Olivier_, bglimm (muted), MattPerry, AndyS, AxelPolleres, cbuilara, pgearon, ericP 14:35:22 AndyS: Steve, does your organization have possible use cases for pp if they had been around? 14:35:30 SteveH: it's an assumption - i'm sure we do but don't know what they are 14:35:35 AndyS: OK 14:35:52 SteveH: we tend to have wacky use cases anyway 14:36:07 q+ try to factor those who need exhaustive vs. those who need distinct 14:36:11 ack ericP 14:37:39 -pgearon 14:37:47 EricP: Do they think non-counting is more intuitive? 14:38:01 LeeF: it looks that way 14:38:22 EricP: Who needs what? 14:38:51 LeeF: It's about performance not wrong results. 14:39:09 q+ 14:39:32 EricP: axel says bnodes mean SELECT DISTINCT may have problems. 14:39:44 ack try 14:39:44 try, you wanted to factor those who need exhaustive vs. those who need distinct 14:39:56 ack AxelPolleres 14:39:58 ack axel 14:40:17 Axel: { ?s path [] } 14:40:56 { ?s path [] } 14:40:58 ... bnodes also generate dups so need careful handling (implicit projection). 14:41:10 { ?s path [] } vs. { ?s path ?x } 14:41:16 ... DISTINCT(path) makes it easier to spot the right algorithm to use. 14:42:03 + +1.540.841.aacc 14:42:16 q+ to say there is a UC for non-counting 14:42:33 { ?s path1 [ path2 ... [ ... ] ] } 14:43:04 { ?s path [] } -> { ?s path ?x } -> { { SELECT ?s { ?s path ?x } GROUP BY ?x } } 14:43:10 ... rewrite is hard - need to specially redo as generated named variables that get hidden but at a different point to how bnodes go away 14:43:20 ack AndyS 14:43:20 AndyS, you wanted to say there is a UC for non-counting 14:44:00 the common use case for non-counting is "reachability" 14:44:05 AndyS: the use case for non-counting is not that you can't write it the other way is connectivity 14:44:31 ...you can solve them the other way, but you're asking the query writer to transform a problem that was naturally expressed as reachability into counting and then back again 14:44:37 q? 14:46:04 LeeF: strawpoll on all five options -- standard way. Will write each out - please +1/0/-1(objection possible), only integer values 14:46:23 STRAWPOLL on option 1, leave as-is in 2LC with no change 14:46:26 +1 14:46:27 0 14:46:29 0 (concerned about formal objection) 14:46:30 0 14:46:30 0 14:46:34 0 14:46:35 0 14:46:43 +1 14:47:16 pgearon: -1 14:47:36 0 14:47:56 sorry, thouth it was already the next strawpoll 14:48:02 STRAWPOLL on option 2, include both DISTINCT(full-path) and {+}/{*} operators 14:48:05 -1 14:48:07 0 14:48:08 0 14:48:11 0 14:48:14 0 14:48:16 0 14:48:19 0 14:48:19 What about DISTINCT(path component)? 14:48:31 0 14:48:41 pgearon has joined #sparql 14:48:53 q+ 14:49:23 ack AxelPolleres 14:50:10 +1 and pref general DISTINCT(path-component) 14:50:10 opt 2: +1 14:50:37 STRAWPOLL on option 3, add DISTINCT(full-path) only 14:50:44 +1, but with reservations 14:50:45 +1 14:50:46 +1 14:50:49 +1 14:50:49 +1 14:50:52 +1 14:50:53 +1 14:50:54 0 14:50:56 +1 14:50:58 0 14:51:27 (in +3 months) 14:51:43 STRAWPOLL on option 5, mark property paths as non-normative 14:52:11 0 14:52:15 -1 14:52:16 0 14:52:18 STRAWPOLL on option 5, mark our best guess at what property paths should be as non-normative 14:52:19 -1 14:52:21 0 14:52:22 0 14:52:24 -1 14:52:24 0 14:52:25 +1 14:52:27 0 14:53:00 Best consensus is opt 3. 14:53:01 +1 to LeeF's impending proposal on option 3 14:53:13 -ericP 14:57:16 PROPOSED: Add a DISTINCT modifier around full property paths to SPARQL 1.1 Query, and add work on counting & non-counting operators or partial paths to the future work list 14:57:47 seconded 14:57:50 abstain 14:58:00 +1 14:58:00 abstain 14:58:11 +1 14:58:22 RESOLVED: Add a DISTINCT modifier around full property paths to SPARQL 1.1 Query, and add work on counting & non-counting operators or partial paths to the future work list 14:58:35 ACTION: Lee to add the counting/noncounting operators and distinct partial paths to future work list 14:58:35 Created ACTION-604 - Add the counting/noncounting operators and distinct partial paths to future work list [on Lee Feigenbaum - due 2012-03-27]. 14:59:47 Birte - this affects entailment. Need to restrict entailment to BGPs without PP? 14:59:48 -LeeF 14:59:49 -Olivier_ 14:59:53 -MattPerry 14:59:54 -bglimm 14:59:54 -SteveH 14:59:55 bze 14:59:56 -AxelPolleres 14:59:58 -cbuilara 15:00:01 - +1.540.841.aacc 15:00:06 adjourned 15:00:09 -AndyS 15:00:10 SW_(SPARQL)10:00AM has ended 15:00:10 Attendees were LeeF, SteveH, Olivier_, bglimm, MattPerry, AndyS, AxelPolleres, +1.917.522.aaaa, cbuilara, pgearon, ericP, +1.540.841.aacc 15:21:27 AxelPolleres has joined #sparql 15:34:47 AxelPolleres has joined #sparql 15:48:52 AxelPolleres has joined #sparql 15:52:32 AxelPolleres has joined #sparql 16:05:50 AxelPolleres has joined #sparql 16:19:10 AxelPolleres has joined #sparql 16:32:24 AxelPolleres has joined #sparql 16:45:32 AxelPolleres has joined #sparql 16:58:44 AxelPolleres has joined #sparql 17:08:53 Zakim has left #sparql 17:12:49 AxelPolleres has joined #sparql 17:16:31 AxelPolleres has joined #sparql 17:20:06 AxelPolleres has joined #sparql 17:33:31 AxelPolleres has joined #sparql 17:46:46 AxelPolleres has joined #sparql 17:50:20 AxelPolleres has joined #sparql 17:54:11 AxelPolleres has joined #sparql 17:57:52 AxelPolleres has joined #sparql 18:01:32 AxelPolleres has joined #sparql 18:05:10 AxelPolleres has joined #sparql 18:55:04 AndyS has joined #sparql