From Provenance WG Wiki
Revision as of 13:52, 6 July 2011 by Tlebo (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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

  • 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 <>|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

Definition x.y.z.

blah, blah, blah