Re: shapes-ISSUE-159: [Editorial] Eliminate "scope class" from 2.1.n [SHACL Spec]

Unless I'm not seeing the right section, this has many of the same 
problems as before. Here's what I see:

--copy--

"The property scope for a property <code>p</code> is defined as the set 
of subjects that appear in a triple with <code>p</code> as a predicate.
  -       Property scopes can be set by linking a shape to a resource 
<code>r</code> of type <code>sh:PropertyScope</code> with the 
<code>sh:scope</code> property.
  -       The property <code>p</code> is linked from <code>r</code> with 
the property <code>sh:predicate</code>.
  +       A property scope for property <code>p</code> is defined as the 
set of subjects in the data graph that appear in a triple with 
<code>p</code> as a predicate."

--/copy--

Comments:

"the set of subjects that appear in a triple..." It is necessary to say 
that this refers to the data graph.

"Property scopes can be set ..." what does it mean to "set" a property 
scope? I don't think they are set, I think they are *defined* in the 
shapes graph. Any 'setting' is done by an application. Graphs don't act.

"... by linking a shape to a resource..." Linking again. I don't think 
that we can talk about linking. And that segment I believe is talking 
about the shapes graph, so these statements have moved back and forth 
between the shapes graph and the data graph.

Let me try to make a few edits to your wording:

The property scope, designated by property <code>p</code>, is defined in 
the shapes graph, and will identify as "in scope' a set of triples in 
the data graph that have <code>p</code> as a predicate.
  -       Property scopes are defined in the shapes graph for a resource 
<code>r</code> of type <code>sh:PropertyScope</code> with the 
<code>sh:scope</code> property.
  -       The property <code>p</code> is the value of 
<code>sh:predicate</code>.

(Without the markup... easier to read)

The property scope, designated by property p, is defined in the shapes 
graph, and will identify as "in scope" a set of triples in the data 
graph that have p as a predicate.
- Property scopes are defined in the shapes graph for a resource r of 
type sh:PropertyScope with the sh:scope property.
- The property p is the value of sh:predicate.  

I hope we're getting closer :-)

kc  

On 5/3/16 1:58 PM, Dimitris Kontokostas wrote:
>
>
> On Tue, May 3, 2016 at 5:40 PM, Karen Coyle <kcoyle@kcoyle.net
> <mailto:kcoyle@kcoyle.net>> wrote:
>
>     Thanks, Dimitris. But once again I think this uses too many terms
>     that are unclear, and could be simplified. Let's go through this:
>
>     "The property scope for a property p is defined as the set of
>     subjects that appear in a triple with p as a predicate."
>
>     --It is unclear to me what graphs are being talked about here. A
>     scope is defined in the shapes graph but it references the data
>     graph -- in other words, the scope criteria must be found in the
>     data graph. Some set of triples in the data graph a "in scope." So
>     the "set of subjects" is in the data graph, right? What is being
>     called "property scope" here is a node in the shapes graph. I would
>     say that the shapes graph defines a target node (for lack of a
>     better word) in the data graph based on the existence of a named
>     predicate.
>
>     "Property scopes can be set by linking a shape to a resource r of
>     type sh:PropertyScope with the sh:scope property."
>
>     --A scope is defined in the shapes graph as a property scope by
>     explicit declaration of rdf:type sh:PropertyScope (as per the
>     example, below). "can be" means "maybe", and this is definitive --
>     it *is* defined in this way and only this way. I'm not clear on why
>     this says "linking a shape to a resource... with the sh:scope
>     property". That seems unnecessary to me. In fact, I have trouble in
>     general with referring to "linking" - a term that is not used in the
>     RDF documentation (except briefly around de-referencing
>     vocabularies). A shape *has* a scope and a scope *is an instance of*
>     sh:PropertyScope.
>
>     ex:PropertyScopeExampleShape
>              a sh:Shape ;
>              sh:scope [
>                      a sh:PropertyScope ;
>                      sh:predicate ex:knows ;
>              ] .
>
>
>     "The property p is linked from r with the property sh:predicate."
>
>     Again, I think this is unnecessary.
>
>     So after all of this, I would suggest something along the lines of:
>
>
> Thanks Karen
>
>     A property scope is a scope in the shapes graph that is of rdf:type
>     sh:PropertyScope.
>
>
> I find this sentence a bit unclear unless you read it in combination
> with the introduction of 2.1.3
>
>     The object of sh:predicate defines the triples in the data shape
>     that are in scope. Triples in the data graph with a predicate
>     matching the object of sh:predicate are in scope.
>
>
> I made another attempt to incorporate your feedback but with a little
> more prose, can you check that as well?
> Otherwise we can switch back to your proposal
>
> https://github.com/w3c/data-shapes/commit/d91acf343fd485d99dc69293ddecbd07a771d6c1
> (also online)
>
> Thanks,
> Dimitris
>
>
>     (That could undoubtedly be refined.)
>     kc
>
>     On 5/3/16 7:22 AM, Dimitris Kontokostas wrote:
>
>         Hi Karen,
>
>         I tried to reformulate 2.1.3.1 Property scopes (sh:PropertyScope)
>         Can you check if this makes it more clear? if it does I will
>         adjust the
>         rest of the sections accordingly
>         https://github.com/w3c/data-shapes/commit/d2d70f5caa72f7911567d7692b58741fe7481625
>         (the edit is also live)
>
>         Dimitris
>
>         On Mon, May 2, 2016 at 4:40 PM, Karen Coyle <kcoyle@kcoyle.net
>         <mailto:kcoyle@kcoyle.net>
>         <mailto:kcoyle@kcoyle.net <mailto:kcoyle@kcoyle.net>>> wrote:
>
>
>
>              On 5/1/16 6:49 PM, Holger Knublauch wrote:
>
>                  Hi Karen,
>
>                  yes these are good points. The use of "scope class" here is
>                  confusing,
>                  also due to the overlap with the unrelated sh:scopeClass
>                  property. The
>                  proper term for them would be "scope type", which is
>         also used in
>                  section 8.2
>
>                  Please review my edits:
>
>         https://github.com/w3c/data-shapes/commit/4f74748b0637eeb5406abfce2797335baad6e33a
>
>
>                  On 1/05/2016 10:27, RDF Data Shapes Working Group Issue
>         Tracker
>                  wrote:
>
>                      shapes-ISSUE-159: [Editorial] Eliminate "scope
>         class" from 2.1.n
>                      [SHACL Spec]
>
>         http://www.w3.org/2014/data-shapes/track/issues/159
>
>                      Raised by: Karen Coyle
>                      On product: SHACL Spec
>
>                      I would like to clarify 2.1.3 and its subsections by
>                      eliminating the
>                      phrase "scope class". The current description in the
>                      introduction is:
>
>                      2.1.3 (sentence 3)
>                      "SHACL includes four built-in scope classes:
>                      sh:PropertyScope... etc."
>
>                      The pattern for each subsections reads:
>
>                      2.1.3.1 Property scopes (sh:propertyScope)
>                      "The scope class sh:PropertyScope selects all
>         subjects that
>                      have at
>                      least one value for a given property sh:predicate."
>
>                      I would suggest that we replace sentence 3 in 2.1.3
>         with:
>                      "SHACL includes four subclasses of sh:Scope that
>         define the
>                      core scope
>                      types:...."
>
>                      And the pattern first statement for the subsections
>         would be:
>
>                      "The class sh:PropertyScope is the class of those
>         subjects
>                      that have
>                      at least one value for a given property sh:predicate."
>
>
>                  In the latter case I diverged a bit from your
>         suggestion to the
>                  pattern
>                  "represents the class of scopes of XY". I prefer this
>         because a
>                  scope
>                  does not represent a class of subjects - the term class
>         is already
>                  overloaded with different meaning IMHO. Scopes
>         "represent" sets
>                  of nodes
>                  in my opinion.
>
>
>              For the latter statement you have:
>
>              "The scope type <code>sh:PropertyScope</code> represents
>         the class
>              of scopes of all subjects that have at least one value for
>         a given
>              property <code>sh:predicate</code>."
>
>              This introduces a new concept "scope type" which isn't
>         defined, and
>              includes "class of scopes" which is a grammatical rewording of
>              "scope class". Also, The sentence is too dense to be
>         readable. Let's
>              first talk about what we want it to mean, then we can
>         develop wording.
>
>              -First is sh:PropertyScope a class? I believe that is the
>         case. To
>              what extent that matters here is another matter.
>
>              -Next, what is the "thing" (in the RDF sense) that is a
>         member of
>              that class? First, "class of scopes" is as vague as our
>         original
>              "scope class". What is the thing, and in which graph
>         (shapes graph
>              or data graph) is that thing to be found?
>
>              -What is meant here by "subject"? I believe that this
>         refers to a
>              node in the data graph. Is that the case?
>
>              -Finally, in editorial mode, "represents" should be "is".
>         If there
>              is a type "sh:PropertyScope" it *is* a class.
>
>              If I understand correctly, the shapes graph can have a
>         subject (aka
>              "node") that is defined as being of rdfs:type
>         sh:PropertyScope. That
>              subject has a predicate "sh:predicate" whose value is the
>         predicate
>              in the data graph that is the target of the validation
>         rules that
>              are linked to this shapes graph node.
>
>              Or, to put this in simple English, the shapes graph states (or
>              "indicates") the predicate in the data graph that is the
>         target of
>              validation.
>
>              kc
>
>
>
>                  Are these edits addressing your issue?
>
>                  Thanks
>                  Holger
>
>
>
>                      Reasons: this eliminates the vague phrase "scope
>         class", and
>                      also does
>                      not ascribe agency to the subclasses (subclasses do
>         not SELECT).
>
>
>
>
>
>
>
>              --
>              Karen Coyle
>         kcoyle@kcoyle.net <mailto:kcoyle@kcoyle.net>
>         <mailto:kcoyle@kcoyle.net <mailto:kcoyle@kcoyle.net>>
>         http://kcoyle.net
>              m: 1-510-435-8234
>              skype: kcoylenet/+1-510-984-3600 <tel:%2B1-510-984-3600>
>         <tel:%2B1-510-984-3600>
>
>
>
>
>         --
>         Dimitris Kontokostas
>         Department of Computer Science, University of Leipzig & DBpedia
>         Association
>         Projects: http://dbpedia.org, http://rdfunit.aksw.org,
>         http://http://aligned-project.eu <http://aligned-project.eu/>
>         Homepage:http://aksw.org/DimitrisKontokostas
>         Research Group: AKSW/KILT http://aksw.org/Groups/KILT
>
>
>     --
>     Karen Coyle
>     kcoyle@kcoyle.net <mailto:kcoyle@kcoyle.net> http://kcoyle.net
>     m: 1-510-435-8234
>     skype: kcoylenet/+1-510-984-3600 <tel:%2B1-510-984-3600>
>
>
>
>
> --
> Dimitris Kontokostas
> Department of Computer Science, University of Leipzig & DBpedia Association
> Projects: http://dbpedia.org, http://rdfunit.aksw.org,
> http://http://aligned-project.eu <http://aligned-project.eu/>
> Homepage:http://aksw.org/DimitrisKontokostas
> Research Group: AKSW/KILT http://aksw.org/Groups/KILT
>

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600

Received on Wednesday, 4 May 2016 01:24:18 UTC