{
  "title": "A page can change. Its edition should not. — Standards & citation",
  "text": "MODAVIS (2026). A page can change. Its edition should not. — Standards & citation. Research notebooks, September 2026 · Connected evidence edition. https://modavis.org/editions/2026-09-r6/standards/versions/",
  "bibtex": "@misc{modavis_standards_versions_2026_09_r6,\n  author = {{MODAVIS}},\n  title = {A page can change. Its edition should not. — Standards & citation},\n  year = {2026},\n  month = {09},\n  version = {2026-09-r6},\n  url = {https://modavis.org/editions/2026-09-r6/standards/versions/},\n  note = {Content SHA-256: 02384a7cbe0b70d3d722849a07a621d9866a47df6bcc907fc36eae6f9cbe0514}\n}",
  "url": "https://modavis.org/editions/2026-09-r6/standards/versions/",
  "sha256": "02384a7cbe0b70d3d722849a07a621d9866a47df6bcc907fc36eae6f9cbe0514",
  "edition": "2026-09-r6",
  "date": "2026-09-26",
  "canonicalPayload": "{\"book\":{\"number\":\"08\",\"slug\":\"standards\",\"title\":\"Standards & citation\"},\"chapter\":{\"blocks\":[{\"items\":[{\"detail\":\"A continuous worked example: readable explanations, exact records and the limits of each claim.\",\"href\":\"/notebooks/standards/cuntz/\",\"label\":\"Learn this through the Cuntz organ\"}],\"type\":\"links\"},{\"text\":\"The ordinary notebook address points to the current explanatory text. An edition address includes a named snapshot and continues to serve that snapshot’s content when the living notebook is revised.\",\"type\":\"p\"},{\"id\":\"preserved\",\"text\":\"What is preserved\",\"type\":\"heading\"},{\"items\":[\"The notebook and chapter identity.\",\"The chapter introduction, text, figures and structured content.\",\"The reference list and its recorded resource links.\",\"The edition date and a SHA-256 content fingerprint.\"],\"type\":\"list\"},{\"id\":\"checking\",\"text\":\"Checking a citation\",\"type\":\"heading\"},{\"text\":\"Download the page’s citation metadata to retrieve the canonical JSON payload and the expected SHA-256 value. Recomputing the digest of that payload checks content identity. It cannot establish the truth of the content or the continued availability of an external source.\",\"type\":\"p\"},{\"boundary\":\"This website verifies the model’s expected byte length and full SHA-256 before passing it to the renderer. That is a file-identity check, not a VAO conformance report.\",\"caseLabel\":\"Cuntz\",\"concept\":\"A checksum is a fingerprint calculated from bytes. Fixity checking compares that fingerprint with a trusted expected value to detect changed or mismatched files.\",\"evidence\":\"Released record\",\"expanded\":false,\"id\":\"cuntz-fixity\",\"scenario\":\"The published GLB source for this notebook has SHA-256 beginning 19527c2188b08d85. The display derivative has a different digest because its texture and encoding were changed.\",\"sources\":[{\"detail\":\"Published manifest: identities, measurement observations, realization digests, profiles and rights. Exact examples checked against this release.\",\"href\":\"https://doi.org/10.5281/zenodo.22151203\",\"label\":\"Cuntz Positiv · VAO 0.5.0-rc.2\"},{\"detail\":\"The standard contract is separate from the Cuntz dataset content version 0.5.0-rc.2.\",\"href\":\"https://doi.org/10.5281/zenodo.22214248\",\"label\":\"VAO Standard 0.5.0\"}],\"steps\":[{\"text\":\"Check the complete source GLB digest against the exact source realization. Compare the website derivative against its own expected digest, not against the source GLB’s digest.\",\"title\":\"Compare like with like\"},{\"text\":\"A texture conversion or mesh encoding change produces a different file identity. Even reformatting a JSON manifest can change its exact-byte hash without changing its parsed meaning.\",\"title\":\"Notice byte-changing edits\"},{\"text\":\"Matching bytes establish which representation was obtained. The digest does not verify the model’s physical scale, the pipe measurement method or a claim about the sound of 1610.\",\"title\":\"Keep the scientific question separate\"}],\"takeaway\":\"Fixity makes evidence identifiable; it does not independently validate the evidence’s interpretation.\",\"title\":\"What does the model’s SHA-256 prove?\",\"type\":\"example\"},{\"id\":\"successor\",\"text\":\"A correction creates a successor\",\"type\":\"heading\"},{\"text\":\"A living page can improve its explanation or correct a mistaken release description. The earlier edition should continue to identify what a reader could cite at that time. This makes it possible to distinguish an editorial correction from a changed research artifact, and to explain why two quotations or references differ.\",\"type\":\"p\"},{\"headers\":[\"Change\",\"Consequence for this website\"],\"rows\":[[\"Text, examples or resource descriptions\",\"Publish a new content edition and preserve earlier snapshots.\"],[\"Referenced diagram definitions\",\"Include the changed definitions in the new chapter fingerprint.\"],[\"Colour, typography or navigation styling\",\"The presentation can change without changing the structured chapter identity.\"],[\"An external resource changes\",\"The notebook citation remains fixed; verify the external version separately.\"]],\"type\":\"table\"},{\"boundary\":\"The dataset content version 0.5.0-rc.2, VAO format version 0.5.0 and website edition are separate version systems.\",\"caseLabel\":\"Cuntz\",\"concept\":\"Versioned citation separates the physical subject, the released research object and the explanation or derived artifact actually used.\",\"evidence\":\"Illustrative scenario\",\"expanded\":false,\"id\":\"cuntz-citation\",\"scenario\":\"A reader uses the notebook’s model to discuss a geometry, while another uses the 1281 mm workbook observation. Their references should identify different evidence even though both concern Cuntz.\",\"sources\":[{\"detail\":\"Published manifest: identities, measurement observations, realization digests, profiles and rights. Exact examples checked against this release.\",\"href\":\"https://doi.org/10.5281/zenodo.22151203\",\"label\":\"Cuntz Positiv · VAO 0.5.0-rc.2\"},{\"detail\":\"The standard contract is separate from the Cuntz dataset content version 0.5.0-rc.2.\",\"href\":\"https://doi.org/10.5281/zenodo.22214248\",\"label\":\"VAO Standard 0.5.0\"}],\"steps\":[{\"text\":\"Use version DOI 10.5281/zenodo.22151203 for the inspected dataset. Record the specific realization or observation, rather than citing only the project community.\",\"title\":\"Identify the release\"},{\"text\":\"For the web preview, retain the derivative’s digest and transformation note. For the observation, identify the pipe, property, source cell and workbook realization.\",\"title\":\"Identify what was used\"},{\"text\":\"Use “Cite this page” for the notebook’s fixed edition. Its fingerprint identifies the explanation; it does not replace the source dataset or model fingerprint.\",\"title\":\"Cite the explanation separately\"}],\"takeaway\":\"A citation chain lets a reader recover both the evidence and the interpretation.\",\"title\":\"Which Cuntz identifier belongs in a citation?\",\"type\":\"example\"},{\"id\":\"verify-record\",\"text\":\"Verify a downloaded citation record\",\"type\":\"heading\"},{\"label\":\"Python standard library · save the downloaded metadata as citation.json\",\"text\":\"import hashlib\\nimport json\\nfrom pathlib import Path\\n\\nrecord = json.loads(Path(\\\"citation.json\\\").read_text(encoding=\\\"utf-8\\\"))\\npayload = record[\\\"canonicalPayload\\\"].encode(\\\"utf-8\\\")\\nactual = hashlib.sha256(payload).hexdigest()\\nif actual != record[\\\"sha256\\\"]:\\n    raise SystemExit(\\\"Content fingerprint does not match\\\")\\nprint(\\\"Verified:\\\", record[\\\"edition\\\"], actual)\",\"type\":\"code\"},{\"text\":\"Hash the supplied canonicalPayload string exactly, without pretty-printing it or converting its line endings. The structured payload is also provided for inspection. The comparison verifies consistency with the expected digest in that record; independently retained metadata or an archived copy is needed if you want a reference beyond the current host.\",\"type\":\"p\"},{\"id\":\"preservation-beyond-site\",\"text\":\"Preservation extends beyond the website\",\"type\":\"heading\"},{\"text\":\"Versioned local URLs and checksums make these notebooks citable and inspectable, but continued access still depends on hosting and retained editions. A separately archived release could provide an additional preservation location. No notebook DOI or independent repository deposit is implied until such a deposit has actually been made.\",\"type\":\"p\"},{\"items\":[{\"href\":\"/editions/2026-09/\",\"label\":\"Browse the September 2026 edition\"},{\"href\":\"/notebooks/standards/citing/\",\"label\":\"How to cite a page\"}],\"type\":\"links\"}],\"intro\":\"The living notebook and its fixed editions serve different purposes.\",\"slug\":\"versions\",\"sources\":[],\"title\":\"A page can change. Its edition should not.\"},\"date\":\"2026-09-26\",\"edition\":\"2026-09-r6\",\"figures\":{}}",
  "payload": {
    "edition": "2026-09-r6",
    "date": "2026-09-26",
    "book": {
      "slug": "standards",
      "title": "Standards & citation",
      "number": "08"
    },
    "chapter": {
      "slug": "versions",
      "title": "A page can change. Its edition should not.",
      "intro": "The living notebook and its fixed editions serve different purposes.",
      "blocks": [
        {
          "type": "links",
          "items": [
            {
              "label": "Learn this through the Cuntz organ",
              "href": "/notebooks/standards/cuntz/",
              "detail": "A continuous worked example: readable explanations, exact records and the limits of each claim."
            }
          ]
        },
        {
          "type": "p",
          "text": "The ordinary notebook address points to the current explanatory text. An edition address includes a named snapshot and continues to serve that snapshot’s content when the living notebook is revised."
        },
        {
          "type": "heading",
          "text": "What is preserved",
          "id": "preserved"
        },
        {
          "type": "list",
          "items": [
            "The notebook and chapter identity.",
            "The chapter introduction, text, figures and structured content.",
            "The reference list and its recorded resource links.",
            "The edition date and a SHA-256 content fingerprint."
          ]
        },
        {
          "type": "heading",
          "text": "Checking a citation",
          "id": "checking"
        },
        {
          "type": "p",
          "text": "Download the page’s citation metadata to retrieve the canonical JSON payload and the expected SHA-256 value. Recomputing the digest of that payload checks content identity. It cannot establish the truth of the content or the continued availability of an external source."
        },
        {
          "type": "example",
          "id": "cuntz-fixity",
          "title": "What does the model’s SHA-256 prove?",
          "concept": "A checksum is a fingerprint calculated from bytes. Fixity checking compares that fingerprint with a trusted expected value to detect changed or mismatched files.",
          "scenario": "The published GLB source for this notebook has SHA-256 beginning 19527c2188b08d85. The display derivative has a different digest because its texture and encoding were changed.",
          "steps": [
            {
              "title": "Compare like with like",
              "text": "Check the complete source GLB digest against the exact source realization. Compare the website derivative against its own expected digest, not against the source GLB’s digest."
            },
            {
              "title": "Notice byte-changing edits",
              "text": "A texture conversion or mesh encoding change produces a different file identity. Even reformatting a JSON manifest can change its exact-byte hash without changing its parsed meaning."
            },
            {
              "title": "Keep the scientific question separate",
              "text": "Matching bytes establish which representation was obtained. The digest does not verify the model’s physical scale, the pipe measurement method or a claim about the sound of 1610."
            }
          ],
          "takeaway": "Fixity makes evidence identifiable; it does not independently validate the evidence’s interpretation.",
          "boundary": "This website verifies the model’s expected byte length and full SHA-256 before passing it to the renderer. That is a file-identity check, not a VAO conformance report.",
          "sources": [
            {
              "label": "Cuntz Positiv · VAO 0.5.0-rc.2",
              "href": "https://doi.org/10.5281/zenodo.22151203",
              "detail": "Published manifest: identities, measurement observations, realization digests, profiles and rights. Exact examples checked against this release."
            },
            {
              "label": "VAO Standard 0.5.0",
              "href": "https://doi.org/10.5281/zenodo.22214248",
              "detail": "The standard contract is separate from the Cuntz dataset content version 0.5.0-rc.2."
            }
          ],
          "expanded": false,
          "caseLabel": "Cuntz",
          "evidence": "Released record"
        },
        {
          "type": "heading",
          "text": "A correction creates a successor",
          "id": "successor"
        },
        {
          "type": "p",
          "text": "A living page can improve its explanation or correct a mistaken release description. The earlier edition should continue to identify what a reader could cite at that time. This makes it possible to distinguish an editorial correction from a changed research artifact, and to explain why two quotations or references differ."
        },
        {
          "type": "table",
          "headers": [
            "Change",
            "Consequence for this website"
          ],
          "rows": [
            [
              "Text, examples or resource descriptions",
              "Publish a new content edition and preserve earlier snapshots."
            ],
            [
              "Referenced diagram definitions",
              "Include the changed definitions in the new chapter fingerprint."
            ],
            [
              "Colour, typography or navigation styling",
              "The presentation can change without changing the structured chapter identity."
            ],
            [
              "An external resource changes",
              "The notebook citation remains fixed; verify the external version separately."
            ]
          ]
        },
        {
          "type": "example",
          "id": "cuntz-citation",
          "title": "Which Cuntz identifier belongs in a citation?",
          "concept": "Versioned citation separates the physical subject, the released research object and the explanation or derived artifact actually used.",
          "scenario": "A reader uses the notebook’s model to discuss a geometry, while another uses the 1281 mm workbook observation. Their references should identify different evidence even though both concern Cuntz.",
          "steps": [
            {
              "title": "Identify the release",
              "text": "Use version DOI 10.5281/zenodo.22151203 for the inspected dataset. Record the specific realization or observation, rather than citing only the project community."
            },
            {
              "title": "Identify what was used",
              "text": "For the web preview, retain the derivative’s digest and transformation note. For the observation, identify the pipe, property, source cell and workbook realization."
            },
            {
              "title": "Cite the explanation separately",
              "text": "Use “Cite this page” for the notebook’s fixed edition. Its fingerprint identifies the explanation; it does not replace the source dataset or model fingerprint."
            }
          ],
          "takeaway": "A citation chain lets a reader recover both the evidence and the interpretation.",
          "boundary": "The dataset content version 0.5.0-rc.2, VAO format version 0.5.0 and website edition are separate version systems.",
          "sources": [
            {
              "label": "Cuntz Positiv · VAO 0.5.0-rc.2",
              "href": "https://doi.org/10.5281/zenodo.22151203",
              "detail": "Published manifest: identities, measurement observations, realization digests, profiles and rights. Exact examples checked against this release."
            },
            {
              "label": "VAO Standard 0.5.0",
              "href": "https://doi.org/10.5281/zenodo.22214248",
              "detail": "The standard contract is separate from the Cuntz dataset content version 0.5.0-rc.2."
            }
          ],
          "expanded": false,
          "caseLabel": "Cuntz",
          "evidence": "Illustrative scenario"
        },
        {
          "type": "heading",
          "text": "Verify a downloaded citation record",
          "id": "verify-record"
        },
        {
          "type": "code",
          "label": "Python standard library · save the downloaded metadata as citation.json",
          "text": "import hashlib\nimport json\nfrom pathlib import Path\n\nrecord = json.loads(Path(\"citation.json\").read_text(encoding=\"utf-8\"))\npayload = record[\"canonicalPayload\"].encode(\"utf-8\")\nactual = hashlib.sha256(payload).hexdigest()\nif actual != record[\"sha256\"]:\n    raise SystemExit(\"Content fingerprint does not match\")\nprint(\"Verified:\", record[\"edition\"], actual)"
        },
        {
          "type": "p",
          "text": "Hash the supplied canonicalPayload string exactly, without pretty-printing it or converting its line endings. The structured payload is also provided for inspection. The comparison verifies consistency with the expected digest in that record; independently retained metadata or an archived copy is needed if you want a reference beyond the current host."
        },
        {
          "type": "heading",
          "text": "Preservation extends beyond the website",
          "id": "preservation-beyond-site"
        },
        {
          "type": "p",
          "text": "Versioned local URLs and checksums make these notebooks citable and inspectable, but continued access still depends on hosting and retained editions. A separately archived release could provide an additional preservation location. No notebook DOI or independent repository deposit is implied until such a deposit has actually been made."
        },
        {
          "type": "links",
          "items": [
            {
              "label": "Browse the September 2026 edition",
              "href": "/editions/2026-09/"
            },
            {
              "label": "How to cite a page",
              "href": "/notebooks/standards/citing/"
            }
          ]
        }
      ],
      "sources": []
    },
    "figures": {}
  }
}