- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Tue, 4 Aug 2015 13:26:55 -0700
- To: RDF Data Shapes Working Group <public-data-shapes-wg@w3.org>
Several classes in https://github.com/w3c/data-shapes/blob/ISSUE-51/shacl/shacl.shacl.ttl show the problems with conflating classes and shapes. The problematic classes include sh:Shape, sh:ShapeClass, and particularly rdfs:Class. It looks as if https://github.com/w3c/data-shapes/blob/ISSUE-51/shacl/shacl.shacl.ttl defines an RDFS taxonomy and these nodes are regular RDFS classes in that taxonomy. However, this appearance is deceiving. Only a small portion of the RDFS meaning of classes ends up attaching to these node. The full meaning of RDFS:subClassOf is not available for these nodes. Subproperties of rdfs:subClass will not have any RDFS effect on these nodes. Providing domain and range information for properties related to these nodes will not have any RDFS effect. Some of the effects of this difference can be seen in https://github.com/w3c/data-shapes/blob/ISSUE-51/shacl/shacl.shacl.ttl where several classes, including rdfs:Class, are explicitly stated as being subclasses of rdfs:Resource, which would be unnecessary under RDFS. Because of these differences from RDFS, I believe that SHACL should not be used for modelling taxonomies and thus that sh:shapeClass should not be part of SHACL. Aside from the above, there are other modelling issues that should not be part of SHACL. SHACL should not be used to set up object-oriented notions, such as those coming from sh:abstract, sh:final, and sh:private, particularly as there will be no support for enforcing their meaning. Peter F. Patel-Schneider Nuance Communications
Received on Tuesday, 4 August 2015 20:27:27 UTC