- From: Irene Polikoff <irene@topquadrant.com>
- Date: Sun, 5 Feb 2017 12:51:00 -0500
- To: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
- Cc: public-rdf-shapes@w3.org
- Message-Id: <0D750B37-9781-4BC1-8082-E5CD6AC46CE6@topquadrant.com>
Peter, This e-mail https://lists.w3.org/Archives/Public/public-rdf-shapes/2016Aug/0011.html <https://lists.w3.org/Archives/Public/public-rdf-shapes/2016Aug/0011.html> is entirely about issues with and the “negative utility” of the abstract syntax document. WG has decided not to proceed with this document. It is not on the recommendation track. I see that the document still says the following which is no longer correct as the decision was made: "This is currently a Working Draft. It is not decided whether this will be a Working Group Note, a Working Group Recommendation, or an appendix to the SHACL specification." The WG will update this statement to clarify the status of the document. Regards, Irene Polikoff > On Feb 5, 2017, at 11:39 AM, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: > > It is likely that some time in the future the working group will be asking to > advance this document along the recommendation track. One of the requirements > for such advancement is that comments on the document have received a public > substantive response from the working group. > > It is not the responsibility of commenters to keep track of whether the > working group has provided a substantive response, or indeed any response at > all to their comments, although they can, of course, mention that they have > not received what they consider to be an appropriate response to one or more > of their comments. > > If you want to see comments that have not yet received complete substantive > responses, you can look at > https://lists.w3.org/Archives/Public/public-rdf-shapes/2016Aug/0005.html and > https://lists.w3.org/Archives/Public/public-rdf-shapes/2016Aug/0011.html > > Peter F. Patel-Schneider > Nuance Communications > > On 02/04/2017 04:03 PM, Irene Polikoff wrote: >> Peter, >> >> My guess is that 80+% of comments submitted to the WG to date came from you. I believe the WG feels it has been diligently recording all comments and documenting discussions about them and their resolution in the WG meeting minutes, issues list and on its wiki. >> >> Having said this, if you feel that some of your comments have not received a response and that these comments are still valid given the current draft, I suggest you resubmit them. >> >> Regards, >> >> Irene Polikoff >> >>> On Feb 4, 2017, at 6:34 PM, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: >>> >>> I will discuss the apparent disconnect between the W3C process document and >>> what you have said that you have heard with W3C management. >>> >>> It is indeed not the case that all comments need to be resolved to the >>> satisfaction of the commenter. I was not implying that such satisfaction is >>> necessary, just contrasting what is the case with your statements that all >>> comments have given rise to issues that have been resolved by the working >>> group. However, it is part of W3C process that all comments need a >>> substantive response from the working group and several comments have not had >>> a substantive response and a few have not had a response at all. >>> >>> Peter F. Patel-Schneider >>> Nuance Communications >>> >>> >>> On 02/04/2017 02:24 PM, Irene Polikoff wrote: >>>> Peter, >>>> >>>> The expectation of multiple CR publications as part of the new process was verbally communicated by the W3 management to myself and Ted Thibodeau in a phone call. I can not provide a link to a document that describes the process of multiple CRs (e.g., CR-1, CR-2, etc.). Please feel free to contact W3M with this request. >>>> >>>> They have also explained that while the WG must discuss all comments and make a decision on how and whether to address them, having an explicit expression of satisfaction from a commenter was not a requirement for proceeding to CR or TR. >>>> >>>> I agree that annotating the document with the information about substantive open issues is a good practice to follow. >>>> >>>> Regards, >>>> >>>> Irene Polikoff >>>> >>>>> On Feb 4, 2017, at 4:50 PM, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: >>>>> >>>>> I don't see anywhere that the expectation is that more that one Candidate >>>>> Recommendation will be published before a W3C technical report proceeds to >>>>> Proposed Recommendation or Recommendation status. The W3C process document of >>>>> 1 September 2015 states that the expected next step of after Candidate >>>>> Recommendation publication is Proposed Recommendation. Please provide support >>>>> for your claim. >>>>> >>>>> Having a link to an issues pages from an email announcement is not a >>>>> substitute for having a note in the document. It is particularly not an >>>>> effective replacement when the problem is substantial, technical, and >>>>> long-running. >>>>> >>>>> Most of the comments on previous versions of the document did not give rise to >>>>> tracked working group issues. Many of these comments have not had an explicit >>>>> expression of satisfaction from the commenter. Some of these comments have >>>>> not received any response from the working group at all. >>>>> >>>>> Peter F. Patel-Schneider >>>>> Nuance Communications >>>>> >>>>> >>>>> >>>>> On 02/04/2017 01:03 PM, Irene Polikoff wrote: >>>>>> Peter, >>>>>> >>>>>> Thank you for your feedback. >>>>>> >>>>>> Current W3C process treats publishing a CR in a way that is different from the previous practices. Specifically, it is expected that more than one CR spec will be published before a spec proceeds to the FR status. With this, reviewers can continue to submit their comments and the WG will continue to discuss how to address them, even after a CR is published. There is no longer a formal Last Call. >>>>>> >>>>>> The e-mail that announced the availability of the current WG draft provided a link to the issues page. As you can see from the link, your recent e-mail about pre-binding was recorded as an issue. Thus, indicating to the readers that there is a known issue in this area. All previous feedback was also recorded in a form of issues and resolution of these issues has been documented. >>>>>> >>>>>> Regards, >>>>>> >>>>>> Irene Polikoff >>>>>> >>>>>> >>>>>>> On Feb 3, 2017, at 11:10 PM, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: >>>>>>> >>>>>>> I took a quick look at the recent working draft of >>>>>>> https://www.w3.org/TR/shacl/ dated 02 February 2017. >>>>>>> >>>>>>> The document says that the next version of the document is planned to be a >>>>>>> Candidate Recommendation but does not provide a schedule for comments for >>>>>>> this version of the document. Nor does the document state a schedule for >>>>>>> responses to comments on previous working drafts of this document that have >>>>>>> not yet received substantive responses from the working group. >>>>>>> >>>>>>> In this quick look I examined the document to see if some of the major >>>>>>> problems with the document have been solved. What I found is that the three >>>>>>> major problems I first looked at remain unsolved. Each of them still needs >>>>>>> significant work. Each of them prevents reviewers of the document from >>>>>>> providing fully informed reviews of the definition of SHACL. Given that >>>>>>> there are at least these three major, pervasive problems in the document, I >>>>>>> don't see that detailed comments on the rest of the document will be very >>>>>>> worthwhile at this time. >>>>>>> >>>>>>> >>>>>>> Pre-binding: >>>>>>> >>>>>>> There has never been a definition of pre-binding that meets the needs of >>>>>>> SHACL. The definition of pre-binding in this version of the document is no >>>>>>> different. Pre-binding is only defined for a solution mapping and a graph >>>>>>> pattern. However, all uses of pre-binding in SHACL are for a solution >>>>>>> mapping and a query so, in effect, there is no definition of pre-binding at >>>>>>> all in this document. >>>>>>> >>>>>>> As well, there is no demonstration that the current definition of >>>>>>> pre-binding is well-behaved even where it is defined. >>>>>>> >>>>>>> The document that is stated to be the source of the definition of >>>>>>> pre-binding for SHACL is a document that has not been accepted by anyone >>>>>>> other than the author of the document as far as I can tell. Saying that it >>>>>>> is the draft of a WG CG report is giving a false impression of its effective >>>>>>> status. >>>>>>> >>>>>>> The unsuitability of this definition of pre-binding has been already reported >>>>>>> in https://lists.w3.org/Archives/Public/public-rdf-shapes/2017Jan/0010.html >>>>>>> but there is no indication in the working draft that there are any problems >>>>>>> with pre-binding. The lack of such an indication in the document means that >>>>>>> reviewers may miss the fact that much of the document has fundamental >>>>>>> problems. >>>>>>> >>>>>>> As pre-binding is a central part of SPARQL-SHACL and is also used to >>>>>>> describe much of SHACL Core it is not possible for reviewers to provide >>>>>>> fully informed comments on large parts of SHACL at this time. As there is >>>>>>> as of yet no suitable definition provided for pre-binding even though the >>>>>>> problems with it have been known since at least June of 2015 it will be >>>>>>> better at this late stage to simply remove all parts of SHACL and the SHACL >>>>>>> document that depend on pre-binding. >>>>>>> >>>>>>> >>>>>>> Shapes: >>>>>>> >>>>>>> The way that shapes are formed and used in SHACL remains a severe problem. >>>>>>> >>>>>>> There are shapes, node shapes, and property shapes. There are also three >>>>>>> RDF terms that are related to shapes: sh:Shape, sh:NodeShape, and >>>>>>> sh:PropertyShape. >>>>>>> >>>>>>> There is much confusing wording on how these all work together. >>>>>>> >>>>>>> First, there is "sh:NodeShape and sh:PropertyShape can be used to represent >>>>>>> node and property shapes". How do these RDF terms represent anything? >>>>>>> >>>>>>> Second, there are what appear to be the main definitions of node shapes and >>>>>>> property shapes. >>>>>>> "A node shape is a shape in the shapes graph that is not the subject of a >>>>>>> triple with sh:path as its predicate." >>>>>>> "A property shape is a shape in the shapes graph that is the subject of a >>>>>>> triple that has sh:path as its predicate." >>>>>>> What is the role of sh:NodeShape and sh:PropertyShape if the definition >>>>>>> of node shapes and property shapes doesn't even refer to them? >>>>>>> This is only reinforced by >>>>>>> "However, the presence of any rdf:type triple does not determine whether a >>>>>>> node is treated as a node shape or not." >>>>>>> "However, the presence of any rdf:type triple does not determine whether a >>>>>>> node is treated as a property shape or not." >>>>>>> >>>>>>> Third, there are what appear to be alternative definitions of node shapes and >>>>>>> property shapes. >>>>>>> "sh:NodeShape is the class of node shapes and should be declared as a type >>>>>>> for shapes that are IRIs." >>>>>>> "sh:PropertyShape is the class of property shapes and should be declared as a >>>>>>> type for shapes that are IRIs." >>>>>>> There are multiple problems with these alternative definitions. For >>>>>>> starters, there is no description in SHACL of what it means to be the class >>>>>>> of anything. Next, there is no description in SHACL of how to declare a >>>>>>> type for anything. Further, there is the strong suggestion here that shapes >>>>>>> that are IRIs should somehow have both sh:NodeShape and sh:PropertyShape >>>>>>> declared as their type, which doesn't make sense at all. >>>>>>> >>>>>>> Fourth, the conditions to be a shape include being a SHACL instance of >>>>>>> sh:NodeShape or sh:PropertyShape, but not sh:Shape. This contradicts the >>>>>>> normative statements that rdf:type triples are irrelevant for determining >>>>>>> whether a node is a node or property shape. It is also exceedingly weird as >>>>>>> sh:Shape is previously indicated to be somehow related to shapes, but being >>>>>>> a SHACL instance of sh:Shape in an RDF graph doesn't make a node a shape in >>>>>>> the graph. As sh:Shape is the natural RDF term for the type of shapes, >>>>>>> users will use it over sh:NodeShape and sh:PropertyShape. >>>>>>> >>>>>>> Aside from these problems with node shapes and property shapes, there are >>>>>>> problems with the definitions that shapes depend on. For example, shapes >>>>>>> graphs are defined too narrowly. SHACL validation processes don't always >>>>>>> validate a data graph against the shapes in another graph, but shapes graphs >>>>>>> are not defined for these other situations. >>>>>>> >>>>>>> All this ends up with a big mess. It appears that it is possible to use >>>>>>> sh:NodeShape and sh:PropertyShape in ways counter to what appears to be >>>>>>> their intended meaning. For example, >>>>>>> ex:s1 rdf:type sh:NodeShape ; >>>>>>> sh:targetClass ex:Person ; >>>>>>> sh:path ex:child ; >>>>>>> sh:nodeKind sh:IRI . >>>>>>> appears to be form a constraint on the children of people even though the >>>>>>> type of the shape is sh:NodeShape. >>>>>>> >>>>>>> What needs to be done is to get rid of sh:NodeShape and sh:PropertyShape. >>>>>>> They serve no useful purpose. They will only produce confusion. Then the >>>>>>> defintions underlying shapes need to be corrected. Because of these >>>>>>> significant and pervasive problems with shapes in SHACL, reviewers cannot >>>>>>> provide fully informed commments on the SHACL document at this time. >>>>>>> >>>>>>> >>>>>>> Validation results and reports: >>>>>>> >>>>>>> A validation report is the result of validation. It is an RDF graph where >>>>>>> some nodes are validation results reporting on constraints that were not >>>>>>> satisifed. There are serious problems in how validation reports are >>>>>>> generated and the form of validation reports. >>>>>>> >>>>>>> The first problem is the generation of validation results. Throughout the >>>>>>> definitions of SHACL Core constraint components there is wording like "For >>>>>>> each value node [...], a validation result MUST be produced with the value >>>>>>> node as sh:value." and "If [...], a validation result MUST be produced." >>>>>>> This means that each SHACL processor must produce these validation results >>>>>>> to be a conforming implementation of SHACL. >>>>>>> >>>>>>> The processor must produce these validation results no matter whether they >>>>>>> are going to show up in the final validation report or not. The processor >>>>>>> must produce these validation results even if it not going to return a >>>>>>> validation report at all. This mixing of conformance requirements into the >>>>>>> definition of validation introduces an unnecessary and problematic >>>>>>> procedural aspect into the underlying definitions of SHACL. >>>>>>> >>>>>>> Although it is mandated that a SHACL processor much produce these validation >>>>>>> results it is completely unclear how many must be produced. A SHACL >>>>>>> processor may end up checking whether a particular node satisfies a >>>>>>> particular constraint numerous times. Must it produce a validation result >>>>>>> for each of these times? Must it only produce one validation result for all >>>>>>> of these times? Or is the number of times it produce a validation result >>>>>>> undetermined? This multiplicity problem can show up at top-level due to >>>>>>> converging sh:property chains. >>>>>>> >>>>>>> The second problem is the form of a validation report. There is >>>>>>> insufficient guidance on how multiple validation results are to be >>>>>>> produced. For example, can a single validation result have multiple values >>>>>>> for sh:value, making it a validation report for multiple violations? >>>>>>> Similarly, if a shape has two sh:ClassConstraintComponent constraints, can >>>>>>> a single validation report be used for violations from both of them? >>>>>>> Without better guidance on these issues it will be very difficult to >>>>>>> determine just violations occured from a validation report. >>>>>>> >>>>>>> The third problem is just what validation results are to be included in a >>>>>>> validation report and which of these are to be values of sh:result for the >>>>>>> single node in the graph that is a SHACL instance of sh:ValidationReport. >>>>>>> There is "Only the validation results that are not object of any sh:details >>>>>>> triple in the results graph are top-level results." and "The property >>>>>>> sh:detail may link a (parent) result with one or more other (child) results >>>>>>> that provide further details about the cause of the (parent) result." >>>>>>> So a validation process has to produce validation results which then end up >>>>>>> in the validation report if they are not values for sh:details triples. >>>>>>> What happens if a validation result comes from violation of a constraint >>>>>>> that is both directly at top level (e.g., from a property shape that is value of >>>>>>> sh:property for a shape that has targets) and not at top level (e.g., from >>>>>>> the same property shape as before that is linked to the shape with targets >>>>>>> via a combination of sh:node and sh:property triples)? Can a SHACL >>>>>>> processor use sh:detail to collect that otherwise might be top-level >>>>>>> validation results? >>>>>>> >>>>>>> There are also some other minor problems with validation reports. For >>>>>>> example, there is the requirement that "A validation report has exactly one >>>>>>> value for the property sh:conforms that is of datatype xsd:boolean." >>>>>>> However, the result of validation is an RDF graph and RDF graphs so this >>>>>>> requirement doesn't make sense. The definitions underlying validation >>>>>>> reports need to be carefully examined to eliminate problems like these. >>>>>>> >>>>>>> Much of the description of how validation reports are generated and what >>>>>>> they contain need to be rewritten to remove any procedural aspects and to >>>>>>> suitably describe the contents of validation resports. As this will change >>>>>>> large portions of the document, reviewers cannot provide fully informed >>>>>>> commments on it at this time. >>>>>>> >>>>>> >>>> >>
Received on Sunday, 5 February 2017 17:51:37 UTC