OCFL 1.1 · 10 logical files · SHA-512 inventory

OCFL 1.1 Preservation Object for Bopomofo

A transparent, version-aware preservation object for digital repositories and durable custody of the open Bopomofo reference data.

Exact Namaste declarationRoot + version inventorySHA-512 + SHA-256CC BY 4.0 content

Preservation object

Verify the outer ZIP checksum, extract the single object root, then validate that directory. The ZIP is only a deterministic transfer wrapper around the OCFL object-at-rest layout.

Validate independently

The pinned ocfl-py validator checks the Namaste declaration, every inventory rule, sidecar, logical state, content path and digest.

shasum -a 256 -c checksums-sha256.txt
unzip bopomofo-37-symbols-ocfl-1.1.zip
python3 -m pip install ocfl-py==2.1.0
ocfl-validate.py bopomofo-37-symbols-ocfl

Object layout

bopomofo-37-symbols-ocfl/
├── 0=ocfl_object_1.1
├── inventory.json
├── inventory.json.sha512
└── v1/ (inventory + sidecar + content/)

Head-version logical state

Logical pathFormatBytesSHA-512
data/LICENSE.txttext/plain39481f4deb45f5d349e...
data/README.mdtext/markdown84053b43fa5c4459569...
data/zhuyin-bopomofo-ml-dataset.croissant.jsonldapplication/ld+json; profile="http://mlcommons.org/croissant/1.1"13777a433f33de8d9e71d...
data/zhuyin-bopomofo-ml-dataset.csvtext/csv8350d5a725aff9d0091f...
data/zhuyin-bopomofo-ml-dataset.csv-metadata.jsonapplication/csvm+json7701098deb1b27ff6435...
data/zhuyin-bopomofo-ml-dataset.jsonlapplication/x-ndjson147345e6960175d29c475...
data/zhuyin-bopomofo-vocabulary.jsonldapplication/ld+json79017a5d41276f18fb1cb...
data/zhuyin-bopomofo-vocabulary.ntapplication/n-triples141016588c48c7ccd6ce0b...
data/zhuyin-bopomofo-vocabulary.shacl.ttltext/turtle407067243fb25bfadb43...
data/zhuyin-bopomofo-vocabulary.ttltext/turtle32239ff671139315c287f...

Preservation design

  • The object root and head-version directory contain byte-identical inventories and sidecars.
  • The manifest maps SHA-512 digests to physical content paths.
  • Each version state maps content digests to portable logical paths.
  • A complete SHA-256 fixity block independently covers every stored content file.
  • Future logical-state changes create a new forward-delta version instead of rewriting history.

Scope and limits

  • This is one OCFL Object, not a complete OCFL Storage Root or repository.
  • It contains reference data and standards metadata, not audio or learner records.
  • OCFL defines an object-at-rest layout, not a ZIP transfer serialization or media type.
  • The generic application/zip wrapper is not part of OCFL conformance.
  • Validation does not imply OCFL community endorsement or repository ingest.

Sources and interoperability

The object follows the published OCFL 1.1 specification with its 1.1.1 editorial corrections. The generator hash-pins the official specification source and inventory schema.

Optional learning companion

The OCFL object is complete and reusable without an app. Lumi Bopomofo is only an optional on-device practice layer.

View Lumi Bopomofo on the App Store