# live-conformance/access — access services The corpus of [`extensions/access-services.md`](../../extensions/access-services.md) §11: room sessions whose captions are `WEV1` events with their `WTX1` annotations, and the records of the extension beside them: sources, reference transcripts, quality figures, audio descriptions, signings, reviews and completeness claims, each a JSON text signed under `wai:access`. **Access-services equivalence.** For each vector, a conforming verifier of the corpus's room, offered the events of the vector's `stream` in the order given and then its `records` (§8.1), reaches the outcome the vector states (§8.2): `refuse`, with `at` (`events` or `record`), the `index` of the record and the `reason`; or `accept`, with the `figures`: each whole caption track's figure (§4.7), each description's events, voiced events and offsets (§5.3), each signing's segments, revisions named, offsets and video floor (§6.3), and each claim's dialogue overlap (§7.2). Signed integers are written as strings. For each entry of `documents`, the description record it names maps, with the voicing track's `uri` and `type`, onto the DAPT document in `file` byte for byte (§5.5), or is refused with `reason`. A verifier that reaches another outcome, place, reason, figure or byte does not conform. **Provenance.** Generated here: `wai_access_services_vectors gen` writes `vectors.json` and each DAPT document from events and records authored in code, from fixed seeds. Each key, model, track and object digest is SHA-256 of a fixed label and an index, the room id likewise, every time is a constant, and Ed25519 signing is deterministic (RFC 8032), so every file is the same bytes on every machine. The captions, descriptions and transcripts are written for the corpus, in English. The objects a signing names are digests only: no pose stream, video or audio is in the corpus. The generator asserts, before it writes, that each vector reaches the outcome it was written to have and that every reason of §10 refuses a case. No recorded data. ## Layout - `vectors.json`: `room`, `pt0_ms`, `principals` (the event authors `captioner`, `asr`, `host` and `device`, and the record signers), `streams` (each a list of `WEV1` records in lowercase hexadecimal: `lesson`, `reviewed`, and three defective copies of the lesson), `vectors` (each with `name`, `note`, `stream`, `records` and its outcome) and `documents`. - `NAME.dapt.ttml`: the DAPT document of vector `NAME`'s description. ## Checking ``` cargo run --no-default-features --features access_services --bin wai_access_services_vectors -- verify ../live-conformance/access python3 -I access_services_verify.py access ``` The first runs from `wai-rs/`, the second from `live-conformance/`. The second is the corpus's second implementation, written from the extension's text; it shares no code with `wai-rs`.