- From: Holger Knublauch <holger@topquadrant.com>
- Date: Fri, 30 Oct 2015 16:01:54 +1000
- To: RDF Data Shapes Working Group <public-data-shapes-wg@w3.org>
Today we discussed how to proceed with the Turtle file and the data model describing the SHACL vocabulary itself. Some people argued that we should use RDFS, others suggested OWL, others would like to apply SHACL to itself. I can certainly see use cases for all these options, and believe it would be quite doable to publish all these formats. Let's look at an example (in Turtle): SHACL ------------------ sh:AbstractResult a sh:ShapeClass ; rdfs:subClassOf rdfs:Resource ; rdfs:label "Abstract Result" ; rdfs:comment "Instances of subclasses of this class can be constructed during constraint validation." ; sh:abstract true ; sh:property [ sh:predicate sh:subject ; sh:class rdfs:Resource ; sh:maxCount 1 ; rdfs:label "subject" ; rdfs:comment "The subject of triples involved in this result." ; ] ; ... many more sh:properties OWL ------------------- sh:AbstractResult a owl:Class ; rdfs:subClassOf rdfs:Resource ; rdfs:label "Abstract Result" ; rdfs:comment "Instances of subclasses of this class can be constructed during constraint validation." ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sh:subject ; owl:allowedValues rdfs:Resource ; ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sh:subject ; owl:maxCardinality "1"^^xsd:nonNegativeInteger ; ] ; ... sh:subject a owl:ObjectProperty ; rdfs:label "subject" ; rdfs:comment "The subject of triples involved in this result." . I would argue that the OWL can be automatically generated from the SHACL file. A pure RDFS file would be very poor in terms of contents - basically just a collection of named resources with comments, ranges and domains. But if it helps some people, why not... Those who argue for an OWL or RDFS version should suggest how it would look like, e.g. how the constraint types are defined. Holger
Received on Friday, 30 October 2015 06:02:31 UTC