Hello,
There is no documentation above what is in the javadocs at the moment. The
events are in a hierachy of WorklowProvenanceItem - ProcessProvenanceItem -
ProcessorProvenanceItem-ActivityProvenanceItem-IterationProvenanceItem.
Each Iteration item contains input and output data provenance items. There
is also an event which captures the end of workflow run. The items are
captured by the ProvenanceConnector processed by the 'EventProcessor'. As
Paolo has mentioned these are then stored in a database (currently derby in
Taverna but Paolo uses a MySQL one for all of his research). An API is then
used to query the provenance stored through the ProvenanceAccess class.
The ProvenanceConnector module in the svn
http://taverna.googlecode.com/svn/taverna/engine/net.sf.taverna.t2.core/trunk/contains
most of the code needed. If you also look at the
IntermediateProvenance dispatch stack layer you can also see how the events
are captured.
Here is a summary of what happens:
When running a workflow the first thing that happens is an instance of a
WorkflowInstanceFacade is created and this creates a WorkflowProvenanceItem
and sends it across for processing and storage. The workflow is then
enacted which causes data to flow through each processors dispatch stack
which creates provenance items as this data flows through the
IntermediateProvenance layer. When the workflow is running the facade
observes what is happening and receives notifications that results are
complete for a processor at which point it creates a
WorkflowDataProvenanceItem. If the results for all the output ports in this
dataflow have arrived then it creates a DataflowRunComplete event.
Cheers,
Ian
2009/10/12 Girish Subramanian <[email protected]>
> Hi Ian ,
>
>
>
> Thanks for your reply. I have some additional questions :
>
>
>
> Is there any documentation or a technical report available which talks
> about the various events that are sent out when the workflow gets executed ?
> And also the event contents ?
>
>
>
> I assume right now all these Provenance Items are getting stored in a
> database. Is there any documentation available which talks about the schema
> ?
>
>
>
>
>
> Thanks,
>
> Girish
>
>
>
> *From:* Ian Dunlop [mailto:[email protected]]
> *Sent:* Monday, October 12, 2009 11:06 AM
> *To:* List for general discussion and hacking of the Taverna project
> *Subject:* Re: [Taverna-hackers] Provenance Plugin for Taverna
>
>
>
> Hello,
>
> The provenance capture in T2 captures 'everything' that happens when
> workflows are invoked. The events that flow through your workflow are
> captured as ProvenanceItems and sent across to the
> ProvenanceReporter/Provenanceconnector plugin for processing. It is here
> where you can change what happens to these events.
> You would need to create your own ProvenanceConnector, have a look at the
> DerbyProvenanceConnector in the SVN for ideas and also how to plugin your
> own. It's really just a case of subclassing ProvenanceConnector and
> overriding the addProvenanceItem method. You will also need the magic SPI
> files in src/main/resources/META-INF/services to make sure your version can
> be found by taverna. Taverna creates them through a factory so you also
> need to create that class.
>
> Cheers,
>
> Ian
>
> 2009/10/12 Alan Williams <[email protected]>
>
> Girish Subramanian wrote:
> > Hi all,
>
> Hello,
>
>
> > I am planning to write a provenance plugin for Taverna.
>
> Have you looked at the provenance capture that is already in Taverna?
> In 2.1 beta 2 the information about the run is captured in a database
> and it is this data which is used to produce the "intermediate results"
> information.
>
> For 2.1, Paolo Missier, Ian Dunlop and Stuart Owen have been working on
> improving the provenance capture. This includes OPM support and an API
> to allow out-of-Taverna access to the provenance data.
>
>
> > I have the following
> > questions :
> >
> > 1. The SVN repository that I am using is
> > http://taverna.googlecode.com/svn/taverna/ . I guess this is the latest
> > ones. Please correct me if I am wrong.
>
> Yes, that is the code repository.
>
>
> > 2. For my provenance collection part I need some callback mechanism which
> > gets invoked , before invoking or executing any of the nodes in the
> > workflows. Do we have such a framework built in Taverna engine, else what
> is
> > the work around ? Can someone guide me through the classes that I should
> > look into to get this done .
>
> The relevant packages are under net.sf.taverna.t2.provenance.
> net.sf.taverna.t2.provenance.lineageservice.Provenance takes events and
> passes them to net.sf.taverna.t2.provenance.lineageservice.EventProcessor
>
> You would probably want to implement your own EventProcessor. Paolo and
> Ian can give more details.
>
>
> > 3. Is there any documentation which points out how to create a new plugin
> > for tavern.
>
> There will be archetypes available, certainly for activity plugins, for
> 2.1.
>
> > Thanks,
> > Girish Subramanian
>
> Alan
>
>
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> taverna-hackers mailing list
> [email protected]
> Web site: http://www.taverna.org.uk
> Mailing lists: http://www.taverna.org.uk/taverna-mailing-lists/
> Developers Guide: http://www.mygrid.org.uk/tools/developer-information
>
>
>
>
> --
> Ian Dunlop
> myGrid Team
> School of Computer Science
> University of Manchester
>
--
Ian Dunlop
myGrid Team
School of Computer Science
University of Manchester
------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
taverna-hackers mailing list
[email protected]
Web site: http://www.taverna.org.uk
Mailing lists: http://www.taverna.org.uk/taverna-mailing-lists/
Developers Guide: http://www.mygrid.org.uk/tools/developer-information