OPMW

OPMW is an ontology for describing workflows based on the Open Provenance Model. It has been designed as a profile for OPM, extending and reusing OPM's core ontologies OPMV (OPM-Vocabulary) and OPMO (OPM-Ontology).

Publications

A comprehensive description of OPMW with examples:

A shorter, earlier report on OPMW:

Requirements and Use of OPMW

We developed the OPMW profile as an extension of OPM to represent abstract workflows in addition to workflow execution traces. This requirement was motivated by the goal of publishing workflows of scientific articles. That work was done in the context of reproducing and reusing the workflow to compute the "drugome" of an organism. As part of that work, we mapped Wings terms to OPMW. We also published the OPMW workflows as Linked Data. We also developed a simple application to browse the published workflows. More details about this work are in the project site.

OPMW Overview

OPM offers several core concepts and relationships to represent provenance. It models the resources (datasets) as artifacts (immutable pieces of state), processes (action or series of actions performed on artifacts), and agents (controllers of processes). Their relationships are modeled in a provenance graph with five causal edges: used (a process used some artifact), wasControlledBy (an agent controlled some process), wasGeneratedBy (a process generated an artifact), wasDerivedFrom (an artifact was derived from another artifact) and wasTriggeredBy (a process was triggered by another process). It also introduces the concept of roles to assign the type of activity that artifacts, processes or agents played when interacting with each other, and the notion of accounts and provenance graphs to group sets of OPM assertions into different subgraphs. An account represents a particular view on the provenance of an artifact based on what was executed.

We have extended OPM to fit in our scientific workflow domain. Table 1 summarizes the extensions to the ontology with a description:

OPMW: Process View Provenance

The next Figure illustrates a simple workflow example in OPMW:


Figure1: Process view provenance with OPMW

The template process in Figure 1 (templateNode1) uses one input artifact (artifact1), has one abstract component (absComp1) and generates an output artifact (outputArtifact1). All template artifacts and processes are linked to a WorkflowTemplate through hasArtifactTemplate and hasArtifactProcess respectively. On the right side of the figure we can see how the processInstance (executionNode1), controlled by a user (user1) which is of type Agent, used a particular input bound to its corresponding ArtifactTemplate and generates the ouputArtifact. All artifacts, processes and agents are linked to the execution account, which has as template workflow the one in the left side of the figure. Each instance is also bound to its template by the explicit relationship hasWorkflowTemplate.

OPMW: Attribution View Provenance

Attibution is key for scientists who develop experiments. In OPMW we distinguish between 2 kinds of attribution. The first one is the metadata of the template (or workflow specification): authors, contributors, version, additional documentation, etc.; while the second one descibes the specific execution of the workflow: who performed it, which tools were used to perform it, whether it was successful or not, etc.

Figure 2 shows an example of the attribution view provenance capture in OPMW. It describes the attribution provenance view of Figure 1.

Figure 2: Attribution view provenance in OPMW.