Skip to main content
v2026.11,610 entries · CC-BY 4.0
LAC HealthLaboratory & ResearchLab & research supplies.Reagents, consumables, PPE & instruments — documented, fast, chain-of-custody shipping.Shop lac.us lac.us
Dictionary termTrack CProposedv2026.1

PROV-O (Provenance Ontology)

PROV-O is the W3C's OWL2 ontology (a W3C Recommendation since 30 April 2013) for expressing data provenance as machine-readable RDF: it defines Entity (a thing with fixed aspects), Activity (something that acts upon or generates entities over time), and Agent (something responsible for an activity or entity), connected by properties such as wasGeneratedBy, used, wasAssociatedWith, and wasDerivedFrom.

ByCASRAI Editorial Board
· Last updated 17 Jul 2026

Examples

Worked examples

  • Is an instance

    A gene-expression dataset whose provenance is encoded as PROV-O triples: raw sequencing reads (prov:Entity) generated by a sequencer run (prov:Activity) that prov:wasAssociatedWith a named technician (prov:Agent), with a downstream QC-filtered dataset prov:wasDerivedFrom the raw reads.

  • Is an instance

    A computational workflow-management system that emits a PROV-O (or PROV-N/PROV-XML) provenance trace automatically for every pipeline run, recording every input file, script version, and parameter as Entities and Activities without manual documentation.

Counter-examples

Looks similar, but isn't

  • Not an instance

    A README stating "data cleaned by J. Smith, March 2026, using a custom R script" documents provenance informally but is not PROV-O — nothing in it is expressed as prov:Entity/prov:Activity/prov:Agent triples under the PROV-O namespace, so it cannot be machine-queried without manual re-encoding.

Editorial commentary

PROV-O (the PROV Ontology) is the World Wide Web Consortium’s formal, machine-readable vocabulary for expressing data provenance — a data object’s history of creation, modification, and use — as OWL2 statements that software can parse, query, and reason over. It is not the concept of provenance itself; it is the standard way of encoding that concept so it survives outside a single researcher’s memory, lab notebook, or README.

What makes something an instance of PROV-O

A provenance record counts as expressed in PROV-O when it is built from PROV-O’s three core classes and the relationships connecting them, all defined under the namespace http://www.w3.org/ns/prov# (conventionally the prov: prefix):

  • prov:Entity — “a physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary.” A raw sequencer output, a cleaned CSV, a published figure, and a software container image are all entities.
  • prov:Activity — “something that occurs over a period of time and acts upon or with entities … consuming, processing, transforming, modifying, relocating, using, or generating entities.” A sequencing run, a statistical analysis script execution, or a peer-review round are activities.
  • prov:Agent — “something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent’s activity.” A named researcher, a lab, a piece of software, or an instrument can all be agents.

These three classes are connected by a fixed set of “starting-point” properties, the ones that show up in nearly every real PROV-O record:

  • wasGeneratedBy — an entity was produced by an activity
  • used — an activity consumed an entity as input
  • wasAssociatedWith — an activity involved an agent
  • wasAttributedTo — an entity is ascribed to an agent
  • wasDerivedFrom — an entity was transformed or derived from another entity
  • actedOnBehalfOf — one agent delegated responsibility to another (e.g., a technician acting on behalf of a principal investigator)

PROV-O was published as a W3C Recommendation on 30 April 2013 by the W3C Provenance Working Group, alongside PROV-DM (the underlying conceptual data model PROV-O encodes in OWL2) and sibling notations for the same model — PROV-N (a compact, human-readable notation) and PROV-XML (an XML schema serialization). PROV-O itself conforms to the OWL-RL profile with only a small number of documented exceptions, which is what makes it usable for automated reasoning rather than just documentation.

Data provenance vs. PROV-O: the concept vs. the standard

Data provenance is the general research-data-management concept: the documented history of an object, answering what entity exists, what activity produced or changed it, what agent was responsible, and what upstream entities it was derived from. Any lab notebook entry, workflow-engine log, or Git commit history is, informally, already trying to answer those same questions. PROV-O is one specific, formal way to encode those answers — the W3C’s OWL2 vocabulary for doing it in RDF triples that a machine can traverse and validate, rather than free text a human has to read and interpret. A dataset can have excellent provenance documentation without ever touching PROV-O; PROV-O matters specifically where provenance needs to be machine-actionable — queried across a repository, validated automatically, or exchanged between systems that don’t share a common human-readable format.

Worked example

A gene-expression dataset expressed in PROV-O might assert, as RDF triples: the raw sequencing reads are a prov:Entity; a specific sequencer run is a prov:Activity that prov:generated those reads; the sequencer run prov:wasAssociatedWith a named technician (a prov:Agent) operating on behalf of the lab’s principal investigator (actedOnBehalfOf); a downstream quality-filtered dataset (a new prov:Entity) prov:wasDerivedFrom the raw reads via a QC pipeline activity that prov:used both the raw reads and a specific reference genome build as inputs. Encoded this way, a repository or analysis tool can programmatically answer “which raw files fed into this published figure, and who ran each step?” without a human tracing it by hand.

Counter-example

A README file stating “data cleaned by J. Smith, March 2026, using a custom R script” documents provenance in the general sense — it answers who, what, and roughly when — but it is not PROV-O. Nothing in it is expressed as prov:Entity/prov:Activity/prov:Agent triples under the PROV-O namespace, so no software can query or validate it without first being manually re-encoded. It is provenance documentation; it is not a PROV-O record.

Why it matters for research data management

PROV-O underpins tools and workflows across bioinformatics, digital-preservation, and reproducible-computation contexts where provenance needs to move between systems rather than stay locked in one person’s notes. It is complementary to, not a replacement for, core metadata (the descriptive fields — title, creator, date, identifier — that make a dataset findable) and the storage/curation role of a data repository: core metadata says what a dataset is, PROV-O says how it came to be that way. Packaging specifications such as FAIRsharing-listed standards and research-object formats often reference or align with the PROV data model even when they don’t use PROV-O’s OWL2 serialization directly — computational workflow outputs are a common case where full run-level provenance (inputs, parameters, computational environment) is expected as part of a citable, reusable deposit.

Related terms

  • Data provenance — the general RDM concept PROV-O formally encodes
  • Core metadata — the descriptive fields that make a dataset findable, distinct from its provenance history
  • Data repository — the storage/curation infrastructure where provenance records are typically retained alongside the data itself
  • Workflow (as output) — a computational research output for which run-level provenance is commonly expected
  • FAIRsharing (concept) — a registry of data standards, including provenance-related ones, relevant to choosing how to document it

References

Machine-readable encodings

Use in your systems

JATS XML <role> element
xml
<role vocab="credit"
      vocab-identifier="https://casrai.org/dictionary/"
      vocab-term="PROV-O (Provenance Ontology)"
      vocab-term-identifier="https://casrai.org/dictionary/term/prov-o" />
Schema.org DefinedTerm (JSON-LD)
json
{
  "@context": "https://schema.org",
  "@type": "DefinedTerm",
  "@id": "https://casrai.org/dictionary/term/prov-o",
  "name": "PROV-O (Provenance Ontology)",
  "identifier": "https://casrai.org/dictionary/term/prov-o",
  "description": "PROV-O is the W3C's OWL2 ontology (a W3C Recommendation since 30 April 2013) for expressing data provenance as machine-readable RDF: it defines Entity (a thing with fixed aspects), Activity (something that acts upon or generates entities over time), and Agent (something responsible for an activity or entity), connected by properties such as wasGeneratedBy, used, wasAssociatedWith, and wasDerivedFrom.",
  "inDefinedTermSet": "https://casrai.org/dictionary/domain/reproducibility-comp#set",
  "url": "https://casrai.org/dictionary/term/prov-o",
  "sameAs": [],
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "publisher": {
    "@id": "https://casrai.org/#organization"
  },
  "dateModified": "2026-07-17T04:59:18",
  "inLanguage": "en"
}

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →