Starting Point Terms

The Starting Point category is a small set of classes and properties that can be used to create simple, initial provenance descriptions. Three classes provide a basis for the rest of PROV-O:

The three primary classes relate to one another and to themselves using the properties shown in the following figure.

Activities start and end at particular points in time (described using properties prov:startedAtTime and prov:endedAtTime, respectively) and during their lifespan can use and generate a variety of Entities (described with prov:used and prov:wasGeneratedBy, respectively). For example, a blog writing activity may use a particular dataset and generate a bar chart. By expressing usage and generation, one can construct provenance chains comprising both Activities and Entities.

In addition, we can say that an Activity prov:wasInformedBy another Activity to provide some dependency information without explicitly providing the activities' start and end times. A prov:wasInformedBy relation between Activities suggests that the informed Activity used an Entity that was generated by the informing Activity, but the Entity itself is unknown or is not of interest. So, the prov:wasInformedBy property allows the construction of provenance chains comprising only Activities.

Provenance chains comprising only Entities can be formed using the prov:wasDerivedFrom property. A derivation is a transformation of one entity into another. For example, if the Activity that created the bar chart is not known or is not of interest, then we can say that the bar chart prov:wasDerivedFrom the dataset. Arbitrary RDF properties can be used to describe the fixed aspects of an Entity that are interesting within a particular application (for example, the file size and format of the dataset, or the aspect ratio of the bar chart).

While the properties prov:used, prov:wasGeneratedBy, prov:wasInformedBy, and prov:wasDerivedFrom can be used to construct provenance chains among Activities and Entities, Agents may also be ascribed responsibility for any Activity or Entity within a provenance chain. An Agent's responsibility for an Activity or Entity is described using the properties prov:wasAssociatedWith and prov:wasAttributedTo, respectively. Agents can also be responsible for other Agents' actions. In this case of delegation, the influencing Agent prov:actedOnBehalfOf another Agent that also bears responsibility for the influenced Activity or Entity.

The properties rdf:type and rdfs:label are used to express prov:type and prov:label, respectively.

PROV-O Starting Point terms
Figure 1. The three Starting Point classes and the properties that relate them.
The diagrams in this document depict Entities as yellow ovals,
Activities as blue rectangles, and Agents as orange pentagons.
The responsibility properties are shown in pink.

Example 1: The following PROV-O describes the resources involved when creating a chart about crime statistics. The example uses only Starting Point terms and serves as a basis for elaboration that will be described in subsequent sections. In the example, Derek performs an aggregation of some government crime data, grouping by national regions that are described in a separate dataset by a civil action group.

{% include "includes/eg16-journalism-simple-without-comments.ttl" %}

The example states that the agent :derek was associated with two activities: :aggregationActivity and :illustrationActivity. The activity :aggregationActivity used the entities :crimeData (a crime statistics dataset) and :nationalRegionsList (a list of national regions), and generated a new entity, :aggregatedByRegions that aggregates the statistics in :crimeData according to the regions in :nationalRegionsList. The :aggregatedByRegions entity was then used by the :illustrationActivity activity, to generate a new entity :bar_chart that depicts the aggregated statistics.

The example also states that the activity :illustrationActivity was informed by the activity :aggregationActivity. Indeed, the former used the entity :aggregatedByRegions, which was generated by the latter.

Because the agent :derek was associated with the activities :aggregationActivity and :illustrationActivity, the entities generated by these activities, i.e., :aggregatedByRegions and :bar_chart, were also attributed to him.

Finally, the example states that the agent :derek acted on behalf of the organization :national_newspaper_inc.

Illustration of Derek making a bar chart from some aggregated government data.
Figure 2. A graphical illustration of the PROV-O in Example 1, showing how the three Starting Point classes relate.
The diagrams in this document depict Entities as yellow ovals, Activities as blue rectangles,
and Agents as orange pentagons. The responsibility properties are shown in pink.