- From: Arthur Ryman <arthur.ryman@gmail.com>
- Date: Mon, 27 Apr 2015 16:20:12 -0400
- To: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
1. The statement
"However, if there is no use of rdfs:subClassOf and rdfs:subPropertyOf
in either the control graph or the data graph, then there would be
little difference between the RDF semantics and simpler semantics."
should probably also include mention of rdfs:domain and rdfs:range
2. The spec defines three sections of an Extended Condition:
"Other SHACL control nodes allow the separation of a condition into
three sections: a scope section, a shape section, and a reporting
section."
However, further down in the spec, the term "control section" is used
where it should be "scope section":
"The control portion of the condition, <control>, is "
"<report> WHERE
{ <control> MINUS { <shape> } }"
3. The spec limits allowed values to be IRIs, but this should be
generalized to allow IRIs or Literals.
4. The translation of has-value components to SPARQL may not be
correct. For example, the translation:
"?this <path> ?V . FILTER ( ?V = <value> )"
fails to taken into account the cardinality of <path>. What happens if
<path> is optional?
I also think it might be safer (and more efficient) to translate
has-value and other components into SPARQL that does not introduce a
new variable ?V. This can be accomplished by hiding ?V in a subquery
that SELECTs ?this.
5. I believe the intention of node-type components is to allow one of
the listed types. Therefore the component should be translated into a
disjunction. The spec uses conjunction:
"where <test> is the SPARQL conjunction (&&) of isIRI(?V) if "IRI" is
in the list, isBlank(?V) if "blank" is in the list, and isLiteral(?V)
if "literal" is in the list. "
6. Missing angle brackets in the example:
" sh:sparqlScope "?person rdf:type http://example.org/Person"
should be:
" sh:sparqlScope "?person rdf:type <http://example.org/Person>"
7. Example uses "unbounded" but spec says value must be an integer:
sh:minCardinality 0 ; sh:maxCardinality "unbounded" ;
-- Arthur
Received on Monday, 27 April 2015 20:20:39 UTC