- From: Holger Knublauch <holger@topquadrant.com>
- Date: Thu, 13 Aug 2015 15:54:49 +1000
- To: RDF Data Shapes Working Group <public-data-shapes-wg@w3.org>
On 8/13/2015 15:46, Simon Steyskal wrote:
> Hi!
>
> At a first glance I definitly see the benefits of your proposed
> approach. However, I've two questions:
>
> 1) You've implemented those sh:ValidationFunctions as ASK queries
> instead of SELECTs -> don't we lose important information for creating
> violation messages (e.g. this (?this AS ?subject) ?predicate ?object
> ?datatype).
The message is defined by the surrounding template, using sh:message. I
cannot think of other important information that could not be generalized.
> 2) Is there a particular reason why
> "sh:AbstractArgumentMaxCountConstraint" isn't using such a validation
> function? (Probably because you just wanted to exemplify the approach
> on a handful of examples?)
sh:minCount, sh:maxCount and their equivalents for Arguments work
differently. The sh:PropertyValueConstraintTemplates all iterate over
all values and then check each value one by one. Min/max count however
just look at the total number of values. Also, sh:hasValue is different.
However, sh:datatype, sh:allowedValues, sh:valueClass,
sh:directValueType, sh:nodeKind (as well as the misc XSD inspired
facets) all follow the pattern that I am trying to generalize. So
anything that uses
WHERE {
?this ?predicate ?value .
doSomeThingWith(?value)
}
fits into the scheme.
Thanks,
Holger
Received on Thursday, 13 August 2015 05:55:25 UTC