- From: Holger Knublauch <holger@topquadrant.com>
- Date: Mon, 28 Nov 2016 08:04:49 +1000
- To: public-data-shapes-wg@w3.org
Hi Karen, I don't see problems with the use of "define" in any of these sentences. If you feel strongly about this, please make specific suggestions on how to replace them, e.g. by preparing a branch. Holger On 28/11/2016 1:09, Karen Coyle wrote: > Here are the places where I think "define" is used incorrectly: > > 2.3.3 > A subjects-of target is specified with the predicate > sh:targetSubjectsOf, the values of which must be IRIs. For every value > p of such a target, the validated nodes are defined as the set of > subjects in the data graph that appear in a triple with p as a predicate. > > 3.4 > The validation report is the result of the validation process that > reports the conformance and the set of all validation results. The > validation report is described with the SHACL Validation Report > Vocabulary as defined in this section. This vocabulary defines the RDF > properties to represent structural information that may provide > guidance on how to identify or fix violations in the data graph. > > 4. > The textual description of each component refers to the concept of > value nodes which is defined as follows, including rules for the > creation of validation results: > > "The term 'value nodes' used in this section is defined as:" > > ->The part after the comma "including..." ? What does it refer to? > What includes this? > > 4.6 Property Pair Constraint Components > > The constraint components in this section restrict the sets of value > nodes in relation to other properties. Value nodes of focus node > constraints are always defined as a set of size 1 and may produce > unexpected results when used with constraint components of this category. > > 4.8.3 > any combination of parameters associated with node validation > constraints. A node validation constraint is any constraint defined by > a boolean function on nodes. These include the built-in constraints > defined by sh:nodeKind, sh:partition, sh:minExclusive, etc. The > corresponding subset consists of those remaining nodes for which the > boolean function is true. > > ->any combination of parameters associated with node validation > constraints. A node validation constraint is any constraint *that is* > a boolean function on nodes. These include the built-in constraints > sh:nodeKind, sh:partition, sh:minExclusive, etc. The corresponding > subset consists of those remaining nodes for which the boolean > function is true. > > The following paragraphs define this algorithm more precisely. > > -> drop this, put definition in a box (or some other way that shows > that it is not text), and caption it "Algorithm for partition" > > 5.2 > The SHACL vocabulary defines the class sh:PrefixDeclaration for the > values of sh:declare although no rdf:type triple is required for them. > > -> defines the class ... as the range/domain? for the values? I don't > know what this means > > 6.2.1 Parameter pre-binding > > Every parameter name defines a pre-bound variable for the constraint > component the parameter belongs to. > > ->?? how does a name define? What is supposed to be happening here? > > kc > > On 11/26/16 3:19 PM, Holger Knublauch wrote: >> >> >> On 26/11/2016 3:05, Irene Polikoff wrote: >>> How is this different from the following (interchangeable, as far as I >>> can tell) use of the words of ‘define’, ‘describe’ , ‘declare’ and >>> ‘represent’ in https://www.w3.org/TR/owl-ref/? >>> >>> A class description of the "enumeration" kind is defined with >>> the owl:oneOf >>> <http://www.w3.org/TR/2004/REC-owl-semantics-20040210/#owl_oneOf> >>> property. >>> The value of this built-in OWL property must be a list of >>> individuals that are the instances >>> <https://www.w3.org/TR/owl-ref/#Individual> of the class. This >>> enables a class to be described by exhaustively enumerating its >>> instances. The class extension of a class described >>> with |owl:oneOf| contains exactly the enumerated individuals, no >>> more, no less. The list of individuals is typically represented >>> with the help of the RDF construct |rdf:parseType="Collection"|, >>> which provides a convenient shorthand for writing down a set of >>> list elements. For example, the following RDF/XML syntax defines a >>> class of all continents: >>> >>> <owl:Class> >>> >>> <owl:oneOf rdf:parseType="Collection"> >>> >>> <owl:Thing rdf:about="#Eurasia"/> >>> >>> <owl:Thing rdf:about="#Africa"/> >>> >>> <owl:Thing rdf:about="#NorthAmerica"/> >>> >>> <owl:Thing rdf:about="#SouthAmerica"/> >>> >>> <owl:Thing rdf:about="#Australia"/> >>> >>> <owl:Thing rdf:about="#Antarctica"/> >>> >>> </owl:oneOf> >>> >>> </owl:Class> >>> >>> and >>> >>> The following example defines a class of individuals which have at >>> least one parent who is a physician: >>> >>> <owl:Restriction> >>> >>> <owl:onProperty rdf:resource="#hasParent" /> >>> >>> <owl:someValuesFrom rdf:resource="#Physician" /> >>> >>> </owl:Restriction> >>> >>> and >>> >>> The following example describes the class of individuals who have >>> the individual referred to as |Clinton| as their parent: >>> >>> <owl:Restriction> >>> >>> <owl:onProperty rdf:resource="#hasParent" /> >>> >>> <owl:hasValue rdf:resource="#Clinton" /> >>> >>> </owl:Restriction> >>> >>> and >>> >>> if the class description C1 is defined as a subclass of class >>> description C2, then the set of individuals in the class extension >>> of C1 should be a subset of the set of individuals in the class >>> extension of C2. A class is by definition a subclass of itself (as >>> the subset may be the complete set). >>> >>> An example: >>> >>> <owl:Class rdf:ID="Opera"> >>> >>> <rdfs:subClassOf rdf:resource="#MusicalWork" /> >>> >>> </owl:Class> >>> >>> This class axiom declares a subclass relation between two OWL >>> classes that are described through their names >>> (|Opera| and |MusicalWork|). >>> >>> >>> >>> I think we are wasting valuable time on this particular item. >> >> +1 >> >> For the record, I agree with the goal of getting the terminology right, >> and I agree that it's important. At some stage this is becoming rather >> arbitrary though (I mean just look at rdfs:isDefinedBy - shouldn't this >> be rdfs:isDeclaredBy?). This is one of these topics that seem to be only >> relevant in the weird realm of W3C specs, and have almost zero practical >> relevance for end users. >> >> With this clean up of "define" etc I have done what was asked, so let's >> please move on. We have 25 open tickets. >> >> Holger >> >> >>> [A I said previously, I do think that the terms ‘shape description’ or >>> ‘shape definition’ are worth defining] >>> >>> Further, to me, the version of the sentence below that uses “defined >>> using” is much clearer and more intuitive than the version that uses >>> “of”. >>> >>> Irene >>> >>>> On Nov 25, 2016, at 11:34 AM, Karen Coyle <kcoyle@kcoyle.net >>>> <mailto:kcoyle@kcoyle.net>> wrote: >>>> >>>> That's fine if the usage is unambiguous and follows the normal >>>> meaning of "define", and there are many clear uses of define in >>>> document, which I noted previously. If it is used to mean "provides a >>>> definition for" then it's fine. There are other times when it is used >>>> to mean "has as value" or simple "is" - as in >>>> >>>> "Note also that a qualified cardinality constraint defined using >>>> sh:qualifiedValueShape, sh:qualifiedMinCount, and >>>> sh:qualifiedMaxCount is equivalent to a sh:partition constraint >>>> that..." >>>> >>>> In those cases, the term "defined" is less precise than: >>>> >>>> Note also that a qualified cardinality constraint of either >>>> sh:qualifiedValueShape, sh:qualifiedMinCount, and >>>> sh:qualifiedMaxCount is equivalent to a sh:partition constraint >>>> that..." >>>> >>>> There's no need for define here, and nothing is really being defined. >>>> The use of these properties is not definitional, it simply "is" and >>>> should be stated that way. >>>> >>>> kc >>>> >>>> On 11/24/16 6:14 PM, Irene Polikoff wrote: >>>>> Several W3C specs use the words ‘define’, ‘describe’ and ‘specify’ >>>>> without saying what these words mean. They also, at times, use them >>>>> interchangeably. >>>>> >>>>> For example, I think in the following passage from RDFS spec, >>>>> ‘define’ >>>>> and ‘describe’ are used interchangeably: >>>>> >>>>> "rdfs:isDefinedBy is an instance of rdf:Property that is used to >>>>> indicate a resource defining the subject resource. This >>>>> property may >>>>> be used to indicate an RDF vocabulary *in which a resource is >>>>> described.* >>>>> >>>>> A triple of the form: >>>>> >>>>> S rdfs:isDefinedBy O >>>>> >>>>> states that the *resource O defines S*.” >>>>> >>>>> The word ‘declare’ or its derivation such as ‘declaration’ is used >>>>> more >>>>> rarely, but there is some usage. For example, in the RDFS spec: >>>>> >>>>> >>>>> "Although it is possible to combine use rdfs:domain and rdfs:range >>>>> with sub-property hierarchies, direct support for such >>>>> declarations >>>>> are provided by richer Web Ontology languages such as OWL.” >>>>> >>>>> >>>>> OWL spec also makes an extensive use of words ‘define’ or ‘describe’ >>>>> without defining them. However, it attempts to define something >>>>> called >>>>> ‘class description’ and ‘class definition’ e.g., >>>>> in https://www.w3.org/TR/2004/REC-owl-features-20040210/: >>>>> >>>>> "A class description is the term used in this document (and in the >>>>> OWL Semantics and Abstract Syntax) for the basic building >>>>> blocks of >>>>> class axioms (informally called class definitions in the Overview >>>>> and Guide documents). A class description describes an OWL class, >>>>> either by a class name or by specifying the class extension of an >>>>> unnamed anonymous class.” >>>>> >>>>> >>>>> And in https://www.w3.org/TR/owl-guide/ >>>>> >>>>> Class Definition >>>>> informal term for an owl:Class element >>>>> Class Description >>>>> describes an OWL class, either by a class name or by >>>>> specifying >>>>> a class extension of an unnamed anonymous class >>>>> >>>>> >>>>> The specification makes an extensive use of the phrase “class >>>>> description”. >>>>> >>>>> With this, I question the need to formally define words such as >>>>> “define”, “describe”, etc. because all other specs seem to rely on >>>>> the >>>>> common sense interpretation of these words. It may be useful to >>>>> define >>>>> “shape description” and/or “shape definition'. This could also >>>>> help to >>>>> resolve Issue-209. >>>>> >>>>> Irene Polikoff >>>>> >>>>> >>>>> >>>>> >>>>> On 11/24/16, 3:22 PM, "Karen Coyle" <kcoyle@kcoyle.net >>>>> <mailto:kcoyle@kcoyle.net> >>>>> <mailto:kcoyle@kcoyle.net>> wrote: >>>>> >>>>> I would advise choosing only one of them, and removing >>>>> "sometimes" from >>>>> the statement, which makes it something you cannot rely on - in >>>>> other >>>>> words, are they used other times for something else? is something >>>>> else >>>>> sometimes used in their place?: >>>>> >>>>> "(In this document, the verbs <em>specify</em> or >>>>> <em>declare</em> are >>>>> sometimes used to express the fact that a node has property >>>>> values in a >>>>> graph.)" >>>>> >>>>> I haven't read through the uses at this point. >>>>> >>>>> kc >>>>> >>>>> On 11/23/16 9:11 PM, Holger Knublauch wrote: >>>>> >>>>> I have gone through the whole document, replacing most >>>>> usages of >>>>> "define" with either "specify" or "declare". I have also added >>>>> definitions of these two terms to the beginning of the >>>>> document: >>>>> >>>>> https://github.com/w3c/data-shapes/commit/92407af35824a7100845b4a84884c86de086b9d7 >>>>> >>>>> Holger >>>>> >>>>> >>>>> On 19/11/2016 2:15, Irene Polikoff wrote: >>>>> >>>>> I would use "specified" for the second meaning of >>>>> "defined". >>>>> I think >>>>> "declared" would work as well. "Described" - may be, but >>>>> would not be >>>>> my first choice. >>>>> >>>>> On Thu, Nov 17, 2016 at 5:21 PM, RDF Data Shapes Working >>>>> Group Issue >>>>> Tracker <sysbot+tracker@w3.org >>>>> <mailto:sysbot+tracker@w3.org> >>>>> <mailto:sysbot+tracker@w3.org> >>>>> <mailto:sysbot+tracker@w3.org>> wrote: >>>>> >>>>> shapes-ISSUE-197 (Defined ): "Defined" and "declared" >>>>> used in >>>>> multiple ways, and not defined [SHACL Spec] >>>>> >>>>> http://www.w3.org/2014/data-shapes/track/issues/197 >>>>> <http://www.w3.org/2014/data-shapes/track/issues/197> >>>>> >>>>> Raised by: Karen Coyle >>>>> On product: SHACL Spec >>>>> >>>>> >From Peter's email [1]: >>>>> >>>>> "Constraints are defined within a shape" >>>>> >>>>> "Defined within" is not defined. >>>>> >>>>> "Constraints that declare more than one parameters, >>>>> such as >>>>> sh:pattern, are >>>>> not allowed to be declared more than once in the same >>>>> constraint." >>>>> >>>>> The first two uses of "declare" come from section >>>>> 6.2. A core >>>>> definition is >>>>> needed. >>>>> >>>>> The last use of "declared" is not defined. >>>>> >>>>> "declare" is used for many different purposes, >>>>> most of >>>>> them undefined. >>>>> >>>>> ******* More analysis ******* >>>>> The use of defined in its normal sense of "having a >>>>> definition" is >>>>> ok. Example: >>>>> >>>>> "The parameter name is defined as the local name >>>>> of the >>>>> value of >>>>> sh:predicate." >>>>> >>>>> The use of defined to mean something like "takes as a >>>>> value" or >>>>> "is coded as" is less clear: >>>>> >>>>> "Property constraints are defined in a shape with the >>>>> property >>>>> sh:property." >>>>> "Based on the parameter IRIs on the tables, pre-bound >>>>> variables >>>>> are defined using the parameter names." >>>>> >>>>> In some cases, the term "declare" is used in the same >>>>> way as the >>>>> second meaning of define: >>>>> " Constraint components declare one or more parameter >>>>> properties >>>>> and validation instructions (such as those >>>>> implemented >>>>> as SPARQL >>>>> queries) that can be used to perform the >>>>> validation for >>>>> the given >>>>> focus node and parameter values." >>>>> >>>>> Suggest: >>>>> - use "defined" for "is given a definition or meaning >>>>> in this or >>>>> other texts >>>>> - do not use "declare" >>>>> - find a more precise term for the second meaning of >>>>> "defined" >>>>> that specifically addresses the creation of >>>>> properties >>>>> and values, >>>>> regardless of how "definitional" they are. >>>>> >>>>> (Note how this is used in the SKOS document: >>>>> "Therefore, while >>>>> SKOS can be used to describe a concept scheme, SKOS >>>>> does not >>>>> provide any mechanism to completely define a concept >>>>> scheme." >>>>> Could "describe" be used for this second meaning of >>>>> "define"? That >>>>> still seems imprecise for the specific cases in >>>>> SHACL.) >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Karen Coyle >>>>> kcoyle@kcoyle.net >>>>> <mailto:kcoyle@kcoyle.net> <mailto:kcoyle@kcoyle.net> >>>>> http://kcoyle.net >>>>> <http://kcoyle.net/> >>>>> m: 1-510-435-8234 >>>>> skype: kcoylenet/+1-510-984-3600 >>>>> >>>>> >>>> >>>> -- >>>> Karen Coyle >>>> kcoyle@kcoyle.net <mailto:kcoyle@kcoyle.net> http://kcoyle.net >>>> <http://kcoyle.net/> >>>> m: 1-510-435-8234 >>>> skype: kcoylenet/+1-510-984-3600 >>> >> >
Received on Sunday, 27 November 2016 22:05:29 UTC