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

Re: Proposed changes to Process Execution and related concepts

From: Ryan Golden <ryan.golden@oracle.com>
Date: Tue, 12 Jul 2011 11:52:32 -0500
Message-ID: <4E1C7BD0.3090400@oracle.com>
CC: public-prov-wg@w3.org
Thanks for taking a look at this, Graham, and I'd be interested to hear 
more feedback from others.  To address a couple of your comments:

My intent with Agent was that it closely resemble the concept of 
Invocation, as you say.  I suppose the language "is a computational 
entity" does not effectively convey the intention.  I think Invocation 
necessarily implies an Invoker, so I chose a similar but broader concept 
of Realization.  How does does this strike you as a replacement for 
Process Execution?

     An Agent realizes zero or more Roles on behalf of zero or more 
Persons or Organizations."

My intention with Role is to broaden the idea of Recipe to include more 
abstract functions and purposes, but also to add a subtle implication 
(though not requirement) that it is something to be realized on behalf 
of a person or organization.

In associating Person or Organization to the concepts of Agent and Role, 
the model comes closer to something that would be useful in representing 
audit trails or in establishing the trustworthiness of provenance 
assertions.

--Ryan

On 7/12/2011 10:00 AM, Graham Klyne wrote:
> (ref. W3C Web Services Architecture Note <http://www.w3.org/TR/ws-arch>)
>
> Notwithstanding the slightly divergent usage in the provenance 
> research community, I think there is value in using terms already 
> adopted in the web services community where they align - I think that 
> would help to make our outputs be more readily accepted, hence more 
> relevant.  Thus, I think "Person or Organization" is reasonable term, 
> replacing (as I understand) what provenance efforts have described as 
> "Agent".
>
> But my understanding is that "Process execution" is *not* the same as 
> ws-arch:"Agent", being intended to reflect a specific invocation of 
> the programme or service.  I think the term ws-arch:"Agent" would more 
> closely replace "Recipe".
>
> I'm not sure "Role" (ws-arch:"Service Role") has a direct 
> correspondence in the terms we've discussed to date, though there is a 
> notion of something like role in OPM.  Similarly for "Realizes" and 
> "Acts on Behalf of".
>
> #g
> -- 
>
> Ryan Golden wrote:
>>    I'd like to bring a proposal up for discussion regarding Process 
>> Execution and its related concepts.  Although at the F2F1 there 
>> wasn't much discussion over "Process Execution," "Generates," "Uses," 
>> and "Agent," I believe more clarification and discussion is needed in 
>> these areas.
>>
>> High Level Proposal
>> ----------------------------
>> a) Rename the concept of "Process Execution" to "Agent," 
>> adjusting/adding a few properties
>> b) Rename the concept of "Process/Recipe" to "Role," adjusting/adding 
>> a few properties
>> c) Add the concept of "Person or Organization"
>> d) Add the concept of "Realizes"
>> e) Add the concept of "Acts on Behalf of"
>>
>> More Detailed Proposal
>> ---------------------------------
>> a) Concept: Agent
>>     - is a computational entity (narrowed from "piece of work")
>>     - may use zero or more Entity States (Bobs)
>>     - may generate zero or more Entity States  (Bobs)
>>     - may realize zero or more Roles
>>     - may have a duration
>>     - may acts on behalf of a "Person or Organization"
>>     Discussion:
>>         Agent is a relatively well-defined industry term for an 
>> program acting on a user's behalf.   I propose it as a replacement 
>> for "Process Execution," which has the overloaded (and thus 
>> undesireable) term "process" in it, and does not necessarily imply 
>> that it is acting on behalf of any one person or organization.  In 
>> scenarios involving trust, audit, or change tracking, the ability to 
>> identify the "who" is crucial, and so the relation between Agent and 
>> Person or Organization is introduced.  "Person or Organization" is 
>> discussed further below.         Some other common variations are 
>> "software agent," or "user agent."  One notable difference between 
>> this concept and other agent concepts is that our Agent may have a 
>> duration.  I'm still undecided on the utility of the duration.
>>         There will be some discussion here about non-computational 
>> agents.  I would question the utility of being able to assert 
>> relations involving Entity States (Bobs) and non-computational 
>> agents, and would ask you to first consider whether the same 
>> semantics could be better represented by a Role instead [see next].
>>
>> b) Concept: Role
>>     - is an abstract set of tasks which pertain to a job function
>>     - may have semantics beyond the scope of the WG model (e.g., as 
>> described in the RBAC reference model)
>>     - may be realized by zero or more Agents        Discussion:
>>         Replaces the somewhat confused notions of "Agent" (as it was 
>> discussed at F2F1), "Process," and "Recipe".  Note that multiple 
>> Roles can be realized by a single Agent.
>>
>> c) Concept: Person or Organization
>>     - is a real-world person or organization that an Agent acts on 
>> behalf of
>>
>> d) Concept: Realizes
>>     [see Agent and Role]
>>
>> e) Concept: Acts on Behalf of
>>     [see Agent and Person or Organization]
>>
>> References:
>> I have adapted some of this proposal from concepts in the W3C Web 
>> Services Architecture Note <http://www.w3.org/TR/ws-arch>, a document 
>> that I don't entirely agree with, but which has some useful models in 
>> it. I also referred to the NIST RBAC reference model.
>
Received on Tuesday, 12 July 2011 16:53:18 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 26 April 2012 13:06:37 GMT