{
 "canonicalUrl": "https://openbranddefinition.org/",
 "conformanceTestsFailed": 0,
 "conformanceTestsPassed": 1158,
 "conformanceTestsSkipped": 0,
 "contact": "lets@killthedragon.com",
 "contributingUrl": "https://openbranddefinition.org/CONTRIBUTING.md",
 "currentRelease": "4.1.3",
 "currentReleaseStatus": "stable",
 "examplesUrl": "https://openbranddefinition.org/examples/README.md",
 "fullName": "Open Brand Definition Specification",
 "governanceUrl": "https://openbranddefinition.org/GOVERNANCE.md",
 "initialPublicPublication": "2026-07-22",
 "kind": "open-brand-definition-publication-record",
 "licensing": {
  "certificationProgrammeLive": false,
  "commercialImplementationPermitted": true,
  "commercialLicenceRequired": false,
  "contact": "lets@killthedragon.com",
  "coversUnderlyingIdeas": false,
  "documentationLicence": "CC-BY-4.0",
  "documentationLicenceUrl": "https://creativecommons.org/licenses/by/4.0/",
  "implementationLicence": "Apache-2.0",
  "implementationLicenceUrl": "https://www.apache.org/licenses/LICENSE-2.0",
  "independentImplementationsRestricted": false,
  "licenceFilesPublished": true,
  "licenceMappingUrl": "https://openbranddefinition.org/LICENSE.md",
  "licenceTexts": {
   "Apache-2.0": "https://openbranddefinition.org/LICENSES/Apache-2.0.txt",
   "CC-BY-4.0": "https://openbranddefinition.org/LICENSES/CC-BY-4.0.txt"
  },
  "licenceTextsModified": false,
  "note": "The specification and the documentation are licensed under CC BY 4.0. The schemas, release metadata, reference implementation, conformance suite and machine-readable examples are licensed under the Apache License 2.0. Commercial implementation is permitted and requires no separate permission. Neither licence grants trademark rights.",
  "openSource": true,
  "osiApproved": true,
  "patentRightsGranted": true,
  "patentRightsNote": "Apache License 2.0 section 3 grants patent rights for the implementation layer. No claim is made that any patent is needed to implement OBDS.",
  "specificationSection": "32.1",
  "status": "published",
  "trademarkPolicyUrl": "https://openbranddefinition.org/TRADEMARKS.md",
  "trademarkRegistrationClaimed": false,
  "trademarksReserved": true
 },
 "note": "This record documents the publication of the project page. It is not a grant of rights or a substitute for formal IP advice.",
 "packageZipSha256": "sha256:18292e8a047883721313728bbf2d51e8f75397b533920c925b0c7508e884ae01",
 "previousRelease": "4.1.2",
 "project": "Open Brand Definition",
 "publicSchemaCount": 21,
 "publicValueSchemaCount": 6,
 "publisher": "Kill The Dragon GmbH",
 "publisherLocation": "Vienna, Austria",
 "releases": {
  "1.0.0": {
   "baseUrl": "https://openbranddefinition.org/spec/1.0.0/",
   "date": "2026-08-27",
   "note": "published as released and not modified",
   "packageZipSha256": "sha256:7ea6e2a1c249dcd73120737aa47fad5b5e9cb93d51219f43c6ad09345900d8dc",
   "status": "stable",
   "testOutputHash": "sha256:d83668330ba1236d5c82115734f2cde4d1ca6ca47649056453dd15e6c4852ed6"
  },
  "1.0.1": {
   "baseUrl": "https://openbranddefinition.org/spec/1.0.1/",
   "date": "2026-08-27",
   "note": "licensing clarification in section 32, no normative contract change",
   "packageZipSha256": "sha256:0564754d51078ee6421bbd2eb06cd8650b7f5548abba99e171cc71c382214715",
   "status": "stable",
   "testOutputHash": "sha256:cc2c14bec1561f57d4ab4fd62a427ba222f08432084d04bd99a2daf04087d42d"
  },
  "1.0.2": {
   "baseUrl": "https://openbranddefinition.org/spec/1.0.2/",
   "date": "2026-08-28",
   "note": "published as released and not modified",
   "packageZipSha256": "sha256:8313062590a2cf8198c5604d343ef79f581fa45fa9cc2fd5cd61bd88c088ccc5",
   "status": "stable",
   "testOutputHash": "sha256:d9bb76b09d3dc16e6eee1bd5f8ce4a7a0fdbf9245014a30f06189cb27f848f66"
  },
  "1.0.3": {
   "baseUrl": "https://openbranddefinition.org/spec/1.0.3/",
   "date": "2026-08-29",
   "note": "documentation, packaging and developer-experience release; no normative contract change; contract fingerprints identical to 1.0.2",
   "packageZipSha256": "sha256:30b7da28123b76f522849044d7088841bc1ab84ee7b6bc1a81bb72cd03d903a3",
   "status": "stable",
   "testOutputHash": "sha256:95e2296a06fa5bea78dfaf38e46df873d156e487e1e16096d2f9619781731392"
  },
  "1.0.4": {
   "baseUrl": "https://openbranddefinition.org/spec/1.0.4/",
   "date": "2026-08-29",
   "note": "hygiene release; no normative contract change; contract fingerprints identical to 1.0.3; conformance result satisfies section 26; official Foundation conformance suite repaired and now executed by the release gate; Foundation and Compiled Runtime boundary corrected in the public material",
   "packageZipSha256": "sha256:18c4c29de21b99233597f32ef92834935f8d3da701c59d26f414695394ea4560",
   "status": "stable",
   "testOutputHash": "sha256:4535adbdb48a65f59224c2cc8f9b8a8bc8123e226461841e737e427f05145f68"
  },
  "1.1.0": {
   "baseUrl": "https://openbranddefinition.org/spec/1.1.0/",
   "date": "2026-08-30",
   "note": "independent-implementability release; adds governedResultHash and schemas/1.1.0/compiled-context.schema.json; artifactHash meaning unchanged; the 1.0.0 contract surface stays frozen and byte-identical across 1.0.0 to 1.1.0",
   "packageZipSha256": "sha256:d27d509d49c0135de37d7f66ef41fae0b3e9115109b8a7503c6cec58e2ae4794",
   "status": "stable",
   "testOutputHash": "sha256:5bd68cef150fc70a48fd7eb64dec183c14c456c142dd044fd9d1284c15b1bdb3"
  },
  "1.1.1": {
   "baseUrl": "https://openbranddefinition.org/spec/1.1.1/",
   "date": "2026-08-30",
   "note": "maintenance release; no normative contract change; resolves the section 14.3 line-ending ambiguity so the Python and JavaScript canonicalisers agree on object keys; states the context id rule, the asOf representation and the requiresDefined element-id rule; corrects release metadata drift and hardens the release gate against it",
   "packageZipSha256": "sha256:193c1710e7dee95c4487eab90bca55b82a3a071cd6b3a2306d49ad1971ca7568",
   "status": "stable",
   "testOutputHash": "sha256:37e81ebdccc55c887bc00581f30d67b4c60629ee61abaa71d9a6e82facf087e7"
  },
  "1.1.2": {
   "baseUrl": "https://openbranddefinition.org/spec/1.1.2/",
   "date": "2026-08-30",
   "note": "maintenance release; no normative contract change; states the section 14.3b string escape set and the section 14.0 validity-window element set, both recording measured 1.1.1 behaviour; corrects the version stamps and the rewritten 1.1.0 changelog history; adds four release-gate guards",
   "packageZipSha256": "sha256:cfda913485e0b908158bbfb42ef9fabdc91ffa06a876ae33bfd3e81c8aa91405",
   "status": "stable",
   "testOutputHash": "sha256:23bede5d1009b139013ed3be47a4b054ba3e313273d386abf6ffdef7ad03e278"
  },
  "1.1.3": {
   "baseUrl": "https://openbranddefinition.org/spec/1.1.3/",
   "date": "2026-08-30",
   "note": "maintenance release; no normative contract change; section 10.2a makes a hard conflict fail a target only when the subject is decision-relevant to it; section 14.3 step 3 states UTF-16 code-unit ordering and names ECMAScript enumeration order as explicitly not it; section 14.3a states that projection policies must not change the resolved selection; the cross-language vectors carry expected output and are usable as a standalone oracle; every current-release surface corrected and gate-checked",
   "packageZipSha256": "sha256:e4e1717b151ebdf7fa24928c8a6cbbb695fa6abf4a92667c5ef0ed77d0209e64",
   "status": "stable",
   "testOutputHash": "sha256:818a335f9fcca9a8251766a196223ce6ba5557ec9e11b4d5ed3693720953dc43"
  },
  "1.1.4": {
   "packageZipSha256": "sha256:2d79da9b15b535c09dec170bd0f7c1c3ba5269405843f2abc7f2b809ef462be2",
   "testOutputHash": "sha256:40d2bfdaa293bc68dfc11501e84533eb736d9044baf16ceb0e003be574742f0d"
  },
  "1.1.5": {
   "packageZipSha256": "sha256:5549c4521cd4fde29ad5c4ef7d0d4afe085ef538fa4751d120accb100bdd640e",
   "testOutputHash": "sha256:1b3cecea8d1bfda688b42f8fdb8fab2d71d18877c0bf992606a4335a124e05ed"
  },
  "1.1.6": {
   "baseUrl": "https://openbranddefinition.org/spec/1.1.6/",
   "date": "2026-09-01",
   "note": "hardening release; one normative addition, section 14.3c, which pins the Unicode version governing canonical NFC and admits only code points assigned in it plus the permanent noncharacters; section 8.0a states canonical identity for element id and semantic subject; section 11.5 resolves elementValueRef through the governed selection instead of the raw manifest snapshot; section 10.2a states that its concrete list reads the rule rather than narrowing it and counts a RULE that would add requirements or checks, and an element the target declares eligible guidance; the half-open validity boundary is now proved by tests that execute the implementation at the exact instants, and the release gate runs them",
   "packageZipSha256": "sha256:e7771238ccc75c938de64240be1ae8f32a64443cf3f7c33c4045efc163af410a",
   "status": "stable",
   "testOutputHash": "sha256:8a8f0b4ee1f5c5b8fe6a874c30e7a9fd3eac96eaa598deecc28ac0e6ad985033"
  },
  "2.0.0": {
   "baseUrl": "https://openbranddefinition.org/spec/2.0.0/",
   "date": "2026-09-01",
   "note": "interchange correction; MAJOR under section 27.1 because it rejects governed YAML forms 1.x accepted; section 28.1 pins how governed YAML is read, so the same bytes can no longer produce two governed values and two canonical hashes; section 26.2 conformance evidence now names executed cases the release gate resolves against the run it performs itself; section 14.3a is aligned with the decision-relevant conflict semantics of section 10.2a; no new Brand State, profile, capability or architecture",
   "packageZipSha256": "sha256:f02e5b9bedeb32dbdcbf5d69afbb4c3aacec1c79adbcd769be4308d7dac04e4b",
   "status": "stable",
   "testOutputHash": "sha256:f91d3418736bda956b97c767c6166163ce41d44a06b161db30b34f5c7490f715"
  },
  "3.0.0": {
   "baseUrl": "https://openbranddefinition.org/spec/3.0.0/",
   "date": "2026-09-03",
   "note": "Semantic Closure release; MAJOR under section 27.1 because each of its five closures rejects a document or an execution path 2.x accepted; section 28.1 states one governed input contract at every reader and every entry point, including the object-root rule; section 8.0b gives the four governed artefact kinds one coordinate system for identity positions, refuses CR and LF there and binds the manifest id, version and contentHash together wherever an artefact names a manifest; sections 11.4 and 11.5 remove RULE-level validatorRef, require a registered Foundation check for a deterministic RULE and validate a check at the stage it is authored as well as the stage it is executed; sections 13.0a, 13.5a and 15.11 require the 3.0 Build Plan fields, materialise every decision-bearing check parameter and validate every governed runtime document against its published contract before governed field use; section 10.2a states one conflict-relevance model decided by the compiler; schemas/3.0.0/ and value-schemas/3.0.0/ publish four contracts beside the frozen 1.0.0 surface and change none of it; no new Brand State, profile, capability or architecture",
   "packageZipSha256": "sha256:b28678802b0a5b9176a8eb5916237d1f2c31f19af3d70b7aacf85c17d1e8c5e0",
   "status": "stable",
   "testOutputHash": "sha256:b3df3db15377a49eddeb74a32c79f45e07d91ff2306be1de1fb724c0f7d7f81d"
  },
  "3.0.1": {
   "baseUrl": "https://openbranddefinition.org/spec/3.0.1/",
   "date": "2026-09-03",
   "note": "packaging correction; PATCH under section 27.1 because no normative contract changed; the 3.0.0 archive omitted tools/, which the Semantic Closure surface registries name, so the two commands documented for the archive layout did not run and eight enumeration guards refused a release the repository had passed; tools/ is part of the package from 3.0.1 on, the directory list has one definition in reference/release-gate.py, and one packaging test asserts that every path a surface registry names is a path the packager ships; the specification differs from 3.0.0 in its own version stamp and the release-file name in section 33 and in nothing else",
   "packageZipSha256": "sha256:de26a34d30c6d7e16f5c7adaeeb4e2fff3ac9ee2071e283d458bcbfdaf053ed7",
   "status": "stable",
   "testOutputHash": "sha256:4152abe21af46c2271e137cb77f3723d9024b3f2a4b375bc457843f37c15078a"
  },
  "3.0.2": {
   "baseUrl": "https://openbranddefinition.org/spec/3.0.2/",
   "date": "2026-09-04",
   "note": "outreach-gate correction; PATCH under section 27.1 because no normative contract changed and the compiler and the runtime were brought back to contracts section 10.2a and section 26.2 already published; 3.0.0 replaced the section 10.2a relevance test with the claim that every target-applicable conflict is decision-relevant, on two arguments that are false against this release, so a conflict a target never read failed that target and section 10.2a said it must not; the runtime bound the package targetId to the artefact and never the requested one, so a caller naming another target was answered from the artefact it held, the model was called and the Runtime Decision Record named a governed decision that never ran; and the README quickstart published an artifactHash that stopped reproducing at 3.0.0 because the only assertion on it was that the artefact agreed with itself; the specification differs from 3.0.1 in its own version stamp and the release-file name in section 33 and in nothing else",
   "packageZipSha256": "sha256:affc8729c331e8a3a483da9a0782b5362c253fab1d4a17e8eb24d20ea186583c",
   "status": "stable",
   "testOutputHash": "sha256:945472238d80d0ed9efba9fcbbde59bebe369046e1119b29f1ddfdc0d2b3dee0"
  },
  "3.0.3": {
   "baseUrl": "https://openbranddefinition.org/spec/3.0.3/",
   "date": "2026-09-04",
   "note": "documentation and public-surface neutrality patch; PATCH under section 27.1 because no normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed; one sector-specific example value in the section 9 Scope example became the neutral placeholder productFamilies: [example-family], which is an example-value substitution and leaves productFamilies, scope construction, applicability, precedence, selection and conflict relevance untouched; the suite and its result are identical to 3.0.2, testOutputHash and suiteHash unchanged and all 32 published contracts byte-identical, so only the version stamp, the release-file name, the specification's own document hash and the archive hash move; 3.0.2 is not withdrawn and its published bytes, hashes, archive and tag are unchanged; the public Research Package is published under research/ alongside this release as documentation and evidence, adding no specification content, no schema and no runtime behaviour",
   "packageZipSha256": "sha256:962fb46b9adc5e0d6bf6cc8ee777ae861ce53772f10a40f18c71bba0674bb7ab",
   "status": "stable",
   "testOutputHash": "sha256:945472238d80d0ed9efba9fcbbde59bebe369046e1119b29f1ddfdc0d2b3dee0"
  },
  "3.0.4": {
   "baseUrl": "https://openbranddefinition.org/spec/3.0.4/",
   "date": "2026-09-04",
   "note": "documentation and public-positioning patch; PATCH under section 27.1 because no normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed; the current public wording calls OBDS an open specification rather than an open standard and the opening positioning sentence of the README and llms.txt now reads \"An open, implementation-ready specification for governed brand truth and AI creation\"; \"standard\" is not a defined term in OBDS and appears in no schema, identifier, error code or normative sentence, so nothing a conforming implementation can observe moved; the suite and its result are identical to 3.0.3, testOutputHash and suiteHash unchanged and all 32 published contracts byte-identical, so only the version stamp, the release-file name, the specification's own document hash and the archive hash move; 3.0.3 is not withdrawn and its published bytes, hashes, archive and tag are unchanged",
   "packageZipSha256": "sha256:f40766e73c9f104070b21f9576f3a35751f66b722a392d0130822414a4108c88",
   "status": "stable",
   "testOutputHash": "sha256:945472238d80d0ed9efba9fcbbde59bebe369046e1119b29f1ddfdc0d2b3dee0"
  },
  "4.0.0": {
   "baseUrl": "https://openbranddefinition.org/spec/4.0.0/",
   "date": "2026-09-05",
   "note": "Production Boundary Closure: safe paths, immutable generations and explicit rollback, verified four-slot projection, schema-first manifests, and model_failed provider evidence. New versioned contracts; existing historical schemas and snapshots remain unchanged.",
   "packageZipSha256": "sha256:555f3f04da9596fca3ff880729901df197b0f8f3ff587aca07c867e637f60a1c",
   "status": "stable",
   "testOutputHash": "sha256:d4ba70b507012caaf9a173a9f700044306cbce237e83653a4f7611ad1705454f"
  },
  "4.0.1": {
   "baseUrl": "https://openbranddefinition.org/spec/4.0.1/",
   "date": "2026-09-05",
   "note": "Documentation and public-surface consistency release. It corrects current release metadata, removes a stale OBDS 1.1 narrative from the current-release section, corrects the pre-4.0 artefact name in the examples README and publishes a rendered examples page. No normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed.",
   "packageZipSha256": "sha256:3f471d03bd67703568f1226b1dd7d572ea32303487ce52172f4bc633abd7fb84",
   "status": "stable",
   "testOutputHash": "sha256:a7c11f1d94bd01bdf06474d448103822afaaecfa9294a3d4898e4a52464683ea"
  },
  "4.0.2": {
   "baseUrl": "https://openbranddefinition.org/spec/4.0.2/",
   "date": "2026-09-05",
   "note": "Documentation, discoverability and public-surface release. It adds four explainer and comparison pages, a crawlable research index, corrected canonical URLs, per-page metadata and structured data, and a complete sitemap. No normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed.",
   "packageZipSha256": "sha256:b1cea126584b59c7cae4f6614e11496c510451c11653a7d55620e77153f02836",
   "status": "stable",
   "testOutputHash": "sha256:91691cd0ab6dedc82171b83fef4b51cd7a82d2eb044183790c00b03bf7fac217"
  },
  "4.0.3": {
   "baseUrl": "https://openbranddefinition.org/spec/4.0.3/",
   "date": "2026-09-05",
   "note": "Public-surface release. It adds an hreflang x-default, lowers the sitemap priority of the raw specification and research files below the HTML pages, and adds one verified row to the comparison page. No normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed.",
   "packageZipSha256": "sha256:8f6e1630f83377bf3a13ff3a91181c919ab1f763be94927ddce80329b4620f4d",
   "status": "stable",
   "testOutputHash": "sha256:027643663f1090eb5218cc0f34e90df93934bb43af47ac28a4e64fda6d29ac41"
  },
  "4.0.4": {
   "baseUrl": "https://openbranddefinition.org/spec/4.0.4/",
   "date": "2026-09-06",
   "note": "Public-surface release. It adds a per-page Open Graph preview image to every public page and switches the Twitter card to summary_large_image, and it fixes a grid overflow that let a long German display word push the page wider than the viewport. No normative OBDS contract, schema, runtime behaviour, conformance behaviour or interoperability contract changed.",
   "packageZipSha256": "sha256:147524478939ebd801cf668ecdd3ac2fa8e981c67d42084f6b0ec7b3090c2717",
   "status": "stable",
   "testOutputHash": "sha256:385698491023dcf7b14d448843cdd7ad1e59cd27bed985518fe191eb99ca2bbc"
  },
  "4.1.0": {
   "baseUrl": "https://openbranddefinition.org/spec/4.1.0/",
   "date": "2026-09-09",
   "note": "MINOR release adding voluntary Task Facts 1.0 evaluator contract and separate conformance; existing acceptance and governed hashes unchanged",
   "packageZipSha256": "sha256:c2f045421698266b9b9ae135c4d49589e68be7d233c5d215dc18ecc8bdab4f73",
   "status": "stable",
   "testOutputHash": "sha256:9fdbcba2bf8ba151d4510a9fd7695cbd551bcd1eebe5fd1d40057692c53fdc62"
  },
  "4.1.1": {
   "baseUrl": "https://openbranddefinition.org/spec/4.1.1/",
   "date": "2026-09-10",
   "note": "Public-surface release. It corrects stale current-release metadata and release narrative on the homepage, adds Task Facts and the complete previous-release list to llms.txt, separates current release from historical benchmark baseline in the research README, names Brando Schema in the comparison metadata, and corrects the examples JSON-LD so Foundation no longer appears to produce a Compiled Brand Context by itself. No normative OBDS contract, schema, Task Facts semantic, governed hash or conformance behaviour changed",
   "packageZipSha256": "sha256:dd542cecfb7683a76e77c6b587a08df674dd1cec7c635786623a2fc444b57e06",
   "status": "stable",
   "testOutputHash": "sha256:4f17a4601bc9f40837fa586fdea13c8ee0bd5c2c41e327e4521fa0b567c029dd"
  },
  "4.1.2": {
   "baseUrl": "https://openbranddefinition.org/spec/4.1.2/",
   "date": "2026-09-10",
   "note": "Release-tooling release. tools/deploy-smoke-test.py resolved the frozen publication inventory from a path with the release written into it, so a correct 4.1.1 deployment failed its own smoke test against the previous release frozen bytes. The path now comes from the release gate, which owns the current release, and a focused regression proves it. No normative OBDS contract, schema, Task Facts semantic, governed hash, conformance behaviour or public page content changed",
   "packageZipSha256": "sha256:bd1fb222ac84bb612ed2178009489d1f11545d694aa4c7d38bf46ed0c0b9e5c4",
   "status": "stable",
   "testOutputHash": "sha256:b66fae36eb5f2ffefcf761d955a1f48ab2a82c5c3f1672b8815f3998f2a79a6b"
  },
  "4.1.3": {
   "baseUrl": "https://openbranddefinition.org/spec/4.1.3/",
   "date": "2026-09-12",
   "note": "Public-surface and documentation release. It repairs the repository README, which still named 4.1.0 as the current release and linked five root documents that no longer exist, restates the public README so that the five production-boundary closures are credited to 4.0.0, marks Task Facts 1.0 as published and optional on its status pages while keeping the adoption record, adds release-gate checks for the README and for the release stamp of the Open Graph cards, and re-renders those cards. No normative OBDS contract, schema, Task Facts semantic, suite identity, governed hash or conformance behaviour changed",
   "packageZipSha256": "sha256:18292e8a047883721313728bbf2d51e8f75397b533920c925b0c7508e884ae01",
   "status": "stable",
   "testOutputHash": "sha256:13126da04046b44962a42e2b5789383d63ab23c0838c695f97c9aaf8302e1da8"
  }
 },
 "schemaBaseUrl": "https://openbranddefinition.org/schemas/1.0.0/",
 "schemaContractVersion": "1.0.0",
 "schemaSurfaceFingerprint": "sha256:517683bb3496867daa2346ceb2f7844e46015f926ff757a9c23da90cf1e5f469",
 "schemaVersion": "1.0",
 "sourceRepository": "https://github.com/openbranddefinition/obds",
 "specification": "OBDS",
 "specificationBaseUrl": "https://openbranddefinition.org/spec/4.1.3/",
 "specificationFilesPublished": true,
 "specificationPublishedAt": "2026-09-12",
 "stableReleaseDate": "2026-09-12",
 "testOutputHash": "sha256:13126da04046b44962a42e2b5789383d63ab23c0838c695f97c9aaf8302e1da8",
 "totalPublicContracts": 35,
 "valueSchemaBaseUrl": "https://openbranddefinition.org/value-schemas/1.0.0/",
 "versionedSchemaCount": 8,
 "websiteIndexSha256": "sha256:03a2f982dfa55b0061897489211b011ba629a7867f6cf93039d442acfc71ee83"
}
