ISSUE-115: Did we rush this decision?

As I am trying to implement the resolution on ISSUE-115 to use the 
following syntax

ex:MyShape
     a sh:Shape ;
     sh:closed true ;
     sh:ignoredProperties ( rdf:type ) ;
     ...

I cannot help but think that we may have rushed this decision and have 
forgotten a few aspects:

1) With the new syntax it is no longer possible to specify sh:priority, 
i.e. closeness is always an Error and cannot be a Warning

2) With the new syntax we have lost the ability to specify filters so 
that closeness only applies to certain instances. The work-around would 
be to use different scopes, but that's not the same thing and would lead 
to duplicate shape definitions (not user friendly).

3) With the new syntax we have lost the ability to abbreviate the common 
case of ignoring rdf:type (as above).

In my proposed syntax, SHACL would have included shortcut resources 
(instances of sh:NodeConstraint) so that the syntax would simply be

ex:MyShape
     a sh:Shape ;
     sh:constraint sh:closed ;
     ...

or

ex:MyShape
     a sh:Shape ;
     sh:constraint sh:closedIgnoringRDFType ;
     ...

If the main reason for the adoption of Arthur's proposal was a 
user-friendly syntax then I believe the syntax above is better. As an 
added bonus, it is far more consistent. Currently I would need to 
hard-code sh:closed as a special case.

Sorry to be a pain, but I believe the topic should be reopened, at least 
as a quick check whether we are really sure about our resolution.

Thanks,
Holger

Received on Thursday, 14 January 2016 23:03:26 UTC