W3C home > Mailing lists > Public > public-data-shapes-wg@w3.org > November 2016

Re: ISSUE-188: Switched to "conforms"

From: Karen Coyle <kcoyle@kcoyle.net>
Date: Sat, 19 Nov 2016 16:41:10 -0800
To: public-data-shapes-wg@w3.org
Message-ID: <3a1816f2-bde2-4b90-dda3-7ac9546781cd@kcoyle.net>


On 11/19/16 3:22 PM, Holger Knublauch wrote:
>
>
> On 20/11/2016 3:04, Karen Coyle wrote:
>> Holger, I think it will be important for the group to review the
>> remove of filter separately, so I'm not commenting on that here. In
>> general, the changes to conforms are ok, but there are related changes
>> that I'm not totally in agreement with.
>>
>> Comments:
>>
>> -line 630 "sh:predicate ex:ssn ;     # Constrains the values of the
>> ex:ssn property"
>> -- I don't like the "Constrains" here, and this seems to be the only
>> usage of it. Could the comment be removed for now? I can't think of a
>> better way to say it.
>
> Changed to the following for now. I believe there is value in having
> some comment there:
>
> # This constraint is about the values of the ex:ssn property

Yes, great. That's better.

>
>>
>> -Line 1366 "Validation is the process of determining whether a <a>data
>> graph</a>, or <a>nodes</a> in the <a>data graph</a>, conform to a
>> <a>shapes graph</a> or specific shapes in a shapes graph."
>> -- The before of this statement didn't talk about "specific shapes in
>> a shapes graph" and I don't know why this is here now. What is a
>> "specific shape"?
>
> I have added this sub-sentence to cover the case in which a node is
> validated against a given shape only, not the complete graph. This is
> for example the targetless validation promoted by the ShEx camp.

This is where we lack a definition. Shapes graph is defined (although I 
don't find a formal definition, but it may be there somewhere):

"This document defines the SHACL Shapes Constraint Language, a language 
for validating RDF graphs against a set of conditions. These conditions 
are provided as shapes and other constructs expressed in the form of an 
RDF graph. RDF graphs that are used in this manner are called "shapes 
graphs" in SHACL and the RDF graphs that are validated against a shapes 
graph are called "data graphs".

What I don't find is a definition for "shape" which appears to be a 
component of a shapes graph. So in 1.4 there is an example that is 
titled "Example shapes graph", and under it there is the explanatory text:

"We can use the shape definition above to illustrate some of the key 
terminology used by SHACL."

It also seems to be used in validation, which makes it fairly tangible:

"In the example above, only ex:Alice is validated against the given shape"

>
>> And what is a "shapes graph"?
>
> This term is well-defined.
>
>> The text following the example in 1.4 refers to the SHACL code example
>> as a "shape", yet it is introduced (in the sentence above the example)
>> as a "shapes graph." Then line 1381 refers to "each shape in the
>> shapes graph." Every shape is itself a graph so the difference between
>> "shape" and "shapes graph" isn't clear. Is there a concept of a set of
>> shapes that are then a shapes graph? If so, is that necessary?
>
> I continue to believe you have a different definition of "graph" than
> what I have. For me (and RDF) a graph is a set of triples. A shape is
> *not* a graph.

My definition of a graph is the same as that. So if a shape is not a set 
of triples, what is it? That's what needs to be defined, and then we 
need a careful read-through for consistency.

>
>>
>> - There is also usage (line 2822) of "given shape." I don't know what
>> makes a shape "given" so I probably should just say "the shape." (A
>> couple of places)
>
> Here the intention was to state that it was the value "given" by the
> property sh:shape. I could switch to " conform to a specified shape." Is
> this any better, or how else? "the shape" is not sufficiently precise.

I read this over a couple of times and cannot at the moment come up with 
better wording. It feels more "right" to say: "*a* given shape" but I'm 
not sure that says the same thing.

>
>>
>> - line 2888
>> "<td><code>sh:qualifiedMinCount</code></td>"
>> <td>The minimum number of value nodes that can conform to the shape.
>> -- Isn't this the minimum number that MUST conform to the shape to be
>> true? It is setting an actual minimum, is it not? (possibly also used
>> in other places)
>
> Yes, must is better for minCount although I left the can for maxCount
> (if that's OK?).

I agree - maxCount being a range (from min to max), it is "can".

>
>>
>> -Line 4000
>> "ASK queries return <code>true</code> for value nodes that conform to
>> the constraint, while SELECT queries return those value nodes that do
>> not conform."
>> -- Did you mean to say that SELECT returns the nodes that do NOT
>> conform? I'm questioning the NOT there.
>
> I think this is currently correct. It is indeed the fact that SELECT
> returns the nodes that do not conform.

OK. Thanks.

>
> Holger
>
>
>>
>> kc
>>
>>
>>
>>
>>
>>
>>
>> On 11/16/16 5:54 PM, Holger Knublauch wrote:
>>> Karen, I have switched the document to use the term "conforms" for the
>>> outcome of the validation process:
>>>
>>> https://github.com/w3c/data-shapes/commit/c3f74b34f946e9c04207d86b45e7757c48a37605
>>>
>>>
>>>
>>> Not too many changes were needed and the commit above also includes
>>> dropping sh:filterShape.
>>>
>>> If you have a minute, maybe you could double-check where I didn't get it
>>> right?
>>>
>>> Thanks
>>> Holger
>>>
>>>
>>>
>>
>
>
>

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600
Received on Sunday, 20 November 2016 00:41:46 UTC

This archive was generated by hypermail 2.3.1 : Sunday, 20 November 2016 00:41:47 UTC