Open labra opened 7 years ago
If the datatype
production used ValueSetValue
would that do it?
[55] datatype ::= iri
Becomes
[55] datatype ::= iri | '(' valueSetValue* ')'
This moves it to a NodeConstraint, but might do what you want. Of course, either create some context-sensitive productions in the grammar, which I've been trying to get rid of.
[226]First/First Conflict: "(" is the condition for both _shapeAtom_2 and _shapeAtom_1
[226]First/First Conflict: "(" is the condition for both _inlineShapeAtom_3 and _inlineShapeA
But we could probably figure out a way around this.
A user could declare some filter on a datatype value using stems and exclusions.
For example, one may want to declare that the value is any datatype in the
xsd
namespace as:I propose this feature because I was reviewing which parts of the RDF data model are covered by ShEx and although we cover datatypes, we cover them in a simple way.
Notice the difference between the previous example and:
which means that the value must be an IRI starting by
xsd
.