- From: Holger Knublauch <holger@topquadrant.com>
- Date: Sat, 20 Jun 2015 09:22:28 +1000
- To: public-data-shapes-wg <public-data-shapes-wg@w3.org>
- Message-ID: <5584A434.4090109@topquadrant.com>
On 6/20/15 6:35 AM, Dimitris Kontokostas wrote: > From my point of view a W3C spec should strive for convergence and not > diversity. As soon as we voted in favor of SPARQL it was clear that not every SHACL file will work on every platform. Most SPARQL processors have their own extension functions (e.g. afn:localname, GeoSPARQL or even magic properties), and people do use them. The situation has become even more hopeless after the vote on allowing other languages beside SPARQL. Instead of seeing this diversity as a problem, I think we should embrace it as a reality and an opportunity. SHACL should allow people to get their work done, and much of this work will be in controlled environments such as enterprise applications. Our answer to the Linked Data vision of completely interoperable models is the Core Vocabulary. This will be the common ground that is supposed to work everywhere. Users venturing into extensions need to be aware that they are outside of convergence, and SHACL engines need to be built to fail gracefully on unsupported features. > We already have core + sparql. Now we want to break sparql into two > modes and maybe javascript in another x modes in the future. I don't want to break SPARQL into two modes at all. My preferred outcome would be to rely on http://www.w3.org/2014/data-shapes/track/issues/71 only. Any other access to SPARQL endpoints should be a temporary solution only. Vendors with native SHACL support will have a business advantage, so we hopefully see adoption of such a protocol soon. > I will certainly not block going into this direction but will not > endorse it either. > > These are entirely different setups, for different user groups. > This is not a one-size-fits-all discussion. If the SPARQL endpoint > people don't need access to ?shapesGraph, SHACL functions, > recursion and blank nodes then fine for me, but they should not > block the dataset people from covering their use cases. > > > Besides ?shapesGraph I never mentioned blank nodes or shacl functions > (which I am close to implementing). I already said I don't support > recursion it but it's a big way from not supporting to blocking. This sounds good. I mentioned SHACL functions because SPARQL queries wouldn't be able to use them against SPARQL endpoints, unless you go through something like the protocol above. BTW I noticed there is another complication if we dropped ?shapesGraph: template arguments can be rdf:Lists that are stored in the shapes graph. In order to walk these lists, ?shapesGraph access is needed. To get rid of this we would need to come up with a fairly sophisticated text insertion mechanism that generates various alternative SPARQL serializations for different use cases. And even then I don't see how we could implement order-preserving scenarios such as the tail recursion implemented by the sh:walkShapesList and lists of bnode shapes. An alternative again would be to disallow rdf:List arguments outside of the core, but I know from experience that SPIN users asked about multi-valued template arguments. So what are your thoughts on ISSUE-71? Would this help with your dbpedia use cases? Regards, Holger
Received on Friday, 19 June 2015 23:23:09 UTC