Skip to content

Conformance v0.1

This page defines what it means to claim Universal Manifest v0.1 conformance.

v0.1 goals:

  • easy to adopt (even without JSON-LD tooling)
  • safe in local-first environments (TTL + bounded caching)
  • forward compatible (unknown fields MUST be ignored)

A consumer receives a manifest and uses it to drive a surface (display, admin, web profile, etc.).

Consumer MUST:

  • Treat a value as a v0.1 Universal Manifest when it has the required fields and @type includes lan:Manifest.
  • Ignore unknown fields safely (top-level, shard/entity shapes, and section item shapes).
  • Enforce TTL for use: MUST NOT use if now > expiresAt.
  • Sanity-check issuedAt / expiresAt formats and ordering (issuedAt <= expiresAt).

An issuer produces a manifest for a subject and delivers it to consumers (directly or via an intermediary).

Issuer MUST / SHOULD:

  • Set @id to a globally unique URI (recommended: urn:uuid:<uuidv4>).
  • Set subject to a stable identifier URI.
  • Use short TTLs appropriate to the surface.

To claim v0.1 conformance, an implementation MUST:

  1. Accept all valid fixtures
  2. Reject all invalid fixtures
  • /harness/fixtures/v0.1/minimal-manifest.jsonld
  • /harness/fixtures/v0.1/type-array-manifest.jsonld
  • /harness/fixtures/v0.1/unknown-fields-manifest.jsonld
  • /harness/fixtures/v0.1/manifest-with-shards.jsonld
  • /harness/fixtures/v0.1/stubs/venue-edge-manifest.jsonld
  • /harness/fixtures/v0.1/stubs/display-device-manifest.jsonld
  • /harness/fixtures/v0.1/stubs/creator-public-capsule-manifest.jsonld
  • /harness/fixtures/v0.1/stubs/social-profile-manifest.jsonld
  • /harness/fixtures/v0.1/stubs/lan-platform-display-manifest.jsonld
  • /harness/fixtures/v0.1/invalid/missing-context.jsonld
  • /harness/fixtures/v0.1/invalid/missing-id.jsonld
  • /harness/fixtures/v0.1/invalid/empty-id.jsonld
  • /harness/fixtures/v0.1/invalid/wrong-type.jsonld
  • /harness/fixtures/v0.1/invalid/missing-subject.jsonld
  • /harness/fixtures/v0.1/invalid/issued-after-expires.jsonld
  • /harness/fixtures/v0.1/invalid/invalid-issuedAt-format.jsonld
  • /harness/fixtures/v0.1/invalid/invalid-expiresAt-format.jsonld
  • /harness/fixtures/v0.1/invalid/expired-for-use.jsonld
  • /harness/fixtures/v0.1/invalid/shards-not-array.jsonld
  • /harness/fixtures/v0.1/invalid/shard-wrong-type.jsonld

Use the harness to load these fixtures and inspect shape quickly:

  • /harness/index.html
  • Read the v0.1 contract: Specification → v0.1
  • If you need signing/verification: Conformance → v0.2