standards.sgit.ai / tools / resolver

The citation resolver T4 · shipped

Paste a citation and it resolves to the provision. Entirely client-side against the instrument's own JSON endpoint — no backend, no lookup service, nothing to go down. The source is on this page, because a tool this site asks you to trust has to be readable.

Accepted: Article 26(5) · art. 26(5) · 26(5) · art-026-para-05 · d8fc6df65f292bf3 · Annex III 5(b) · Article 99. Instrument defaults to the EU AI Act, the only one modelled.

How it resolves

  1. Normalise the input to a canonical alias — art-026-para-05, zero-padded. Six input forms, one output form.
  2. Look it up in the instrument's JSON by alias, by positional hash, or by citation string.
  3. Return the provision with its address, both hashes, its reading, its provenance and its crosswalk edges — including when there is no page for it yet, because the positional hash is stable before the page exists.

What it does not do: it does not guess. An input that does not normalise to a known alias returns not found with the canonical form it tried, rather than the nearest match. A resolver that silently resolves to the wrong provision is worse than one that fails.

The positional hash

positional_hash = sha256("<instrument-slug>/<alias>")[:16]

Recomputable by anybody, dependent on nothing but the address. Verify one yourself:

$ printf 'eu-ai-act/art-026-para-05' | shasum -a 256 | cut -c1-16
d8fc6df65f292bf3

The source

Roughly sixty lines, no dependencies, no build step: tools/resolver.js. It reads /eu-ai-act/eu-ai-act.json and nothing else, which is rule 1 of the tool contract — read the contract, not the internals.

What this resolver cannot yet do, and it is the interesting half. Content-negotiate (GitHub Pages serves static files, so the JSON twin is a sibling path rather than an Accept header). Resolve across instruments — there is only one. Return crosswalk edges — there are none. And return operative text, which is withheld pending re-derivation. It resolves an address to a record, which is the smallest useful version of T4, and the rest arrives with instrument two.