Bow Tie Kreative WCAG Grammar

Example rules

LAKA-WCAG-STATUS-SEMANTICS

wcag_requirement change level: Major Change execution: NOT_TESTED

Object

status update — A concrete authorized component instance; bind before execution.

States: loading success error

Applicability — IF

  • message.is_qualifying_markup_status

Requirement — THEN REQUIRE

  • status.presentable_by_at_without_focus

WCAG references

Implementation

Choose semantics appropriate to urgency and verify actual supported behavior.

LAKA instantiation

Object
status update in the declared test scope.
Conditions
Use the listed states with a recorded role, fixture and environment.
Actions
Execute the named task and its relevant recovery transitions.
Tools
Use repository test adapters and qualified manual review where needed.
Resources
Synthetic fixtures, a test environment, accountable owner and evidence store.
Outcomes
The status can be presented through appropriate semantics without requiring focus on it.
Feedback
Preserve observations and create a linked regression check after repair.
Constraints
Do not weaken security, erase information or reduce task functionality.
Value
Support independent operation of this task without the recorded barrier.
Failure mode
An assertion fails, remains unknown or regresses in a relevant state.

Measurement lenses: Scope Detectability Propagation Reversibility

Full record

examples/laka-wcag-status-semantics.json
{
  "id": "LAKA-WCAG-STATUS-SEMANTICS",
  "version": "1.0.0",
  "authority": "wcag_requirement",
  "source_refs": [
    "SC-4.1.3"
  ],
  "wcag_refs": [
    {
      "criterion_id": "4.1.3",
      "level": "AA"
    }
  ],
  "covers_full_criteria": false,
  "object": {
    "type": "status update",
    "scope": "A concrete authorized component instance; bind before execution.",
    "states": [
      "loading",
      "success",
      "error"
    ]
  },
  "applicability": {
    "predicate": "message.is_qualifying_markup_status"
  },
  "require": {
    "predicate": "status.presentable_by_at_without_focus"
  },
  "exceptions": [],
  "implementation": "Choose semantics appropriate to urgency and verify actual supported behavior.",
  "laka": {
    "change_level": "Major Change",
    "internal_variables": {
      "Object": "status update in the declared test scope.",
      "Conditions": "Use the listed states with a recorded role, fixture and environment.",
      "Actions": "Execute the named task and its relevant recovery transitions.",
      "Tools": "Use repository test adapters and qualified manual review where needed.",
      "Resources": "Synthetic fixtures, a test environment, accountable owner and evidence store.",
      "Outcomes": "The status can be presented through appropriate semantics without requiring focus on it.",
      "Feedback": "Preserve observations and create a linked regression check after repair.",
      "Constraints": "Do not weaken security, erase information or reduce task functionality.",
      "Value": "Support independent operation of this task without the recorded barrier.",
      "Failure mode": "An assertion fails, remains unknown or regresses in a relevant state."
    },
    "meta_variables": [
      "Scope",
      "Detectability",
      "Propagation",
      "Reversibility"
    ]
  },
  "tests": [
    {
      "method": "mixed",
      "steps": [
        "Trigger the relevant outcome.",
        "Inspect status semantics.",
        "Observe with the declared assistive technology.",
        "Confirm the task remains operable."
      ],
      "expected": "The status can be presented through appropriate semantics without requiring focus on it.",
      "evidence_required": [
        "build and test fixture",
        "rendered interaction observations",
        "reviewed manual evidence where required"
      ]
    }
  ],
  "metrics": [
    {
      "measure": "supported required assertions",
      "unit": "count",
      "decision": "No false or unresolved required assertions.",
      "denominator": "All applicable planned assertions for this bound instance."
    }
  ],
  "guardrails": [
    "Do not make all changes assertive.",
    "Do not infer an observed announcement from a DOM snapshot alone."
  ],
  "owner": "Assigned accessibility implementation owner",
  "execution_status": "NOT_TESTED"
}

This rule as JSON →