Skip to content

Serve a content specification as a reference example at /examples/ #130

Description

@stiebitzhofer

Not a dictionary request: no entry is added or changed.

Why

The dictionary serves layer 3 of the addressing model (dictionary element ids) and is versioned as layer 2 (dictionary releases). Nothing on the site shows layer 1, a content specification that consumes it. A real specification next to the dictionary shows how memberships use entries: dictionaryReference → /def/<uuid>, plus objectType, isMandatory, accessCategory, granularity and condition, all on the membership and never on the entry.

What

  • New top-level examples/ directory. It is not under published/: an example is not an entry, so the add-only tree and the two-yes gate do not apply to it.
  • examples/content-specifications/dpp-steel-v0.0.2.lock.json: a byte-identical copy of the DPP steel content specification lock maintained in material-identity/schema (dpp/v0.0.2/specifications/steel.lock.json). It is pre-publication, from material-identity/schema#380, and the README records the source commit and SHA-256. It pins dictionary release v2026.10.01.
  • examples/README.md covers what a content specification is (layer 1), where it is maintained, its licence (CC-BY-4.0, the schema repo's data licence, which the example keeps; it is not this dictionary's CC0), how it uses the dictionary, and that it is an example and not part of the dictionary.
  • The build copies examples/ wholesale into site/examples/, the same mechanism .well-known/ uses (Serve the security contact's PGP key at /.well-known/pgp-security.asc #107), and renders an /examples/ index page in the site's page style with no scripts.
  • Worker: /examples/… passes through with a short cache, and .json there is served as application/json; charset=utf-8.
  • A test checks that every dictionaryReference in examples/content-specifications/*.json resolves to published/<uuid>.yaml, so the example can never point at a missing entry.
  • The site footer (and /about) links to the examples.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    type:enhancementImprovement of an existing capability

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions