Combining optional and mandatory Shapes

Hi all,

I trying to achieve the following:

- There is a class ex:MyClass.
- The class has a property ex:myProperty.
- The number of occurences of ex:myProperty should be constrained in the
following way

a) For the object values of the property http://example.com/foo or
http://example.com/bar, there must be exactly one occurence, e.g.
ex:instance1 ex:myProperty http://example.com/foo.

b) For the object values of the property, there is zero or more object
values that have a skos:broader path to a given concept ex.concept1, e.g.

ex:instance1 ex:myProperty  ex:concept2 #ex:concept2 has a skos:broader
relation to ex:concept1.

For the shape a), I have
sh:in (<http://example.com/foo > <http://example.com/bar >)

For the shape b) I have
sh:path [sh:zeroOrMorePath skos:broader] ;
        sh:hasValue <http://example.com/qm/0>

I am struggeling with the occurence constraints. How do I specify that a)
should appear exactly one time, and b) can appear zero or more times? I
tried various combinations of sh:minCount and sh:maxCount, or using
sh:qualifiedValueShape, but none of them worked. How do I achive this
combination of occurence constraints?

Regards,

Felix

Received on Saturday, 31 August 2019 08:42:17 UTC