terminology rule

terminology.membership

Use only known Canon entries, composition members, and child addresses in explicitly typed or positively evidenced Canon constructs.

  • product: error
  • marketing: error
  • public: warning
  • docs: warning

Rationale

Unknown words in ordinary prose are not evidence of a Canon mistake. Membership becomes decidable only when a typed field or complete Canon construct identifies the expected semantic position.

Guidance

Choose an existing stable entry ID, a member admitted by the named composition operand, or a child address that belongs to the selected parent and child kind.

Checker behavior

Message

Unknown Canon term {captured}.

Applies in

  • heading
  • body
  • blockquote
  • list item
  • table cell
  • json key
  • glossary term
  • notation token

Detection

kind
existence
subjects
  • child-address
  • composition-member
  • entry

Authored examples and fix policies

subtypes
[
  {
    "examples": {
      "correct": [
        {
          "check_input": {
            "expectation": {
              "expected_kinds": null,
              "kind": "entry"
            },
            "kind": "typed-value",
            "node": "glossary_term"
          },
          "format": "text",
          "id": "known-entry-typed",
          "profile": "general-prose",
          "surface": "docs",
          "text": "Bond"
        }
      ],
      "incorrect": [
        {
          "captured": "Sasquatch",
          "check_input": {
            "expectation": {
              "expected_kinds": null,
              "kind": "entry"
            },
            "kind": "typed-value",
            "node": "glossary_term"
          },
          "format": "text",
          "id": "unknown-entry-typed",
          "outcome_id": "violation",
          "profile": "general-prose",
          "surface": "docs",
          "text": "Sasquatch"
        }
      ]
    },
    "id": "unknown-entry",
    "outcomes": [
      {
        "disposition": "structural",
        "fix": {
          "interactive": "suggest",
          "unattended": "retry"
        },
        "id": "violation"
      }
    ],
    "supersedes": [
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "preferred-over"
      },
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "deprecated-form"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-kind"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-scope"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "case"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "plural"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "inflection"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "hyphenation"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "canonical-direction"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "annotation"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "interaction-type"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "directionality"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "path-name"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "direction"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "endpoints"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "inverse"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "typed-claim"
      },
      {
        "rule_id": "composition.harmony-reference",
        "subtype_id": "stored-address"
      }
    ]
  },
  {
    "examples": {
      "correct": [
        {
          "check_input": {
            "expectation": {
              "bound_operands": [
                {
                  "operand_index": 1,
                  "target_id": "axis.relational"
                }
              ],
              "composition_id": "compose.harmony",
              "kind": "composition-operand",
              "operand_index": 0
            },
            "kind": "typed-value",
            "node": "notation_token"
          },
          "format": "text",
          "id": "known-harmony-capacity",
          "profile": "general-prose",
          "surface": "docs",
          "text": "Move"
        }
      ],
      "incorrect": [
        {
          "captured": "NotACapacity",
          "check_input": {
            "expectation": {
              "bound_operands": [
                {
                  "operand_index": 1,
                  "target_id": "axis.relational"
                }
              ],
              "composition_id": "compose.harmony",
              "kind": "composition-operand",
              "operand_index": 0
            },
            "kind": "typed-value",
            "node": "notation_token"
          },
          "format": "text",
          "id": "unknown-harmony-capacity",
          "outcome_id": "violation",
          "profile": "general-prose",
          "surface": "docs",
          "text": "NotACapacity"
        }
      ]
    },
    "id": "unknown-operand",
    "outcomes": [
      {
        "disposition": "structural",
        "fix": {
          "interactive": "suggest",
          "unattended": "retry"
        },
        "id": "violation"
      }
    ],
    "supersedes": [
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "preferred-over"
      },
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "deprecated-form"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-kind"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-scope"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "case"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "plural"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "inflection"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "hyphenation"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "canonical-direction"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "annotation"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "interaction-type"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "directionality"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "path-name"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "direction"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "endpoints"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "inverse"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "typed-claim"
      },
      {
        "rule_id": "composition.harmony-reference",
        "subtype_id": "stored-address"
      }
    ]
  },
  {
    "examples": {
      "correct": [
        {
          "check_input": {
            "expectation": {
              "expected_kinds": [
                "trap-escape"
              ],
              "expected_parent_id": "trap.emotional-blanking",
              "kind": "child-address"
            },
            "kind": "typed-value",
            "node": "notation_token"
          },
          "format": "text",
          "id": "known-trap-escape",
          "profile": "general-prose",
          "surface": "docs",
          "text": "trap.emotional-blanking/escape/BE"
        }
      ],
      "incorrect": [
        {
          "captured": "trap.emotional-detaching/escape/FE",
          "check_input": {
            "expectation": {
              "expected_kinds": [
                "trap-escape"
              ],
              "expected_parent_id": "trap.emotional-blanking",
              "kind": "child-address"
            },
            "kind": "typed-value",
            "node": "notation_token"
          },
          "format": "text",
          "id": "wrong-parent-trap-escape",
          "outcome_id": "violation",
          "profile": "general-prose",
          "surface": "docs",
          "text": "trap.emotional-detaching/escape/FE"
        }
      ]
    },
    "id": "unknown-child-address",
    "outcomes": [
      {
        "disposition": "structural",
        "fix": {
          "interactive": "suggest",
          "unattended": "retry"
        },
        "id": "violation"
      }
    ],
    "supersedes": [
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "preferred-over"
      },
      {
        "rule_id": "terminology.preferred-form",
        "subtype_id": "deprecated-form"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-kind"
      },
      {
        "rule_id": "terminology.confusable-context",
        "subtype_id": "wrong-scope"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "case"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "plural"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "inflection"
      },
      {
        "rule_id": "orthography.canonical-form",
        "subtype_id": "hyphenation"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.harmony",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pair",
        "subtype_id": "canonical-direction"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "member"
      },
      {
        "rule_id": "composition.pattern",
        "subtype_id": "annotation"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "interaction-type"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "operand-kind"
      },
      {
        "rule_id": "composition.interaction",
        "subtype_id": "directionality"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.single-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "core"
      },
      {
        "rule_id": "composition.dyad-formation",
        "subtype_id": "identity"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "path-name"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "direction"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "endpoints"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "inverse"
      },
      {
        "rule_id": "composition.path-transition",
        "subtype_id": "typed-claim"
      },
      {
        "rule_id": "composition.harmony-reference",
        "subtype_id": "stored-address"
      }
    ]
  }
]