From Provenance WG Wiki
Definition for Concept 'Agent'
The Provenance WG charter identifies the concept 'Agent' as a core concept of the provenance interchange language to be standardized (see http://www.w3.org/2011/01/prov-wg-charter).
- What term do we adopt for the concept 'Agent'?
- How do we define the concept 'Agent'?
- Where does concept 'Agent' appear in ProvenanceExample?
- Which provenance query requires the concept 'Agent'?
Proposed Definitions for the Concept 'Agent'
Definition by Jun
An agent is an entity (human or otherwise) involved in the process execution.
- analyst (alice) is an agent, involved in the download of a serialization, and etc.
- government (gov) is an agent, involved in the conversion of data (d1) to RDF (f1), and etc.
- blogger (bob) is an agent, involved in creating the chart (c2), and etc.
- newspaper (news) is an agent, involved in the publication process
- newspaper (news) is also an agent in obtaining the image from Carlos. But is Carlos an agent in this process?
Definition by Satya
Agent is an entity that is causally linked to a process. Agent may be linked to execution of a process (stop/start/modify) or definition of a process (e.g. author of a workflow).
Agent entities in the ProvenanceExample: (In addition to Jun' list above)
- freelancer (carlos)
- writer (joe)
Definition by Khalid
An agent is a (physical or digital) entity that controls one or multiple process executions.
- The newspaper, the blogger and the government portal are examples of agents
I would prefer to use the term “controller” instead of “agent”. To me, the term “agent” is a bit vague.
Definition by Olaf
In the Provenance Vocabulary we defined it as "a general class that represents active entities." (although we called it "actor" instead of "agent").
Definitions provided by Paul
Dublin Core defines Agent as: A resource that acts or has the power to act. Comment: Examples of Agent include person, organization, and software agent.
FOAF defines it as: The|Agent <http://xmlns.com/foaf/spec/#term_Agent>|class is the class of agents; things that do stuff eg. person, group, software or physical artifact
PREMIS: Agents are entities that have actied upon objects e.g. people, organizations
Definitions provided by Stephan Z
A thing that is actively involved in a process execution is an Agent.
Note: I think this definition is closely aligned with Jun's.
Attempt at a summary definition by Paul G
An agent is an active thing. It may be linked to a process execution, for example, by controlling it. Examples of agent include person, organization, and software agent.
To answer Luc's question I originally intended to say that I thought an agent can be defined independently of process execution and I agreed that an agent should be a node whose relationship to a process execution should be defined by a control/participation/influence(?) edge.
As I thought about it a bit more I began to wonder if agent was better described as a role (active participant) a thing takes in the context of some specific action (in this case a process execution). An agent is definitely a thing, but is that thing always an agent? Or is it an agent within the context/scope of the act it has participated in?
A thing assumes the role of agent when actively participating in a process execution?
I think I am leaning towards making 'agent' status of a thing dependent upon active participation in a process execution.
- So the Agent is an IVP of the Thing when it is actively participationg in a process execution --Stian
blah, blah, blah