classDiagram
class Provenance
click Provenance href "./Provenance.html"
Provenance : activities
Provenance --> "*" Activity : activities
click Activity href "./Activity.html"
Provenance : date_created
Provenance --> "0..1" String : date_created
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : derived_from
Provenance --> "0..1" String : derived_from
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : digest
Provenance --> "*" Digest : digest
click Digest href "./Digest.html"
Provenance : environment
Provenance --> "0..1" SoftwareEnvironment : environment
click SoftwareEnvironment href "./SoftwareEnvironment.html"
Provenance : experiment_yaml_hash
Provenance --> "0..1" String : experiment_yaml_hash
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : generated_by
Provenance --> "0..1" String : generated_by
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : inputs
Provenance --> "*" ReferenceFingerprint : inputs
click ReferenceFingerprint href "./ReferenceFingerprint.html"
Provenance : license
Provenance --> "0..1" String : license
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : outputs
Provenance --> "*" String : outputs
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Provenance : references
Provenance --> "*" String : references
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Class: Provenance
W3C PROV-O aligned provenance ABOUT the artifact that carries it — reusable on any entity (Network, TimeSeries, Dynamics, …), which is why it holds no identity of its own: the parent supplies that. The identified prov:Entity a standalone provenance record names is ResultEntity, which carries one of these.
Carried by the frozen spec beside a result container, this is the whole record of the run: activities says what was executed and when, environment says on what machine and against which package versions, and digest checksums what came out. None of that is derivable from a recipe, which is why it is recorded — and all of it travels with the artifact it describes rather than in a parallel directory that has to be kept in step.
URI: tvbo:Provenance
Class Properties
| Property | Value |
|---|---|
| Class URI | tvbo:Provenance |
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| derived_from | 0..1 xsd:string |
direct | |
| references | * xsd:string |
direct | |
| environment | 0..1 SoftwareEnvironment |
The machine and the resolved package set the run actually loaded, carried in … | direct |
| date_created | 0..1 xsd:string |
ISO 8601 (prov:generatedAtTime) | direct |
| outputs | * xsd:string |
The data variables the container actually holds, read off it when the record … | direct |
| license | 0..1 xsd:string |
direct | |
| generated_by | 0..1 xsd:string |
Software/agent identifier: the prov:Agent this artifact is attributed to | direct |
| experiment_yaml_hash | 0..1 xsd:string |
SHA-256 hex digest of the normalised experiment YAML that produced this artif… | direct |
| digest | * Digest |
Checksums of the artifact itself, keyed by function name | direct |
| activities | * Activity |
The runs that produced this artifact, serialized to BEP028’s activity record | direct |
| inputs | * ReferenceFingerprint |
Per-input fingerprints for cache invalidation | direct |
Usages
| used by | used in | type | used |
|---|---|---|---|
| Figure | provenance | range | Provenance |
| ResultEntity | provenance | range | Provenance |
| ExperimentResultSidecar | provenance | range | Provenance |
| Phenotype | provenance | range | Provenance |
| Network | provenance | range | Provenance |
| SimulationExperiment | provenance | range | Provenance |
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/tvbo
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | tvbo:Provenance |
| native | tvbo:Provenance |
LinkML Source
Direct
name: Provenance
description: 'W3C PROV-O aligned provenance ABOUT the artifact that carries it — reusable
on any entity (Network, TimeSeries, Dynamics, ...), which is why it holds no identity
of its own: the parent supplies that. The identified ``prov:Entity`` a standalone
provenance record names is ``ResultEntity``, which carries one of these.
Carried by the frozen spec beside a result container, this is the whole record of
the run: ``activities`` says what was executed and when, ``environment`` says on
what machine and against which package versions, and ``digest`` checksums what came
out. None of that is derivable from a recipe, which is why it is recorded — and
all of it travels with the artifact it describes rather than in a parallel directory
that has to be kept in step.'
from_schema: https://w3id.org/tvbo
slots:
- derived_from
- references
- environment
slot_usage:
environment:
name: environment
description: 'The machine and the resolved package set the run actually loaded,
carried in full rather than by name: this record travels with one container''s
sidecar, so a reference to an environment defined elsewhere would point outside
the only file a reader has.'
inlined: true
attributes:
date_created:
name: date_created
description: ISO 8601 (prov:generatedAtTime)
from_schema: https://w3id.org/tvbo
domain_of:
- SimulationTool
- Provenance
range: string
outputs:
name: outputs
description: The data variables the container actually holds, read off it when
the record is written rather than predicted from the spec, so a run that recorded
less than it declared is visible here. The one fact in this record that the
recipe beside it cannot supply.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Provenance
- ResultEntity
range: string
multivalued: true
license:
name: license
from_schema: https://w3id.org/tvbo
domain_of:
- CommonCoordinateSpace
- SoftwarePackage
- SoftwareRequirement
- Provenance
range: string
generated_by:
name: generated_by
description: 'Software/agent identifier: the prov:Agent this artifact is attributed
to.'
from_schema: https://w3id.org/tvbo
close_mappings:
- prov:wasAttributedTo
rank: 1000
domain_of:
- Provenance
range: string
experiment_yaml_hash:
name: experiment_yaml_hash
description: SHA-256 hex digest of the normalised experiment YAML that produced
this artifact. Used by the cross-experiment cache (see :class:`SimulationStudy.from_file`)
to detect when a cached upstream result has gone stale because the experiment's
spec was edited. Computed as ``hashlib.sha256(yaml.safe_dump(normalized_yaml).encode()).hexdigest()``
over the fully resolved (post-``!include``) experiment block.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Provenance
range: string
digest:
name: digest
description: Checksums of the artifact itself, keyed by function name. BEP028's
``Digest``, and distinct from ``experiment_yaml_hash``, which digests the spec
that produced the artifact rather than the artifact.
from_schema: https://w3id.org/tvbo
exact_mappings:
- prov:value
rank: 1000
domain_of:
- Provenance
range: Digest
multivalued: true
inlined: true
activities:
name: activities
description: The runs that produced this artifact, serialized to BEP028's activity
record. Each names the command, the software that carried it out and what it
consumed.
from_schema: https://w3id.org/tvbo
exact_mappings:
- prov:wasGeneratedBy
rank: 1000
domain_of:
- Provenance
range: Activity
multivalued: true
inlined: true
inlined_as_list: true
inputs:
name: inputs
description: Per-input fingerprints for cache invalidation. Each entry records
the IRI + dotted-field path of an ``aux_data`` reference plus the (mtime, size,
sha256) of the underlying file at the time the artifact was produced. A downstream
cache hit requires every fingerprint to match the current file state.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Provenance
range: ReferenceFingerprint
multivalued: true
inlined_as_list: true
class_uri: tvbo:ProvenanceInduced
name: Provenance
description: 'W3C PROV-O aligned provenance ABOUT the artifact that carries it — reusable
on any entity (Network, TimeSeries, Dynamics, ...), which is why it holds no identity
of its own: the parent supplies that. The identified ``prov:Entity`` a standalone
provenance record names is ``ResultEntity``, which carries one of these.
Carried by the frozen spec beside a result container, this is the whole record of
the run: ``activities`` says what was executed and when, ``environment`` says on
what machine and against which package versions, and ``digest`` checksums what came
out. None of that is derivable from a recipe, which is why it is recorded — and
all of it travels with the artifact it describes rather than in a parallel directory
that has to be kept in step.'
from_schema: https://w3id.org/tvbo
slot_usage:
environment:
name: environment
description: 'The machine and the resolved package set the run actually loaded,
carried in full rather than by name: this record travels with one container''s
sidecar, so a reference to an environment defined elsewhere would point outside
the only file a reader has.'
inlined: true
attributes:
date_created:
name: date_created
description: ISO 8601 (prov:generatedAtTime)
from_schema: https://w3id.org/tvbo
owner: Provenance
domain_of:
- SimulationTool
- Provenance
range: string
outputs:
name: outputs
description: The data variables the container actually holds, read off it when
the record is written rather than predicted from the spec, so a run that recorded
less than it declared is visible here. The one fact in this record that the
recipe beside it cannot supply.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Provenance
domain_of:
- Provenance
- ResultEntity
range: string
multivalued: true
license:
name: license
from_schema: https://w3id.org/tvbo
owner: Provenance
domain_of:
- CommonCoordinateSpace
- SoftwarePackage
- SoftwareRequirement
- Provenance
range: string
generated_by:
name: generated_by
description: 'Software/agent identifier: the prov:Agent this artifact is attributed
to.'
from_schema: https://w3id.org/tvbo
close_mappings:
- prov:wasAttributedTo
rank: 1000
owner: Provenance
domain_of:
- Provenance
range: string
experiment_yaml_hash:
name: experiment_yaml_hash
description: SHA-256 hex digest of the normalised experiment YAML that produced
this artifact. Used by the cross-experiment cache (see :class:`SimulationStudy.from_file`)
to detect when a cached upstream result has gone stale because the experiment's
spec was edited. Computed as ``hashlib.sha256(yaml.safe_dump(normalized_yaml).encode()).hexdigest()``
over the fully resolved (post-``!include``) experiment block.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Provenance
domain_of:
- Provenance
range: string
digest:
name: digest
description: Checksums of the artifact itself, keyed by function name. BEP028's
``Digest``, and distinct from ``experiment_yaml_hash``, which digests the spec
that produced the artifact rather than the artifact.
from_schema: https://w3id.org/tvbo
exact_mappings:
- prov:value
rank: 1000
owner: Provenance
domain_of:
- Provenance
range: Digest
multivalued: true
inlined: true
activities:
name: activities
description: The runs that produced this artifact, serialized to BEP028's activity
record. Each names the command, the software that carried it out and what it
consumed.
from_schema: https://w3id.org/tvbo
exact_mappings:
- prov:wasGeneratedBy
rank: 1000
owner: Provenance
domain_of:
- Provenance
range: Activity
multivalued: true
inlined: true
inlined_as_list: true
inputs:
name: inputs
description: Per-input fingerprints for cache invalidation. Each entry records
the IRI + dotted-field path of an ``aux_data`` reference plus the (mtime, size,
sha256) of the underlying file at the time the artifact was produced. A downstream
cache hit requires every fingerprint to match the current file state.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Provenance
domain_of:
- Provenance
range: ReferenceFingerprint
multivalued: true
inlined: true
inlined_as_list: true
derived_from:
name: derived_from
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: prov:wasDerivedFrom
owner: Provenance
domain_of:
- Provenance
- SimulationStudy
range: string
references:
name: references
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: dcterms:references
owner: Provenance
domain_of:
- Provenance
- Observation
- Dynamics
- SimulationExperiment
- SimulationStudy
range: string
multivalued: true
environment:
name: environment
description: 'The machine and the resolved package set the run actually loaded,
carried in full rather than by name: this record travels with one container''s
sidecar, so a reference to an environment defined elsewhere would point outside
the only file a reader has.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Provenance
domain_of:
- Provenance
- Observation
- SimulationExperiment
- PDESolver
range: SoftwareEnvironment
inlined: true
class_uri: tvbo:Provenance