Skip to content
Versionv0.1 ALPHA 2

Schema

OSDF metadata is JSON, validated against published JSON Schemas and canonicalized with JCS before hashing or signing. This page summarizes the core objects.

Manifest

The manifest enumerates every object in the container with its media type and digest. No object may exist in the container without a manifest entry.

json
{  "osdf_version": "0.4",  "profile": "osdf-verified",  "objects": [    { "path": "content/body.osdfc", "type": "application/osdf-content", "sha256": "9f2c…" },    { "path": "render/document.pdf", "type": "application/pdf", "sha256": "1ab7…" }  ],  "content_digest": "SHA-256:7d41…"}

Signature object

json
{  "alg": "Ed25519",  "signer": "did:osdf:org:co-dor#k1",  "payload_digest": "SHA-256:7d41…",  "created": "2026-02-11T17:04:00Z",  "signature": "base64url…"}

Revision record

json
{  "doc_id": "01J9…",  "n": 7,  "parent": "SHA-256:c0de…",  "merkle_root": "SHA-256:beef…",  "created": "2026-02-11T17:04:00Z"}

Validation rules

  • Unknown fields in a mandatory object cause rejection under strict profiles.
  • All timestamps are RFC 3339 UTC.
  • All digests carry an explicit algorithm prefix.

See the full machine-readable schemas in the conformance test vectors.

Spec status: working draft v0.4 · subject to change before v1.0.