- From: Paul Groth <p.t.groth@vu.nl>
- Date: Wed, 10 Oct 2012 12:06:03 +0200
- To: "Freimuth, Robert, Ph.D." <Freimuth.Robert@mayo.edu>
- Cc: "public-prov-wg@w3.org" <public-prov-wg@w3.org>
Hi Robert, Sorry for the delayed reply. In an object oriented implementation, one could see an Agent as an interface. That way you can just test if a particular entity implements the agent interface. Anyway, that's one way to do it. cheers Paul On Wed, Oct 3, 2012 at 9:21 PM, Freimuth, Robert, Ph.D. <Freimuth.Robert@mayo.edu> wrote: > Hi Paul, > > Thanks for the RDF example. However, as I am considering PROV for use within a clinical environment, my implementation would be relational and most likely object-oriented. (In fact, this is the primary motivation for my focus on the DM doc.) In that case, will I have to perform two separate queries to find instances of the person as both an entity and as an agent? > > More to the point, I am concerned that giving users the freedom to instanciate the same "thing" in multiple ways will pose interoperability and aggregation problems later on. > > Thanks, > Bob > > >> -----Original Message----- >> From: pgroth@gmail.com [mailto:pgroth@gmail.com] On Behalf Of >> Paul Groth >> Sent: Wednesday, October 03, 2012 2:04 PM >> To: Freimuth, Robert, Ph.D. >> Cc: public-prov-wg@w3.org >> Subject: Re: PROV-ISSUE-520: Data Model Section 5.3.1 [prov-dm] >> >> Hi Robert >> >> Hmm... in RDF speak you would ask for something like >> >> select * where {ex:Jim rdf:type ?type} >> >> you would get back that Bob is both an entity and an agent. >> >> then if you wanted to find the cases where ex:Jim was only an agent >> then you would write >> >> select * where {ex:Jim rdf:type prov:Agent. ex:Jim ?p ?o} >> >> so this would work fine... >> >> Paul >> >> On Wed, Oct 3, 2012 at 8:53 PM, Freimuth, Robert, Ph.D. >> <Freimuth.Robert@mayo.edu> wrote: >> > Hi, >> > >> > I understand the distinction PROV makes between entities and agents, >> > regarding responsibility. However, I am concerned >> (confused?) that this >> > might make it difficult to implement consistently, which >> will ultimately >> > hinder interoperability. >> > >> > For example, let's say I define a person as an entity >> (because that person >> > bears no responsibility in the provenance assertions I >> publish) but a >> > colleague defines the same person as an agent. If I wanted >> to query my >> > provenance system for the person in question, will I have >> to perform two >> > separate queries to find instances of the person as both an >> entity and as an >> > agent? >> > >> > Thanks, >> > Bob >> > >> > >> > ________________________________ >> > From: public-prov-wg-request@listhub.w3.org >> > [mailto:public-prov-wg-request@listhub.w3.org] On Behalf Of >> Luc Moreau >> > Sent: Tuesday, September 25, 2012 4:34 AM >> > To: public-prov-wg@w3.org >> > Subject: Re: PROV-ISSUE-520: Data Model Section 5.3.1 [prov-dm] >> > >> > Hi all, >> > >> > I have drafted a response to this issue on the wiki at: >> > >> http://www.w3.org/2011/prov/wiki/ResponsesToPublicComments#ISS >> UE-520_.28Person.2FOrganization.2FSoftwareAgent.29 >> > I copy the text below for your convience. >> > >> > Feedback, suggestions welcome. >> > Luc >> > >> > >> > ISSUE-520 (Person/Organization/SoftwareAgent) >> > >> > Original email: >> > http://lists.w3.org/Archives/Public/public-prov-wg/2012Sep/0110.html >> > Tracker: http://www.w3.org/2011/prov/track/issues/520 >> > Group Response: >> > >> > The reason why the WG introduced agents in the PROV model >> is to be able to >> > assign responsibility for an activity taking place, for the >> existence of an >> > entity, or for another agent's activity. >> > For inter-operability reason, the WG also believed it is >> useful to define >> > commonly encountered types of agents: Person, SoftwareAgent, and >> > Organization. Agents of type prov:Person are people responsible for >> > something; agents of type prov:SoftwareAgent are running software >> > responsible for something; etc >> > Given this, it is not appropriate to make >> Person/SoftwareAgent/Organization >> > subtypes of Entity, since entities by default do not bear >> responsibility in >> > the PROV model. It is the notion of prov:Agent that carries >> responsibility, >> > in PROV. >> > If one wishes to introduce a type of person, as an entity, without >> > associating any responsibility, then there are ontologies, >> outside PROV, >> > which allow for that. FOAF concepts such as foaf:Person, >> foaf:Organization >> > may be relevant. With these, one can write entity(e, >> > [prov:type='foaf:Person']) >> > >> > References: >> > >> > foaf:Person: http://xmlns.com/foaf/spec/#term_Person >> > foaf:Organization: http://xmlns.com/foaf/spec/#term_Organization >> > >> > References: >> > Proposed changes: none >> > Original author's acknowledgement: >> > >> > >> > >> > On 10/09/2012 09:47, Provenance Working Group Issue Tracker wrote: >> > >> > PROV-ISSUE-520: Data Model Section 5.3.1 [prov-dm] >> > >> > http://www.w3.org/2011/prov/track/issues/520 >> > >> > Raised by: Luc Moreau >> > On product: prov-dm >> > >> > >> > >> http://www.w3.org/2011/prov/wiki/LC_Feedback#Data_Model_Section_5.3.1 >> > >> > ISSUE-463 >> > >> > Given their definitions, Entities (or Activities) act as Agents for >> > Activities. Since Person, Software, and Organization all >> fit the definition >> > of Entity, I believe they should be specializations of >> Entity rather than >> > Agent, which is a role that Entities can play in a given context. >> > >> > >> > >> > >> > >> > >> > >> > -- >> > Professor Luc Moreau >> > Electronics and Computer Science tel: +44 23 8059 4487 >> > University of Southampton fax: +44 23 8059 2865 >> > Southampton SO17 1BJ email: l.moreau@ecs.soton.ac.uk >> > United Kingdom http://www.ecs.soton.ac.uk/~lavm >> > >> >> >> -- >> -- >> Dr. Paul Groth (p.t.groth@vu.nl) >> http://www.few.vu.nl/~pgroth/ >> Assistant Professor >> - Knowledge Representation & Reasoning Group | >> Artificial Intelligence Section | Department of Computer Science >> - The Network Institute >> VU University Amsterdam >> -- -- Dr. Paul Groth (p.t.groth@vu.nl) http://www.few.vu.nl/~pgroth/ Assistant Professor - Knowledge Representation & Reasoning Group | Artificial Intelligence Section | Department of Computer Science - The Network Institute VU University Amsterdam
Received on Wednesday, 10 October 2012 10:06:39 UTC