Fwd: ISSUE-385: hasProvenanceIn: finding a solution

Professor Luc Moreau
Electronics and Computer Science
University of Southampton
Southampton SO17 1BJ
United Kingdom

Begin forwarded message:

From: Graham Klyne <gklyne@googlemail.com<mailto:gklyne@googlemail.com>>
Date: 2 June 2012 07:22:57 GMT+01:00
To: Luc Moreau <L.Moreau@ecs.soton.ac.uk<mailto:L.Moreau@ecs.soton.ac.uk>>, Provenance Working Group WG <public-prov-wg@w3.org<mailto:public-prov-wg@w3.org>>
Subject: Re: ISSUE-385: hasProvenanceIn: finding a solution

I've reviewed this example again. You claim ... "would lead us to believe that good rating is due to slow performance.".

If all occurrences of ex:Bob denote the same thing, I don't see how you can conclude this. Only that ex:Bob had a good rating, a poor rating, a fast performance and a slow performance.

there's insufficient information to say which rating was associated with which performance.

#g.

--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.

Luc Moreau <L.Moreau@ecs.soton.ac.uk<mailto:L.Moreau@ecs.soton.ac.uk>> wrote:

All,

To try and converge towards a solution, I am
circulating an example using a ternary hasProvenanceIn.
I would like to understand if and how we can make it work with
a simpler relation.


Two bundles ex:run1 and ex:run2 describe bob's role as a controller
of two activities.  Same bob, two different bundles.

     bundle ex:run1
      activity(ex:a1, 2011-11-16T16:00:00,2011-11-16T17:0:00)
//duration: 1hour
      wasAssociatedWith(ex:a1,ex:Bob,[prov:role="controller"])
     endBundle

     bundle ex:run2
      activity(ex:a2, 2011-11-17T10:00:00,2011-11-17T17:0:00)
//duration: 7hours
      wasAssociatedWith(ex:a2,ex:Bob,[prov:role="controller"])
     endBundle


A performance analysis tool rates the performance of agents (this could
be used
to dispatch further work
to performant agents, or congratulate them, etc).


     bundle tool:analysis01

       agent(tool:Bob1, [perf:rating="good"])
       hasProvenanceIn(tool:Bob1, ex:run1, ex:Bob)  // Bob performance
in ex:run1 is good

       agent(tool:Bob2, [perf:rating="bad"])
       hasProvenanceIn(tool:Bob2, ex:run2, ex:Bob)  // Bob performance
in ex:run2 is bad

     endBundle

The performance analysis tool has to rate two involvements of ex:Bob in
two separate activities.
Two specialized version of ex:Bob are defined: tool:bob1 and tool:bob2,
with rating good and
bad respectively.

tool:Bob1 is linked to ex:Bob in run1, and tool:Bob2 is linked to ex:Bob
in run2, with the following

       hasProvenanceIn(tool:Bob1, ex:run1, ex:Bob)
       hasProvenanceIn(tool:Bob2, ex:run2, ex:Bob)

Nothing is expressed about ex:Bob in bundle tool:analysis01 (except that

this is an alias
for tool:Bob1 and tool:Bob2).

It is suggested that the ternary relation could be replaced by
isTopicIn(tool:Bob1, ex:run1)
and
specialization(tool:Bob1, ex:Bob).

I don't understand the point of
   isTopicIn(tool:Bob1, ex:run1)
since tool:Bob1 is not a topic in ex:run1.

Also, we now seem to have made ex:Bob a topic of tool:analysis01, because
the following expression.
specialization(tool:Bob1, ex:Bob).

 From tool:analysis01, where do I find provenance about ex:Bob?
It look like this has become a dead end in this graph.

Do I need to introduce:
   isTopicIn(ex:Bob, ex:run1)
   isTopicIn(ex:Bob, ex:run2)?


So now we would  have:
isTopicIn(tool:Bob1, ex:run1)
specialization(tool:Bob1, ex:Bob)
isTopicIn(tool:Bob2, ex:run2)
specialization(tool:Bob2, ex:Bob)
isTopicIn(ex:Bob, ex:run1)
isTopicIn(ex:Bob, ex:run2)

Which means that:

specialization(tool:Bob1, ex:Bob)
isTopicIn(ex:Bob, ex:run2)

... would lead us to believe that good rating is due to slow performance.

Can the proposer of the separate binary relations explain how this
example can work?

Thanks,
Luc

Received on Saturday, 2 June 2012 08:43:00 UTC