- From: Dimitris Kontokostas <kontokostas@informatik.uni-leipzig.de>
- Date: Fri, 24 Jun 2016 23:10:51 +0100
- To: Karen Coyle <kcoyle@kcoyle.net>
- Cc: public-data-shapes-wg <public-data-shapes-wg@w3.org>
- Message-ID: <CA+u4+a3-ZiKHnu9GZZn3-a-ft5Jh0rLB=xGDNPF4ZNu+bMOFrw@mail.gmail.com>
For me it is also fine to say that it is considered a good/best practice to keep scopes and shapes separated but I would prefer not to require it. Otherwise we would have to change a lot in the spec for things that are quite stable now e.g. validation will require 3 graphs, data, shapes & scopes We already suggest owl:imports in the spec as a way to merge different shapes graphs and this could be an option to keep shapes and scopes separate On Thu, Jun 23, 2016 at 5:22 PM, Karen Coyle <kcoyle@kcoyle.net> wrote: > I'm fine with creating a separation between scoping and constraint > definitions, although I think that SHACL should provide both or else it > cannot be a full, programmable solution to the RDF validation problem. By > separating them, a different solution to either function could be > substituted in the future. > > kc > > > On 6/22/16 10:26 PM, Eric Prud'hommeaux wrote: > >> * Holger Knublauch <holger@topquadrant.com> [2016-06-23 09:15+1000] >> >>> Hi Eric, >>> >>> when a shape is validated as part of a "nested" sh:shape, sh:and, sh:not >>> etc >>> then its declared scope is ignored. Only its sh:filterShapes will be >>> considered. >>> >> >> Understood, but this isn't about "nested" shapes. Many use cases >> involve a sort of late binding where the invocation context determines >> pairings of node/shape for validation. UC4 is explicit about this, but >> I expect the case where a user interface invokes sh:hasShape directly >> to be an extremely common case in linked data. >> >> We could get more reusability out of the schema by moving sh:scope* >> into a separate "control graph" (Peter's term), allowing that schema >> to be applied to other data that doesn't have e.g. a discriminating >> type arc. >> >> >> This is one of the reasons why the current spec states that node >>> constraints >>> are validated against each focus node individually, because the set of >>> scope >>> nodes is relatively orthogonal to the shape's current execution context. >>> >>> HTH >>> Holger >>> >>> >>> On 23/06/2016 8:03, Eric Prud'hommeaux wrote: >>> >>>> Is a validation engine expected to always honor sh:scope*? >>>> >>>> Apart from cardinality constraints on subjects of type arcs, >>>> validations boil down to various choreographies to invoke sh:hasShape, >>>> which effectively validates a node in a graph against a shape in a schema. >>>> There are of course an unenumerable number of ways that one may wish to >>>> connect nodes to shapes, user interface, posts to LD containers, routine >>>> sweeps of data stores, etc. So if one were to invoke a validation and the >>>> schema included some conflicting sh:scopeNode or sh:scopeProperty >>>> assertions, which would win? >>>> >>> >>> >>> >> > -- > Karen Coyle > kcoyle@kcoyle.net http://kcoyle.net > m: 1-510-435-8234 > skype: kcoylenet/+1-510-984-3600 > > -- Dimitris Kontokostas Department of Computer Science, University of Leipzig & DBpedia Association Projects: http://dbpedia.org, http://rdfunit.aksw.org, http://aligned-project.eu Homepage: http://aksw.org/DimitrisKontokostas Research Group: AKSW/KILT http://aksw.org/Groups/KILT
Received on Friday, 24 June 2016 22:11:46 UTC