Re: vote for supporting "closed shapes"

On 4/25/2015 1:21, Erik Wilde wrote:
>
> that's the problem: ideally, you would want to have a vocabulary 
> identified, so that terms from it can be identified as belonging to 
> it. in XML, namespaces do that for you, and because that's a very 
> usefu scoping mechanism, that's how a lot of vocabularies are defined 
> and used.

Hi Erik,

to clarify: are you looking for some way to express that a given 
resource can only have properties from a certain namespace? For example,

SELECT ?subject ?predicate ?object
WHERE {
     ?subject ?predicate ?object .
     FILTER (!STRSTARTS(str(?predicate), "http://example.org/ns#"))
}

would return all triples of the given ?subject that have a predicate 
from another namespace than the provided one.

A query as above would be straight-forward to generalize into a SHACL 
template, so that the syntax would be something like

ex:ExampleShape
     sh:constraint [
         a sh:ClosedShapeByIRIConstraint ;
         sh:allowedIRIStarts ( "http://example.org/ns#" ) ;
     ] .

Does this look about right? (I'd be happy to write this down as a 
requirement for our catalogue so that the WG can vote on it).

Thanks,
Holger

Received on Monday, 27 April 2015 01:49:00 UTC