Skip to content

QTI 3.0.1 — conformance status

Generated by bun run conformance:render — do not edit by hand.

Denominator: pinned Coverage Map docs/conformance/maps/qti-v3.0.1.json (generated 2026-06-25). See conform-ed ADR-0013 (map) and emergent ADR-0028 (overlay).

Profile Requirements Done Partial Other Progress
accessibility 1 1 0 0 ████████████████ 100%
item 4 4 0 0 ████████████████ 100%
outcome-declaration 1 1 0 0 ████████████████ 100%
response-declaration 1 1 0 0 ████████████████ 100%
response-processing 1 1 0 0 ████████████████ 100%
section 1 1 0 0 ████████████████ 100%
test 2 2 0 0 ████████████████ 100%
Req Level Status Evidence Statement
QTI-A11Y-1 MUST ✅ done qti:3.0.1:conf:accessibility/QTI-A11Y-1 WAI-ARIA roles and states authored on a qti-assessment-item’s content and interactions (the ARIABaseDType attribute group) MUST be preserved through serialization and delivered to assistive technology unchanged.
Req Level Status Evidence Statement
QTI-ITEM-1 MUST ✅ done qti:3.0.1:conf:item/QTI-ITEM-1 A qti-assessment-item MUST declare a unique identifier and a human-readable title.
QTI-ITEM-2 MUST ✅ done qti:3.0.1:conf:item/QTI-ITEM-2 A qti-assessment-item MUST contain exactly one qti-item-body holding the candidate-facing content.
QTI-ITEM-3 MUST ✅ done qti:3.0.1:conf:item/QTI-ITEM-3 A qti-assessment-item MUST carry the time-dependent attribute and declare whether it is adaptive.
QTI-ITEM-4 MUST ✅ done qti:3.0.1:conf:item/QTI-ITEM-4 A scored qti-assessment-item MUST declare its response variable(s) via qti-response-declaration and carry qti-response-processing to score them.
Req Level Status Evidence Statement
QTI-OD-1 MUST ✅ done qti:3.0.1:conf:outcome-declaration/QTI-OD-1 A qti-outcome-declaration MUST declare an identifier under which its computed value is stored.
Req Level Status Evidence Statement
QTI-RD-1 MUST ✅ done qti:3.0.1:conf:response-declaration/QTI-RD-1 A qti-response-declaration MUST declare an identifier, a cardinality (single / multiple / ordered / record) and a base-type.
Req Level Status Evidence Statement
QTI-RP-1 MUST ✅ done qti:3.0.1:conf:response-processing/QTI-RP-1 A qti-response-processing block MUST either reference a standard processing template (via its template attribute) or carry custom processing rules.
Req Level Status Evidence Statement
QTI-SEC-1 MUST ✅ done qti:3.0.1:conf:section/QTI-SEC-1 A qti-assessment-section MUST declare an identifier and a title for the grouping it represents.
Req Level Status Evidence Statement
QTI-TEST-1 MUST ✅ done qti:3.0.1:conf:test/QTI-TEST-1 A qti-assessment-test MUST declare an identifier and contain at least one qti-test-part.
QTI-TEST-2 MUST ✅ done qti:3.0.1:conf:test/QTI-TEST-2 A qti-test-part MUST contain at least one qti-assessment-section organising the items it delivers.

Information-model coverage (vs conform-ed model)

Section titled “Information-model coverage (vs conform-ed model)”
  • 5344 literal items — 582 modelled ✅, 0 partial 🟡, 0 gaps ❌
  • Silent gaps (in spec, not modelled): none
  • conform-ed extensions (modelled, not in spec): 31
  • documented conform-ed normalisations (renames, not gaps): 363 key(s) across:
    • XSD xs:any open-content wildcard → conform-ed extensions (an unnamed wildcard has no literal name to join).
    • XSD simpleContent text node → conform-ed value (the literal leaves the text node unnamed).
    • Foreign xml:base attribute (local name base) → conform-ed xmlBase (a named rename; the literal items are modelled).
    • Foreign xml:lang attribute (local name lang) → conform-ed xmlLang (a named rename; the literal items are modelled).
    • QTI expression operators (qti-and, qti-sum, qti-map-response, …) → conform-ed’s kind-discriminated expression union (the unary/binary/one-to-many/container enums + named operators) reached via the Zod expression/expressions operands.
    • QTI response/outcome/template processing-rule elements → conform-ed’s kind-discriminated rule union (Zod rules); include → QtiIncludeSchema.
    • QTI interaction + feedback/template/rubric block elements → typed members of conform-ed’s QtiContentFragment union (Zod content); every interaction emergent authors.
    • XHTML flow/inline (+ embedded MathML/SSML) content → conform-ed’s generic opaque XML content node (createXmlNodeSchema: {kind:‘xml’, name, attributes, children}) — a lossless round-trip reached via Zod content/children, NOT a per-element schema.
    • Nested section structure (qti-assessment-section/-ref, item-ref) → conform-ed’s typed section children union.
    • QTI map/table entry elements (XML singular -entry ↔ JSON *Entries array; the y→ies plural the name-normaliser misses) → conform-ed’s typed entry arrays.
  • qti:3.0.1:conf:accessibility/QTI-A11Y-1
    • WAI-ARIA roles and states authored on a QTI interaction are preserved through emergent’s real ingest→serialize round-trip and delivered onto the interaction DOM for assistive technology (ADR-0039). The teacher item authoring panel surfaces role + the common aria-* attributes; the offline conformance gate authors an item carrying ARIA, re-emits it, and asserts the ARIA survives.
  • qti:3.0.1:conf:item/QTI-ITEM-1
    • An emergent-authored item serializes to conformant QTI with its identifier and title; the offline conformance gate validates the emitted document against the official QTI 3 validator and re-ingests it.
  • qti:3.0.1:conf:item/QTI-ITEM-2
    • The authored item carries exactly one qti-item-body (the prompt + interaction content); asserted by the export-conformance gate.
  • qti:3.0.1:conf:item/QTI-ITEM-3
    • The emitted qti-assessment-item carries time-dependent and adaptive attributes; the validator rejects an item missing them, so the passing conformance gate proves they are present.
  • qti:3.0.1:conf:item/QTI-ITEM-4
    • A scored authored item emits its qti-response-declaration(s) and qti-response-processing; the choice-item conformance gate authors a correct-answer item and validates the response variable and processing land in the conformant document.
  • qti:3.0.1:conf:outcome-declaration/QTI-OD-1
    • The scored item declares its outcome (SCORE) with an identifier; carried in the conformant emitted document.
  • qti:3.0.1:conf:response-declaration/QTI-RD-1
    • The authored response-declaration carries its identifier, cardinality and base-type; validated by the export-conformance gate.
  • qti:3.0.1:conf:response-processing/QTI-RP-1
    • The authored item emits qti-response-processing (a standard match-correct template or custom rules); validated by the export-conformance gate.
  • qti:3.0.1:conf:section/QTI-SEC-1
    • The authored qti-assessment-section carries its identifier (and title); validated by the test-export gate.
  • qti:3.0.1:conf:test/QTI-TEST-1
    • An emergent-authored qti-assessment-test serializes with its identifier and at least one qti-test-part; validated against the official QTI 3 validator by the test-export gate.
  • qti:3.0.1:conf:test/QTI-TEST-2
    • The authored test-part carries at least one qti-assessment-section (including a nested section in the fixture); validated by the test-export gate.