This wiki has been archived and is now read-only.

Renaming the concept Responsibility

From Provenance WG Wiki
Jump to: navigation, search

Proposal: Find a new name for "Responsibility"

This is http://www.w3.org/2011/prov/track/issues/376

Please mention "ISSUE-376" in email.


  • Delegation (a name we've used before)
    • - con: performing agents can do things without "being told to do it"
  • Behalf
    • + pro: suits the unqualified form actedOnBehalfOf
  • (keep) Responsibility
    • - con: The name of the concept "Responsibility" and the OWL class prov:Responsibility are not clearly distinguished from their counterparts Association and Attribution.
    • - con: The name "Responsibility" does not match its unqualified name actedOnBehalfOf


The latest published DM defines Association as:

An activity association is an assignment of responsibility to an agent for an activity, 
indicating that the agent had a role in the activity. It further allows for a plan to 
be specified, which is the plan intended by the agent to achieve some goals in the 
context of this activity. 


    a prov:Activity;
    prov:wasAssociatedWith :bad_driver;

And defines Attribution as:

Attribution is the ascribing of an entity to an agent.


    a prov:Entity;
    prov:wasGeneratedBy  :car_crash;
    prov:wasAttributedTo :bad_driver;

Note that Association mentions "responsibility" (as it should, that's the point of the relation). Attribution is also ascribing a [responsible] agent to an entity. So both Association and Attribution tie something [Entity, Activity] to a responsible Agent.

In PROV-O, when we instantiate instances of Association or Attribution, we are adding descriptions to some unqualified wasAssociatedWith or wasAttributedTo relations (respectively).

But when we instantiate an instance of Responsibility, one could reasonably expect to be adding descriptions to the same unqualified relations wasAssociatedWith or wasAttributedTo (since they are expressing "responsibility").

Instead, instances of Responsibility are adding descriptions to the unqualified actedOnBehalfOf relation:

   a prov:Agent;
   prov:actedOnBehalfOf :police_department;
   prov:qualifiedResponsibility [            # prov:qualifiedBehalf would suit prov:actedOnBehalfOf
      a prov:Responsibility;                 # prov:Behalf          would suit prov:actedOnBehalfOf
      prov:agent        :police_department;
      :onDuty           true;