TROV Vocabulary Reference#
TROV 0.1 DRAFTThis document is a draft and subject to revision. Please submit feedback or report issues.
Term reference for the Transparent Research Object Vocabulary (TROV). Lists every class, property, and named individual in the current draft, with descriptions and cardinality constraints.
Document Section |
Description |
|---|---|
Namespace, version, status, and license |
|
Core entities: TRO, TRS, TRP, artifacts, compositions, arrangements |
|
Relationships between entities: linking TROs to TRSs, TRPs, arrangements, etc. |
|
What a TRS can do (e.g. provide internet isolation) |
|
Transparency claims about a specific performance |
|
Transparency claims about a TRO as a whole |
|
Required vs optional properties and their multiplicities |
|
RDF, RDFS, and schema.org terms used alongside TROV |
|
Scope boundaries and open questions for 0.1 |
|
JSON-LD context, design rationale, relationship to pre-release |
For the conceptual background motivating this vocabulary, see the TRACE Conceptual Model. For the JSON-LD format used to express TRO declarations, see TRO Declaration Format. For the design rationale behind the JSON-LD format, see TRO Declaration Design.
Vocabulary Metadata#
Namespace |
|
Prefix |
|
Version |
0.1 (Draft) |
License |
|
Publisher |
|
Status |
Namespace URI does not yet resolve — see Versioning Strategy and Roadmap for the resolution plan. |
Classes#
Core Entities#
Class |
Description |
|---|---|
|
Common base class for TRSs, TRPs, and TROs. |
|
A set of research artifacts produced by one or more TRPs and signed by the assembling TRS. Subclass of |
|
A system that performs TRPs and assembles TROs. Subclass of |
|
A supervised unit of work conducted by a TRS. The centerpiece of the TRACE conceptual model. Subclass of |
|
An RFC 3161 timestamping authority trusted by a TRS. Subclass of |
Artifacts and Compositions#
Class |
Description |
|---|---|
|
Base class for collections of one or more artifacts. |
|
The set of all digital artifacts described by a TRO, identified by a composition fingerprint. Subclass of |
|
A digital object (file, dataset, or bitstream) identified by a content hash. |
|
A hash computed over the sorted hashes of all artifacts in a composition. Enables identifying TROs that describe the same set of artifacts. |
Arrangements and Locations#
Class |
Description |
|---|---|
|
A named collection of artifact locations. Arrangements are linked to performances as inputs or outputs. |
|
The placement of a specific artifact within an arrangement. Links one artifact to one resource path. |
The Warrant Chain: Attributes and Capabilities#
The warrant chain is TROV’s mechanism for accountability. When transparency claims are made about a TRO, the warrant chain records who is responsible for them.
TRO attribute
← warranted by → TRP attribute
← warranted by → TRS capability
Class |
Description |
|---|---|
|
Base class for attributes of a TRS, TRP, or TRO. |
|
An attribute of a TRS. Subclass of |
|
A declared ability of a TRS to enforce a specific transparency condition. Subclass of |
|
A TRS-level assertion about a capability. Subclass of |
|
A transparency claim about the conditions under which a specific TRP was conducted. Subclass of |
|
A transparency claim about a TRO as a whole, warranted by attributes of its constituent TRPs. Subclass of |
Properties#
TRO Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
Literal (string) |
The TROV vocabulary version this declaration conforms to (e.g. |
|
|
|
Links a TRO to the TRS that produced and signed it. |
|
|
|
Links a TRO to a TSA that timestamped the TRS signature. |
|
|
|
Links a TRO to the composition of artifacts it describes. |
|
|
|
Links a TRO to an artifact arrangement it describes. |
|
|
|
Links a TRO to a TRP it describes. |
|
|
|
Links a TRO to a transparency attribute asserted for it. |
TRS Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
|
Links a TRS to a capability it declares. |
|
|
Literal |
The signing identity of the TRS (e.g. GPG public key, X.509 certificate). Representation under review for 0.1. |
TRP Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
|
Links a TRP to the TRS that conducted it. |
|
|
|
Links a TRP to an arrangement it read from. |
|
|
|
Links a TRP to an arrangement it wrote to. |
|
|
|
Links a TRP to a transparency attribute claimed for it. |
|
|
Literal (ISO 8601 string) |
When the performance began. |
|
|
Literal (ISO 8601 string) |
When the performance ended. |
Composition and Artifact Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
|
Links a composition to an artifact it contains. |
|
|
|
Links a composition to its fingerprint. |
|
|
Object or array of objects |
One or more hashes of an artifact’s contents or of a composition’s sorted artifact hash values. Each object contains |
|
(within |
Literal (string) |
The algorithm used to compute the hash (e.g. |
|
(within |
Literal (string) |
The computed hash value. |
|
|
Literal (string) |
The MIME type of an artifact. |
Arrangement and Location Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
|
Links an arrangement to one of its artifact locations. |
|
|
|
Links a location to the artifact placed there. |
|
|
Literal (string: file path, URI, or other locator) |
The resource path for the artifact within this arrangement. |
Warrant Chain Properties#
Property |
Domain |
Range |
Description |
|---|---|---|---|
|
|
|
Links a performance attribute to the TRS capability that justifies it. |
|
|
|
Links a TRO attribute to the performance attribute(s) that justify it. |
Named Individuals: TRS Capability Types#
The following capability types are currently defined. This list is designed to grow as new transparency conditions are identified by the research community.
Capabilities Implemented by tro-utils / SIVACOR#
Individual |
Parent |
Description |
|---|---|---|
|
|
The TRS can isolate computations from network access during a TRP. |
|
|
The TRS can record all network accesses made during a TRP. |
Additional Capabilities Under Discussion#
Individual |
Parent |
Description |
|---|---|---|
|
|
The TRS can prevent access to the host environment during a TRP (e.g., sandbox or container execution). |
|
|
The TRS can prevent author intervention during a TRP (e.g., fully automated execution). |
|
|
The TRS can exclude input data from a TRO produced during a TRP. |
|
|
The TRS can exclude output data from a TRO produced during a TRP. |
|
|
The TRS can ensure all input data is included in the TRO package. |
|
|
The TRS can require all input data exists prior to a TRP. |
|
|
The TRS can require all input data is stored locally prior to a TRP. |
|
|
The TRS can ensure all input data persists after a TRP. |
|
|
The TRS can ensure all output data is included in the TRO package. |
|
|
The TRS can ensure all custom code is included in the TRO package. |
|
|
The TRS can record a full description of the software environment. |
|
|
The TRS can detect Internet access during a TRP. |
|
|
The TRS can enforce Internet isolation during a TRP. |
|
|
The TRS can prevent user interaction during a TRP. |
|
|
The TRS can enforce all of its declared capabilities through technical means (as opposed to policy-based enforcement). |
Named Individuals: TRP Attribute Types#
Individual |
Parent |
Warranted By |
Description |
|---|---|---|---|
|
|
|
The TRP was conducted without network access. |
|
|
|
All network accesses during the TRP were recorded. |
Named Individuals: TRO Attribute Types#
Individual |
Parent |
Warranted By |
Description |
|---|---|---|---|
|
|
(TRP attributes) |
The TRO composition includes all input data employed in creating the TRO. |
Cardinality Constraints#
The following constraints are defined in SHACL shapes and enforced during validation.
Shape |
Property |
Constraint |
|---|---|---|
TRO |
|
Exactly 1 (string) |
TRO |
|
Exactly 1 TRS |
TRO |
|
At most 1 TSA |
TRO |
|
Exactly 1 |
TRO |
|
At least 1 |
TRS |
|
Exactly 1 (string) |
TSA |
|
Exactly 1 (string) |
Composition |
|
Exactly 1 |
Composition |
|
At least 1 |
Fingerprint |
|
Exactly 1 (object) |
Artifact |
|
At least 1 (object or array) |
Artifact |
|
At most 1 (string) |
Arrangement |
|
At least 1 |
Location |
|
Exactly 1 |
Location |
|
Exactly 1 (string) |
External Vocabularies Used#
TROV uses terms from the following external vocabularies:
Prefix |
Namespace |
Usage |
|---|---|---|
|
|
|
|
|
|
|
|
|
Known Limitations#
Limitation |
Disposition |
|---|---|
Only two TRP attribute types defined ( |
Acceptable for 0.1 — new types can be added without breaking changes |
Only one TRO attribute type defined ( |
Acceptable for 0.1 — same reasoning |
|
Resolve for 0.1 |
No |
Resolve for 0.1 |
|
Deferred to 0.2 |
|
Acceptable for 0.1 — no standard RDF class exists; candidate for replacement if one emerges |
Notes#
Namespace. The 0.1 namespace is https://w3id.org/trace/trov/0.1#; the pre-release namespace https://w3id.org/trace/2023/05/trov# is retired. See Pre-Release Vocabulary Reference for migration guidance.
Extensibility. The capability and attribute type lists are designed to be extended. New TRS capability types and corresponding performance/TRO attribute types can be added as new transparency conditions are identified. Existing TRS certificates and TRO declarations remain valid when new types are introduced.
Signing mechanism. TROV is agnostic to the specific signing technology. Current implementations use GPG and X.509/CMS. The trov:publicKey property representation and a proposed trov:signingMechanism property are under review for 0.1.
Interoperability. TROV aims to be interoperable with, rather than to replace, current and future Research Object standards (e.g., RO-Crate), archival formats (e.g., BagIt), and repository layouts. TROV complements the W3C PROV-O ontology for describing general provenance relationships.
JSON-LD context. TRO declarations use a @context block to map short-form term names to the URIs defined here. See TRO Declaration Format for the structure and TRO Declaration Design for the dual-audience rationale.