{
  "id": "specs/processes/ingestion/build-pipeline",
  "mentions": [
    {
      "context": "…atch triggers: every morning the build pipeline reads the two content repositori…",
      "file": {
        "href": "../../../batches/ingestion/nightly-build/index.html",
        "label": "batches/ingestion/nightly-build.md"
      },
      "href": "../../../batches/ingestion/nightly-build/index.html#L9",
      "kind": "written",
      "line": 9,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Nightly build",
      "type": "batch",
      "typeLabel": "Batch"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/purpose-built-contract-viewer/index.html",
        "label": "decisions/publication/purpose-built-contract-viewer.md"
      },
      "href": "../../../decisions/publication/purpose-built-contract-viewer/index.html#L16",
      "kind": "written",
      "line": 16,
      "passages": 2,
      "surface": "Build",
      "title": "Purpose-built contract viewer",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build pipeline",
      "file": {
        "href": "../../../decisions/quality/reproducible-builds/index.html",
        "label": "decisions/quality/reproducible-builds.md"
      },
      "href": "../../../decisions/quality/reproducible-builds/index.html#L14",
      "kind": "written",
      "line": 14,
      "passages": 2,
      "surface": "Build pipeline",
      "title": "Reproducible builds",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "One run of the build pipeline on a configuration: the sources it ingested with t…",
      "file": {
        "href": "../../../objects/ingestion/build/index.html",
        "label": "objects/ingestion/build.md"
      },
      "href": "../../../objects/ingestion/build/index.html#L6",
      "kind": "written",
      "line": 6,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Build",
      "type": "business_object",
      "typeLabel": "Business object"
    },
    {
      "context": "…o settings a forge asks for; the build pipeline and the lint do the rest. On the…",
      "file": {
        "href": "../onboarding-a-repository/index.html",
        "label": "processes/ingestion/onboarding-a-repository.md"
      },
      "href": "../onboarding-a-repository/index.html#L7",
      "kind": "recognised",
      "line": 7,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Onboarding a repository",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "…lint runs the same checks as the build pipeline on a single knowledge repository…",
      "file": {
        "href": "../../quality/lint/index.html",
        "label": "processes/quality/lint.md"
      },
      "href": "../../quality/lint/index.html#L8",
      "kind": "recognised",
      "line": 8,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Lint",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "…atch triggers: every morning the build pipeline reads the two content repositori…",
      "file": {
        "href": "../../../batches/ingestion/nightly-build/index.html",
        "label": "batches/ingestion/nightly-build.md"
      },
      "href": "../../../batches/ingestion/nightly-build/index.html#L9",
      "kind": "recognised",
      "line": 9,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Nightly build",
      "type": "batch",
      "typeLabel": "Batch"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/purpose-built-contract-viewer/index.html",
        "label": "decisions/publication/purpose-built-search-index.md"
      },
      "href": "../../../decisions/publication/purpose-built-contract-viewer/index.html#L15",
      "kind": "written",
      "line": 15,
      "passages": 2,
      "surface": "Build",
      "title": "Purpose-built contract viewer",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build pipeline",
      "file": {
        "href": "../../../decisions/quality/reproducible-builds/index.html",
        "label": "decisions/quality/reproducible-builds.md"
      },
      "href": "../../../decisions/quality/reproducible-builds/index.html#L14",
      "kind": "recognised",
      "line": 14,
      "passages": 2,
      "surface": "Build pipeline",
      "title": "Reproducible builds",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "One run of the build pipeline on a configuration: the sources it ingested with t…",
      "file": {
        "href": "../../../objects/ingestion/build/index.html",
        "label": "objects/ingestion/build.md"
      },
      "href": "../../../objects/ingestion/build/index.html#L6",
      "kind": "recognised",
      "line": 6,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Build",
      "type": "business_object",
      "typeLabel": "Business object"
    },
    {
      "context": "…o settings a forge asks for; the build pipeline and the lint do the rest. On the…",
      "file": {
        "href": "../onboarding-a-repository/index.html",
        "label": "processes/ingestion/onboarding-a-repository.md"
      },
      "href": "../onboarding-a-repository/index.html#L7",
      "kind": "written",
      "line": 7,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Onboarding a repository",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "…lint runs the same checks as the build pipeline on a single knowledge repository…",
      "file": {
        "href": "../../quality/lint/index.html",
        "label": "processes/quality/lint.md"
      },
      "href": "../../quality/lint/index.html#L8",
      "kind": "written",
      "line": 8,
      "passages": 2,
      "surface": "build pipeline",
      "title": "Lint",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../api/canonical-model/index.html",
        "label": "api/canonical-model.md"
      },
      "href": "../../../api/canonical-model/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Canonical model",
      "type": "api",
      "typeLabel": "API"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../api/plugin-api/index.html",
        "label": "api/plugin-api.md"
      },
      "href": "../../../api/plugin-api/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Plugin API",
      "type": "api",
      "typeLabel": "API"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/bounded-neighbourhood/index.html",
        "label": "decisions/inference/bounded-neighbourhood.md"
      },
      "href": "../../../decisions/inference/bounded-neighbourhood/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Bounded neighbourhood",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/confidence-and-provenance-on-every-link/index.html",
        "label": "decisions/inference/confidence-and-provenance-on-every-link.md"
      },
      "href": "../../../decisions/inference/confidence-and-provenance-on-every-link/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Confidence and provenance on every link",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/declarative-profile/index.html",
        "label": "decisions/inference/declarative-profile.md"
      },
      "href": "../../../decisions/inference/declarative-profile/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Declarative profile",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/keyword-page-threshold/index.html",
        "label": "decisions/inference/keyword-page-threshold.md"
      },
      "href": "../../../decisions/inference/keyword-page-threshold/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Keyword page threshold",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/links-are-authoritative/index.html",
        "label": "decisions/inference/links-are-authoritative.md"
      },
      "href": "../../../decisions/inference/links-are-authoritative/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Links are authoritative",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/minhash-for-twin-resources/index.html",
        "label": "decisions/inference/minhash-for-twin-resources.md"
      },
      "href": "../../../decisions/inference/minhash-for-twin-resources/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "MinHash for twin resources",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/type-driven-neighbour-order/index.html",
        "label": "decisions/inference/type-driven-neighbour-order.md"
      },
      "href": "../../../decisions/inference/type-driven-neighbour-order/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Type-driven neighbour order",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/inference/types-as-modules/index.html",
        "label": "decisions/inference/types-as-modules.md"
      },
      "href": "../../../decisions/inference/types-as-modules/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Types as modules",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/ingestion/deterministic-identifiers/index.html",
        "label": "decisions/ingestion/deterministic-identifiers.md"
      },
      "href": "../../../decisions/ingestion/deterministic-identifiers/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Deterministic identifiers",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/ingestion/locale-per-source/index.html",
        "label": "decisions/ingestion/locale-per-source.md"
      },
      "href": "../../../decisions/ingestion/locale-per-source/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Locale per source",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/ingestion/lock-file-for-human-decisions/index.html",
        "label": "decisions/ingestion/lock-file-for-human-decisions.md"
      },
      "href": "../../../decisions/ingestion/lock-file-for-human-decisions/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Lock file for human decisions",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/ingestion/single-extraction-path/index.html",
        "label": "decisions/ingestion/single-extraction-path.md"
      },
      "href": "../../../decisions/ingestion/single-extraction-path/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Single extraction path",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/ingestion/standard-markdown-only/index.html",
        "label": "decisions/ingestion/standard-markdown-only.md"
      },
      "href": "../../../decisions/ingestion/standard-markdown-only/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Standard markdown only",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/fonts-from-a-third-party-host/index.html",
        "label": "decisions/publication/fonts-from-a-third-party-host.md"
      },
      "href": "../../../decisions/publication/fonts-from-a-third-party-host/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Fonts from a third-party host",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/icu-message-catalogues/index.html",
        "label": "decisions/publication/icu-message-catalogues.md"
      },
      "href": "../../../decisions/publication/icu-message-catalogues/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "ICU message catalogues",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/no-database/index.html",
        "label": "decisions/publication/no-database.md"
      },
      "href": "../../../decisions/publication/no-database/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "No database",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/paginated-mentions/index.html",
        "label": "decisions/publication/paginated-mentions.md"
      },
      "href": "../../../decisions/publication/paginated-mentions/index.html#L16",
      "kind": "written",
      "line": 16,
      "surface": "Build",
      "title": "Paginated mentions",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/self-hosted-fonts/index.html",
        "label": "decisions/publication/self-hosted-fonts.md"
      },
      "href": "../../../decisions/publication/self-hosted-fonts/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Self-hosted fonts",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/static-first/index.html",
        "label": "decisions/publication/static-first.md"
      },
      "href": "../../../decisions/publication/static-first/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Static first",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/publication/white-label-by-default/index.html",
        "label": "decisions/publication/white-label-by-default.md"
      },
      "href": "../../../decisions/publication/white-label-by-default/index.html#L20",
      "kind": "written",
      "line": 20,
      "surface": "Build",
      "title": "White label by default",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/quality/core-plugins-preset/index.html",
        "label": "decisions/quality/core-plugins-preset.md"
      },
      "href": "../../../decisions/quality/core-plugins-preset/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Core, plugins, preset",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../decisions/quality/findings-not-failures/index.html",
        "label": "decisions/quality/findings-not-failures.md"
      },
      "href": "../../../decisions/quality/findings-not-failures/index.html#L13",
      "kind": "written",
      "line": 13,
      "surface": "Build",
      "title": "Findings, not failures",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../notes/type-by-filing/index.html",
        "label": "notes/type-by-filing.md"
      },
      "href": "../../../notes/type-by-filing/index.html#L16",
      "kind": "written",
      "line": 16,
      "surface": "Build",
      "title": "Type by filing",
      "type": "decision",
      "typeLabel": "Decision"
    },
    {
      "context": "…, then the configuration repository rebuilds the site of the three repositories …",
      "file": {
        "href": "../../publication/publishing-the-wiki/index.html",
        "label": "processes/publication/publishing-the-wiki.md"
      },
      "href": "../../publication/publishing-the-wiki/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "build",
      "title": "Publishing the wiki",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "concordance query reads the model a build wrote and answers what it knows, witho…",
      "file": {
        "href": "../../quality/query/index.html",
        "label": "processes/quality/query.md"
      },
      "href": "../../quality/query/index.html#L7",
      "kind": "written",
      "line": 7,
      "surface": "build",
      "title": "Query",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "…kflow tags the merge commit v<x.y.z>, builds the standalone binaries on three pl…",
      "file": {
        "href": "../../quality/release/index.html",
        "label": "processes/quality/release.md"
      },
      "href": "../../quality/release/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "build",
      "title": "Release",
      "type": "process",
      "typeLabel": "Process"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/contracts/ambiguous-operation/index.html",
        "label": "rules/contracts/ambiguous-operation.rule.md"
      },
      "href": "../../../rules/contracts/ambiguous-operation/index.html#L16",
      "kind": "written",
      "line": 16,
      "surface": "Build",
      "title": "Ambiguous operation",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/contracts/api-without-consumer/index.html",
        "label": "rules/contracts/api-without-consumer.rule.md"
      },
      "href": "../../../rules/contracts/api-without-consumer/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "API without consumer",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/contracts/consumer-mismatch/index.html",
        "label": "rules/contracts/consumer-mismatch.rule.md"
      },
      "href": "../../../rules/contracts/consumer-mismatch/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Consumer mismatch",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/contracts/operation-unmatched/index.html",
        "label": "rules/contracts/operation-unmatched.rule.md"
      },
      "href": "../../../rules/contracts/operation-unmatched/index.html#L19",
      "kind": "written",
      "line": 19,
      "surface": "Build",
      "title": "Operation unmatched",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/contracts/unreachable-contract/index.html",
        "label": "rules/contracts/unreachable-contract.rule.md"
      },
      "href": "../../../rules/contracts/unreachable-contract/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Unreachable contract",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/documents/conversion-failed/index.html",
        "label": "rules/documents/conversion-failed.rule.md"
      },
      "href": "../../../rules/documents/conversion-failed/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Conversion failed",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/documents/document-without-markdown/index.html",
        "label": "rules/documents/document-without-markdown.rule.md"
      },
      "href": "../../../rules/documents/document-without-markdown/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Document without markdown",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/documents/duplicate-candidate/index.html",
        "label": "rules/documents/duplicate-candidate.rule.md"
      },
      "href": "../../../rules/documents/duplicate-candidate/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Duplicate candidate",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/documents/suspect-conversion/index.html",
        "label": "rules/documents/suspect-conversion.rule.md"
      },
      "href": "../../../rules/documents/suspect-conversion/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Suspect conversion",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/documents/transcript-withheld/index.html",
        "label": "rules/documents/transcript-withheld.rule.md"
      },
      "href": "../../../rules/documents/transcript-withheld/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Transcript withheld",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/engine/accessibility/index.html",
        "label": "rules/engine/accessibility.rule.md"
      },
      "href": "../../../rules/engine/accessibility/index.html#L28",
      "kind": "written",
      "line": 28,
      "surface": "Build",
      "title": "Accessibility",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/engine/disabled-plugin/index.html",
        "label": "rules/engine/disabled-plugin.rule.md"
      },
      "href": "../../../rules/engine/disabled-plugin/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Disabled plugin",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/engine/linter-build-parity/index.html",
        "label": "rules/engine/linter-build-parity.rule.md"
      },
      "href": "../../../rules/engine/linter-build-parity/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Linter and build parity",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/engine/operation-matching/index.html",
        "label": "rules/engine/operation-matching.rule.md"
      },
      "href": "../../../rules/engine/operation-matching/index.html#L18",
      "kind": "written",
      "line": 18,
      "surface": "Build",
      "title": "Operation matching",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/engine/relation-typing/index.html",
        "label": "rules/engine/relation-typing.rule.md"
      },
      "href": "../../../rules/engine/relation-typing/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Relation typing",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/duplicate-identifier/index.html",
        "label": "rules/identifiers/duplicate-identifier.rule.md"
      },
      "href": "../../../rules/identifiers/duplicate-identifier/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Duplicate identifier",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/invalid-encoding/index.html",
        "label": "rules/identifiers/invalid-encoding.rule.md"
      },
      "href": "../../../rules/identifiers/invalid-encoding/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Invalid encoding",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/invalid-frontmatter/index.html",
        "label": "rules/identifiers/invalid-frontmatter.rule.md"
      },
      "href": "../../../rules/identifiers/invalid-frontmatter/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Invalid frontmatter",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/invalid-identifier/index.html",
        "label": "rules/identifiers/invalid-identifier.rule.md"
      },
      "href": "../../../rules/identifiers/invalid-identifier/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Invalid identifier",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/relation-outside-the-matrix/index.html",
        "label": "rules/identifiers/relation-outside-the-matrix.rule.md"
      },
      "href": "../../../rules/identifiers/relation-outside-the-matrix/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Relation outside the matrix",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/type-conflict/index.html",
        "label": "rules/identifiers/type-conflict.rule.md"
      },
      "href": "../../../rules/identifiers/type-conflict/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Type conflict",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/unknown-attribute/index.html",
        "label": "rules/identifiers/unknown-attribute.rule.md"
      },
      "href": "../../../rules/identifiers/unknown-attribute/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unknown attribute",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/identifiers/unknown-type/index.html",
        "label": "rules/identifiers/unknown-type.rule.md"
      },
      "href": "../../../rules/identifiers/unknown-type/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unknown type",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/links/broken-link/index.html",
        "label": "rules/links/broken-link.rule.md"
      },
      "href": "../../../rules/links/broken-link/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Broken link",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/links/cross-source-link/index.html",
        "label": "rules/links/cross-source-link.rule.md"
      },
      "href": "../../../rules/links/cross-source-link/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Cross-source link",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/links/unresolved-reference/index.html",
        "label": "rules/links/unresolved-reference.rule.md"
      },
      "href": "../../../rules/links/unresolved-reference/index.html#L15",
      "kind": "written",
      "line": 15,
      "surface": "Build",
      "title": "Unresolved reference",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/sources/stale-source/index.html",
        "label": "rules/sources/stale-source.rule.md"
      },
      "href": "../../../rules/sources/stale-source/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Stale source",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/sources/unreachable-source/index.html",
        "label": "rules/sources/unreachable-source.rule.md"
      },
      "href": "../../../rules/sources/unreachable-source/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unreachable source",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/sources/unusable-pseudonymisation-dictionary/index.html",
        "label": "rules/sources/unusable-pseudonymisation-dictionary.rule.md"
      },
      "href": "../../../rules/sources/unusable-pseudonymisation-dictionary/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unusable pseudonymisation dictionary",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/ambiguous-relation/index.html",
        "label": "rules/vocabulary/ambiguous-relation.rule.md"
      },
      "href": "../../../rules/vocabulary/ambiguous-relation/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Ambiguous relation",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/missing-application/index.html",
        "label": "rules/vocabulary/missing-application.rule.md"
      },
      "href": "../../../rules/vocabulary/missing-application/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Missing application",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/personal-mention-detected/index.html",
        "label": "rules/vocabulary/personal-mention-detected.rule.md"
      },
      "href": "../../../rules/vocabulary/personal-mention-detected/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Personal mention detected",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/suggested-domain/index.html",
        "label": "rules/vocabulary/suggested-domain.rule.md"
      },
      "href": "../../../rules/vocabulary/suggested-domain/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Suggested domain",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/term-homonym/index.html",
        "label": "rules/vocabulary/term-homonym.rule.md"
      },
      "href": "../../../rules/vocabulary/term-homonym/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Term homonym",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/unclassified-domain/index.html",
        "label": "rules/vocabulary/unclassified-domain.rule.md"
      },
      "href": "../../../rules/vocabulary/unclassified-domain/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unclassified domain",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/undefined-term/index.html",
        "label": "rules/vocabulary/undefined-term.rule.md"
      },
      "href": "../../../rules/vocabulary/undefined-term/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Undefined term",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/unknown-application/index.html",
        "label": "rules/vocabulary/unknown-application.rule.md"
      },
      "href": "../../../rules/vocabulary/unknown-application/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unknown application",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/unknown-domain/index.html",
        "label": "rules/vocabulary/unknown-domain.rule.md"
      },
      "href": "../../../rules/vocabulary/unknown-domain/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unknown domain",
      "type": "rule",
      "typeLabel": "Business rule"
    },
    {
      "context": "Build",
      "file": {
        "href": "../../../rules/vocabulary/unused-term/index.html",
        "label": "rules/vocabulary/unused-term.rule.md"
      },
      "href": "../../../rules/vocabulary/unused-term/index.html#L14",
      "kind": "written",
      "line": 14,
      "surface": "Build",
      "title": "Unused term",
      "type": "rule",
      "typeLabel": "Business rule"
    }
  ]
}
