{
  "id": "keywords/viewer",
  "mentions": [
    {
      "context": "…elf, its text and, on demand, the pages of its PDF, without ever loading the viewer with the page. The document page of an office document opens the same viewer…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "The viewer itself is an island, open in the page. Served, it holds one link, \"Contract data (JSON)\", to the view of the contract the build wrote next to the fra…",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…tions table matched to the contract and the contract block with the contract viewer after the article, the properties cut to five keys and the operations first …",
      "file": {
        "href": "../../specs/screens/pages/entity-page/index.html",
        "label": "screens/pages/entity-page.md"
      },
      "href": "../../specs/screens/pages/entity-page/index.html#L35",
      "kind": "recognised",
      "line": 35,
      "passages": 4,
      "surface": "viewer",
      "title": "Entity page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…ct, the build imports the operations, each operation note absorbs the operation it names, and a purpose-built viewer renders the contract under the page budget.",
      "file": {
        "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html",
        "label": "framing/2026/2026-05-07-roadmap-outline/roadmap-outline.md"
      },
      "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 3,
      "surface": "viewer",
      "title": "Roadmap outline",
      "type": "document",
      "typeLabel": "Document"
    },
    {
      "context": "…I from the page. The contract of an API is shown by a purpose-built contract viewer, an island rendered from a JSON fragment of the contract, loaded on demand. …",
      "file": {
        "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html",
        "label": "meetings/2026/2026-06-18-contract-import-scope/contract-import-scope.md"
      },
      "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html#L20",
      "kind": "recognised",
      "line": 20,
      "passages": 3,
      "surface": "viewer",
      "title": "Contract import scope review",
      "type": "meeting",
      "typeLabel": "Meeting"
    },
    {
      "context": "… only by the pages that use it. The mentions panel, the search, the contract viewer, the document viewer, the pinned pages and the handles of the side panels ar…",
      "file": {
        "href": "../../glossary/publication/site/island/index.html",
        "label": "publication/site/island.md"
      },
      "href": "../../glossary/publication/site/island/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "passages": 3,
      "surface": "viewer",
      "title": "Island",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "…, the pages of its PDF, without ever loading the viewer with the page. The document page of an office document opens the same viewer as soon as its script runs.",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "… by the first line of its extracted text, and leading to that text; once the viewer runs, the entry also shows that page in it and the entry of the page shown i…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L12",
      "kind": "recognised",
      "line": 12,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "The viewer itself is an island served inert: a hidden button and an empty container. Its script reveals \"Open the viewer\"; the first click imports the viewer bu…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "… inert: a hidden button and an empty container. Its script reveals \"Open the viewer\"; the first click imports the viewer bundle, a build of pdf.js the page neve…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…container. Its script reveals \"Open the viewer\"; the first click imports the viewer bundle, a build of pdf.js the page never references in a script, and opens t…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…anvas on its stage. The pages are reached through the rail, which drives the viewer once it is open. The button then closes and reopens the viewer. When the bun…",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…ch drives the viewer once it is open. The button then closes and reopens the viewer. When the bundle cannot be imported, as on a page opened from the disk in a …",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…the container shows a sentence saying so with a link to the PDF instead. The viewer and its worker are built only for a site that shows a PDF, are announced in …",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "Open the viewer → the pages of the PDF, page by page, with zoom and find",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L26",
      "kind": "recognised",
      "line": 26,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "Open a position of the rail → its extracted text, and its page once the viewer runs",
      "file": {
        "href": "../../specs/viewers/document-viewer/index.html",
        "label": "viewers/document-viewer.md"
      },
      "href": "../../specs/viewers/document-viewer/index.html#L27",
      "kind": "recognised",
      "line": 27,
      "passages": 11,
      "surface": "viewer",
      "title": "Document viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "… in the meantime, and opens in the block without any button, as the document viewer opens on the document page. Loaded, it lists every operation in the order of…",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "… and its fields, name, type, requirement and description. The note under the viewer says that no schema is copied into the text: the page shows the contract, it…",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…WSDL contract: the plugins that import them produce one common view, and the viewer never knows the format. It contains no form and no \"Try it out\": no request …",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L18",
      "kind": "recognised",
      "line": 18,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…d the only fetch of the whole site is the one of the view, once per page. The decision purpose-built contract viewer says why no third-party viewer is embedded.",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L18",
      "kind": "recognised",
      "line": 18,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…d the only fetch of the whole site is the one of the view, once per page. The decision purpose-built contract viewer says why no third-party viewer is embedded.",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L18",
      "kind": "recognised",
      "line": 18,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "Open an operation of the viewer → its parameters, request and responses, fetched once with the view",
      "file": {
        "href": "../../specs/viewers/contract-viewer/index.html",
        "label": "viewers/contract-viewer.md"
      },
      "href": "../../specs/viewers/contract-viewer/index.html#L28",
      "kind": "recognised",
      "line": 28,
      "passages": 7,
      "surface": "viewer",
      "title": "Contract viewer",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…k, a PDF or a transcript, or of a note merged with one, carries the document viewer after the article: the download link of each file, its PDF, a rail of its pa…",
      "file": {
        "href": "../../specs/screens/pages/entity-page/index.html",
        "label": "screens/pages/entity-page.md"
      },
      "href": "../../specs/screens/pages/entity-page/index.html#L39",
      "kind": "recognised",
      "line": 39,
      "passages": 4,
      "surface": "viewer",
      "title": "Entity page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…ail of its pages, slides or cues, their extracted text in disclosure blocks, and the viewer that opens the PDF on demand. The markdown of the note is untouched.",
      "file": {
        "href": "../../specs/screens/pages/entity-page/index.html",
        "label": "screens/pages/entity-page.md"
      },
      "href": "../../specs/screens/pages/entity-page/index.html#L39",
      "kind": "recognised",
      "line": 39,
      "passages": 4,
      "surface": "viewer",
      "title": "Entity page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…24 pages\", the file name, its kind and its page count when one is known, the viewer, the extracted text and the download opening on demand. A document without a…",
      "file": {
        "href": "../../specs/screens/pages/entity-page/index.html",
        "label": "screens/pages/entity-page.md"
      },
      "href": "../../specs/screens/pages/entity-page/index.html#L41",
      "kind": "recognised",
      "line": 41,
      "passages": 4,
      "surface": "viewer",
      "title": "Entity page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…tions.  Each operation note absorbs the operation it names.  A purpose-built viewer renders the contract under the page budget.  Roadmap outline · 2026-05-07 · …",
      "file": {
        "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html",
        "label": "framing/2026/2026-05-07-roadmap-outline/roadmap-outline.pdf"
      },
      "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html#L4",
      "kind": "recognised",
      "line": 4,
      "location": "p. 4",
      "passages": 3,
      "surface": "viewer",
      "title": "Roadmap outline",
      "type": "document",
      "typeLabel": "Document"
    },
    {
      "context": "…tions.  Each operation note absorbs the operation it names.  A purpose-built viewer renders the contract under the page budget.  Roadmap outline · 2026-05-07 · …",
      "file": {
        "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html",
        "label": "framing/2026/2026-05-07-roadmap-outline/roadmap-outline.pptx"
      },
      "href": "../../briefs/framing/2026/2026-05-07-roadmap-outline/roadmap-outline/index.html#L4",
      "kind": "recognised",
      "line": 4,
      "location": "slide 4",
      "passages": 3,
      "surface": "viewer",
      "title": "Roadmap outline",
      "type": "document",
      "typeLabel": "Document"
    },
    {
      "context": "Now the viewer. The specification named an interactive console for openapi contracts. It weighs more than the page budget, and it wants to call the api from the…",
      "file": {
        "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html",
        "label": "meetings/2026/2026-06-18-contract-import-scope/contract-import-scope.vtt"
      },
      "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "location": "31:32",
      "passages": 3,
      "surface": "viewer",
      "title": "Contract import scope review",
      "type": "meeting",
      "typeLabel": "Meeting"
    },
    {
      "context": "Then the decision of this session: a purpose-built contract viewer, an island rendered from a json fragment of the contract, loaded on demand, under the page bu…",
      "file": {
        "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html",
        "label": "meetings/2026/2026-06-18-contract-import-scope/contract-import-scope.vtt"
      },
      "href": "../../briefs/meetings/2026/2026-06-18-contract-import-scope/contract-import-scope/index.html#L11",
      "kind": "recognised",
      "line": 11,
      "location": "42:17",
      "passages": 3,
      "surface": "viewer",
      "title": "Contract import scope review",
      "type": "meeting",
      "typeLabel": "Meeting"
    },
    {
      "context": "…at use it. The mentions panel, the search, the contract viewer, the document viewer, the pinned pages and the handles of the side panels are islands; every one …",
      "file": {
        "href": "../../glossary/publication/site/island/index.html",
        "label": "publication/site/island.md"
      },
      "href": "../../glossary/publication/site/island/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "passages": 3,
      "surface": "viewer",
      "title": "Island",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "…t JavaScript the content stays reachable: the served HTML carries every page in full and an island only adds sorting, filtering, fetching on demand or a viewer.",
      "file": {
        "href": "../../glossary/publication/site/island/index.html",
        "label": "publication/site/island.md"
      },
      "href": "../../glossary/publication/site/island/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "passages": 3,
      "surface": "viewer",
      "title": "Island",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "The contract of an API is shown by a viewer the tool builds itself, rather than by the interactive API console the specification first named for OpenAPI contrac…",
      "file": {
        "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html",
        "label": "decisions/publication/purpose-built-contract-viewer.md"
      },
      "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "passages": 3,
      "surface": "viewer",
      "title": "Purpose-built contract viewer",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "The viewer is an island of the default theme, the first user interface component it contributes through the plugin API, and reads a view the build writes from t…",
      "file": {
        "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html",
        "label": "decisions/publication/purpose-built-contract-viewer.md"
      },
      "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html#L10",
      "kind": "recognised",
      "line": 10,
      "passages": 3,
      "surface": "viewer",
      "title": "Purpose-built contract viewer",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Contract viewer",
      "file": {
        "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html",
        "label": "decisions/publication/purpose-built-contract-viewer.md"
      },
      "href": "../../specs/decisions/publication/purpose-built-contract-viewer/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 3,
      "surface": "viewer",
      "title": "Purpose-built contract viewer",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "… one ruled in the accent, each leading to the text of its page and, once the viewer runs, showing that page; the document viewer opens as soon as its script run…",
      "file": {
        "href": "../../specs/screens/pages/document-page/index.html",
        "label": "screens/pages/document-page.md"
      },
      "href": "../../specs/screens/pages/document-page/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 3,
      "surface": "viewer",
      "title": "Document page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "… text of its page and, once the viewer runs, showing that page; the document viewer opens as soon as its script runs, with its counter, its zoom and its find fi…",
      "file": {
        "href": "../../specs/screens/pages/document-page/index.html",
        "label": "screens/pages/document-page.md"
      },
      "href": "../../specs/screens/pages/document-page/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 3,
      "surface": "viewer",
      "title": "Document page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "Open a page of the strip → its text, and its page in the viewer once it runs",
      "file": {
        "href": "../../specs/screens/pages/document-page/index.html",
        "label": "screens/pages/document-page.md"
      },
      "href": "../../specs/screens/pages/document-page/index.html#L27",
      "kind": "recognised",
      "line": 27,
      "passages": 3,
      "surface": "viewer",
      "title": "Document page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…ry word is a page or a slide of the PDF the reader will open in the document viewer, so a mention cites what the reader sees, and a format is supported for text…",
      "file": {
        "href": "../../specs/decisions/ingestion/single-extraction-path/index.html",
        "label": "decisions/ingestion/single-extraction-path.md"
      },
      "href": "../../specs/decisions/ingestion/single-extraction-path/index.html#L10",
      "kind": "recognised",
      "line": 10,
      "passages": 2,
      "surface": "viewer",
      "title": "Single extraction path",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Document viewer",
      "file": {
        "href": "../../specs/decisions/ingestion/single-extraction-path/index.html",
        "label": "decisions/ingestion/single-extraction-path.md"
      },
      "href": "../../specs/decisions/ingestion/single-extraction-path/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 2,
      "surface": "viewer",
      "title": "Single extraction path",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "…ory of its repository, never the instant of the build; under it the contract viewer, open in the page as soon as its script runs, a link to its JSON view until …",
      "file": {
        "href": "../../specs/screens/pages/api-page/index.html",
        "label": "screens/pages/api-page.md"
      },
      "href": "../../specs/screens/pages/api-page/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "passages": 2,
      "surface": "viewer",
      "title": "API page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "Read the contract → contract viewer, open in the page",
      "file": {
        "href": "../../specs/screens/pages/api-page/index.html",
        "label": "screens/pages/api-page.md"
      },
      "href": "../../specs/screens/pages/api-page/index.html#L29",
      "kind": "recognised",
      "line": 29,
      "passages": 2,
      "surface": "viewer",
      "title": "API page",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…d without one, the chips, a marked passage, the code blocks, the tables, the viewer of a document and the focus ring all take the dark palette from the same tok…",
      "file": {
        "href": "../../specs/screens/panels/colour-scheme/index.html",
        "label": "screens/panels/colour-scheme.md"
      },
      "href": "../../specs/screens/panels/colour-scheme/index.html#L17",
      "kind": "recognised",
      "line": 17,
      "passages": 2,
      "surface": "viewer",
      "title": "Colour scheme",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…ne. The component gallery shows the entity page and the home page in the dark scheme, forced on their root so that a viewer sees them dark whatever they prefer.",
      "file": {
        "href": "../../specs/screens/panels/colour-scheme/index.html",
        "label": "screens/panels/colour-scheme.md"
      },
      "href": "../../specs/screens/panels/colour-scheme/index.html#L19",
      "kind": "recognised",
      "line": 19,
      "passages": 2,
      "surface": "viewer",
      "title": "Colour scheme",
      "type": "screen",
      "typeLabel": "Screen"
    },
    {
      "context": "…without copying it into the note: its operations as a plain list, a link to download the original, and a viewer that loads the signatures and schemas on demand.",
      "file": {
        "href": "../../glossary/inference/contracts/contract/index.html",
        "label": "inference/contracts/contract.md"
      },
      "href": "../../glossary/inference/contracts/contract/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "Contract",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "…or a slide is in a converted document: a mention cites it by its timecode, and the rail of the document viewer lists the cues with the first line of their text.",
      "file": {
        "href": "../../glossary/ingestion/documents/cue/index.html",
        "label": "ingestion/documents/cue.md"
      },
      "href": "../../glossary/ingestion/documents/cue/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "Cue",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "…documents. Its page offers the file for download, shows its extracted text page by page and, when the conversion produced a PDF, opens it in a viewer on demand.",
      "file": {
        "href": "../../glossary/ingestion/documents/document/index.html",
        "label": "ingestion/documents/document.md"
      },
      "href": "../../glossary/ingestion/documents/document/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "Document",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "… original by its author; either way the page of the document opens it in the viewer on demand and the original stays downloadable. previews: false on a source k…",
      "file": {
        "href": "../../glossary/ingestion/documents/preview/index.html",
        "label": "ingestion/documents/preview.md"
      },
      "href": "../../glossary/ingestion/documents/preview/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "Preview",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "… them one after the other, the file for download, its extracted text and its viewer. An office document without markdown next to it is reported by W-DOC-NOMD un…",
      "file": {
        "href": "../../glossary/ingestion/sources/representation/index.html",
        "label": "ingestion/sources/representation.md"
      },
      "href": "../../glossary/ingestion/sources/representation/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "Representation",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "…act import turns into operations. The page of an API lists its operations and carries the contract viewer; an API that nothing consumes yields W-API-NOCONSUMER.",
      "file": {
        "href": "../../glossary/ingestion/typing/api/index.html",
        "label": "ingestion/typing/api.md"
      },
      "href": "../../glossary/ingestion/typing/api/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "surface": "viewer",
      "title": "API",
      "type": "term",
      "typeLabel": "Term"
    },
    {
      "context": "… the contract does not declare yet, suggest links, stays ahead of it until the next version. The API page states both gaps and shows the contract in its viewer.",
      "file": {
        "href": "../../specs/api/model-query/index.html",
        "label": "api/model-query.md"
      },
      "href": "../../specs/api/model-query/index.html#L10",
      "kind": "recognised",
      "line": 10,
      "surface": "viewer",
      "title": "Model query API",
      "type": "api",
      "typeLabel": "API"
    },
    {
      "context": "…opened from the disk, and the site promises to work there; only the document viewer, imported on demand by its island, is a module. Styling is native CSS in fou…",
      "file": {
        "href": "../../specs/decisions/publication/slots-islands-and-layers/index.html",
        "label": "decisions/publication/slots-islands-and-layers.md"
      },
      "href": "../../specs/decisions/publication/slots-islands-and-layers/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "surface": "viewer",
      "title": "Slots, islands and layers",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "…depends on no office format nor system tool. Readers, converters, importers, viewers and heavy projections are plugins declared in the configuration. The unscop…",
      "file": {
        "href": "../../specs/decisions/quality/core-plugins-preset/index.html",
        "label": "decisions/quality/core-plugins-preset.md"
      },
      "href": "../../specs/decisions/quality/core-plugins-preset/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "surface": "viewers",
      "title": "Core, plugins, preset",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "…r entity and per keyword page at the address of its identifier, the document viewer on the page of a document with its files placed next to it, the alphabetical…",
      "file": {
        "href": "../../specs/processes/ingestion/build-pipeline/index.html",
        "label": "processes/ingestion/build-pipeline.md"
      },
      "href": "../../specs/processes/ingestion/build-pipeline/index.html#L30",
      "kind": "recognised",
      "line": 30,
      "surface": "viewer",
      "title": "Build pipeline",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "… gap is measured in the other direction on the page of the API: the contract viewer lists every operation of the contract and flags the ones no note describes y…",
      "file": {
        "href": "../../specs/rules/contracts/operation-unmatched/index.html",
        "label": "rules/contracts/operation-unmatched.rule.md"
      },
      "href": "../../specs/rules/contracts/operation-unmatched/index.html#L10",
      "kind": "recognised",
      "line": 10,
      "surface": "viewer",
      "title": "Operation unmatched",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "… the \"Deck\" tab offers the original to download, the preview in the document viewer, opened as soon as the tab is shown, and the extracted text, once. The tabs …",
      "file": {
        "href": "../../specs/screens/pages/meeting-page/index.html",
        "label": "screens/pages/meeting-page.md"
      },
      "href": "../../specs/screens/pages/meeting-page/index.html#L16",
      "kind": "recognised",
      "line": 16,
      "surface": "viewer",
      "title": "Meeting page",
      "type": "screen",
      "typeLabel": "Screen"
    }
  ]
}
