Re: shapes-ISSUE-197 (Defined ): "Defined" and "declared" used in multiple ways, and not defined [SHACL Spec]

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 Saturday, 26 November 2016 23:20:01 UTC