- From: Dimitris Kontokostas <kontokostas@informatik.uni-leipzig.de>
- Date: Wed, 4 May 2016 07:57:26 +0300
- To: Karen Coyle <kcoyle@kcoyle.net>
- Cc: public-data-shapes-wg <public-data-shapes-wg@w3.org>
- Message-ID: <CA+u4+a0t-pmBJjxkXBr9YdhN5M_y0sf_P_WbFfVAP2cOJan2sg@mail.gmail.com>
On Wed, May 4, 2016 at 4:23 AM, Karen Coyle <kcoyle@kcoyle.net> wrote: > Unless I'm not seeing the right section, this has many of the same > problems as before. Here's what I see: > I think you are looking at the opposite part of the diff, can you read it from the online version? http://w3c.github.io/data-shapes/shacl/#PropertyScope > > --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 > > -- Dimitris Kontokostas Department of Computer Science, University of Leipzig & DBpedia Association Projects: http://dbpedia.org, http://rdfunit.aksw.org, http:// http://aligned-project.eu Homepage:http://aksw.org/DimitrisKontokostas Research Group: AKSW/KILT http://aksw.org/Groups/KILT
Received on Wednesday, 4 May 2016 04:58:25 UTC