W3C home > Mailing lists > Public > public-prov-wg@w3.org > July 2011

Re: PROV-ISSUE-40 (recommended-roles): Roles should not be SHOULD and not MUST [Conceptual Model]

From: Paul Groth <p.t.groth@vu.nl>
Date: Mon, 25 Jul 2011 11:35:22 +0200
Message-ID: <4E2D38DA.6000909@vu.nl>
To: Luc Moreau <L.Moreau@ecs.soton.ac.uk>
CC: "public-prov-wg@w3.org" <public-prov-wg@w3.org>
I'm using the definitions in [1], which are used in W3C specs. The 
definitions for MUST and SHOULD are:

- MUST   This word, or the terms "REQUIRED" or "SHALL", mean that the
    definition is an absolute requirement of the specification.

- SHOULD   This word, or the adjective "RECOMMENDED", mean that there
    may exist valid reasons in particular circumstances to ignore a
    particular item, but the full implications must be understood and
    carefully weighed before choosing a different course.

The justification for using SHOULD is that it allows me some flexibility 
in writing down provenance that is compatible with the spec. If I don't 
know the roles and I won't break anything but I might not get the full 
functionality of the spec (maybe?). So I think that there are valid 
reasons not to write down roles but probably I should think before not 
doing it.


[1] http://www.ietf.org/rfc/rfc2119.txt

Luc Moreau wrote:
> It would be good to have advise on the choice MUST/SHOULD.
> I would have thought that to promote interoperability we should go for
> the stronger requirements,
> when possible.
> I can turn your comment around. I'm missing a justification for a SHOULD
> here.
> Luc
> PS. I don't think it's a hack to have unspecified role. Mandating a role
> guarantees a uniform data structure.
>       It facilitates the writing of queries/searches.  I guess that's my
> justification for MUST.
> On 07/25/2011 10:22 AM, Paul Groth wrote:
>> It seems like unspecified is a hack to let you get around not saying a
>> role.
>> Again, I think I'm missing a justification of the MUST verses just
>> making it a strong recommendation (i.e. SHOULD).
>> I think you have some inferences in mind based around roles.... but I
>> think it just means that you won't be able to make those inferences if
>> you don't provide roles.
>> thanks,
>> Paul
>> Luc Moreau wrote:
>>> I believe there is a difference between a conceptual model and its
>>> encoding in
>>> a specific data/knowledge format.
>>> In my view, it is reasonable to require the presence of a role in a
>>> conceptual model.
>>> A given notation, say RDF, may provide "abbreviations", which allow for
>>> the role not
>>> to be expressed. This notation will have an explanation that absence of
>>> a role corresponds
>>> to the role  "unspecified".
>>> So, I believe that the conceptual model should define distinguished
>>> roles, e.g. unspecified.
>>> BTW, the file note.txt in the repository also suggested other roles
>>> Luc
>>> On 07/23/2011 03:14 PM, Provenance Working Group Issue Tracker wrote:
>>>> PROV-ISSUE-40 (recommended-roles): Roles should not be SHOULD and
>>>> not MUST [Conceptual Model]
>>>> http://www.w3.org/2011/prov/track/issues/40
>>>> Raised by: Paul Groth
>>>> On product: Conceptual Model
>>>> Currently, roles are required for Generation, Use, and isControlledby.
>>>> Specifically the following sentence is given:
>>>> "Use, Generation, and Control assertions must contain a role."
>>>> It is not clear why roles must always be there. In some cases, I may
>>>> not want to assert the role that something played with respect to a
>>>> process.
>>>> Suggested resolution is to replace MUST with SHOULD.

Dr. Paul Groth (p.t.groth@vu.nl)
Assistant Professor
Knowledge Representation & Reasoning Group
Artificial Intelligence Section
Department of Computer Science
VU University Amsterdam
Received on Monday, 25 July 2011 09:38:15 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:58:07 UTC