Ommisa answers questions from a corpus of OIML publications. The corpus contains close to nine hundred documents, covering Recommendations, Basic publications, Guides, Documents and Expert reports. Every substantive answer names the publication, edition and clause that support it. When the corpus does not contain an answer, the system says so instead of guessing.
This page describes how the system works in practice. It is written for readers who want to understand the machinery and its current limits. Language models still make mistakes; the citation on every claim exists so that the reader can verify it.
From publications to knowledge
Before any question is answered, the corpus is constructed. A pipeline turns the source publications into a body of knowledge that the system can be held accountable to. The pipeline runs in one direction, and every stage leaves a record.
-
Corpora and provenance. The system draws on two source corpora. The first is a set of hand-curated documents authored in Metanorma. The second is a larger set recovered from scanned originals by optical character recognition. When a document exists in both corpora, the system uses the curated version, because machine-readable source is more reliable than a reconstruction. Every chunk records which corpus it came from, together with the publication, edition, language and a quality tier. Documents whose conversion failed are detected and flagged rather than indexed as if they were sound.
-
Clause-boundary chunking. Documents are split along their own clause structure, which is the structure the authors wrote, rather than by fixed-length token windows. Every chunk carries the number of the clause it came from, so a citation can name an exact location in the source document.
-
Contextual enrichment. A one-time pass over the corpus, using the strongest available models, writes each chunk a short preamble that states where the chunk sits in its document: the publication, the part, the clause and the subject of the clause. The index stores this preamble together with the chunk text, and retrieval measurably improves. The pass is recorded, so it can be replayed exactly after any rebuild.
-
Typed units. Tables, formulas and figures are extracted as first-class retrievable objects alongside the prose clauses; the corpus carries more than three thousand of them. A formula keeps its source notation and is rendered as mathematics. A table keeps its columns and rows as data. A figure keeps its original drawing as an image that the answer model can inspect directly.
-
Terminology and the document graph. The corpus defines its own technical vocabulary. The system links roughly nine thousand defined concepts, drawn from the metrology vocabulary (VIM and VIML) and the corpus glossaries, to the clauses that define them. Separately, a bibliographic registry of 5,707 records organizes the publications into 224 families with their editions and supersession links, so questions about which edition applies are answered from the record rather than by inference. The registry is joined by a citation graph: what each edition’s bibliography cites is extracted as a graph edge, roughly three hundred citations across the corpus, so a question of the form “which standards does R 60 reference” is answered from the record instead of hoping a text search happens to find the bibliography section.
-
Machine-readable models. For the Recommendations that carry them, the system indexes the models themselves: typed attributes, constraints with numeric limits, calculations and test sequences. This is what allows the system to execute a rule instead of quoting it.
-
Indexing under a declared contract. All of the above meets in one vector index under a declared contract. The canonical set of chunk files is enumerated in a single place, every payload passes a projection that enforces what the index can legally store, and public OIML content and internal, access-restricted content live in physically separate indexes. The separation is structural rather than filter-based, so it cannot fail through an oversight in a query.
What happens when you ask
-
Understanding. A language model reads the question first. It determines which language the question is in, whether it names a publication or an edition, whether it asks about a defined term, and what it needs from the earlier turns of the conversation. There are no keyword rules; the same model makes these judgements for every question in every language.
-
Retrieval. The question is expanded into several search forms, including reworded variants and a draft answer used as an additional search key, and these run against a vector index of the corpus in parallel with a full-corpus lexical scan, the two rankings merged by fusion. Chunks were split along clause boundaries, and almost all of them carry a short model-written preamble stating where they sit in their document, which measurably improves retrieval. Two structure-aware lanes add their own candidates: when the question is about a defined term, the terminology graph contributes the clauses that define it; when the question asks what a publication cites, the citation graph supplies the list of cited standards as structured data and the bibliography section is retrieved as the passage that grounds it.
-
Reranking. A cross-encoder reranker orders the candidates by relevance, and for complex questions a stronger model re-ranks the shortlist before the answer is generated. The corpus is a tree, and every chunk carries its clause position, so a clause’s score also blends the scores of its neighbouring clauses: a section whose clauses are collectively relevant rises. The final evidence is presented to the answer model in document reading order, which measurably improves synthesis across passages.
-
Vocabulary binding. Everyday words rarely match defined terms. A terminology index of the corpus’s defined concepts links the user’s phrasing to candidate terms. The answer then leads with the corpus’s own term, quotes its definition and cites where it is defined.
-
Answering. The answer is generated from the retrieved passages only, under a system contract that requires inline citations such as
OIML R 60-1:2021 §4.4.2on every claim. Where the answer states a normative value, the cited phrase is quoted verbatim from the source passage, so claims can be checked mechanically against the corpus. Tables, formulas and figures arrive as typed objects that the interface renders exactly from the source; the model never retypes them. -
Checking. A separate judge model grades whether the retrieved passages actually support the answer, and a second check scores the faithfulness of the final text. Failed checks trigger one corrected retry. Answers that remain unsupported are withheld rather than shown.
-
Conformance by execution. When a question names one of the machine-readable model objects the corpus carries, such as a constraint or a requirement with a numeric limit, the system does not quote the rule; it executes it. The values in the question are bound to the rule’s own parameters, the check is evaluated deterministically, and the verdict, with the arithmetic shown, is attached to the answer as data. The model must present the computed result faithfully and cannot soften or contradict it.
Reading the original document
Every rendered publication is available at its permanent address, and each citation in an answer carries a link into the original document at the cited clause. Choosing In context on a source opens a side panel that shows the original document scrolled to that clause, with the clause highlighted. Choosing Open opens the same view in a new tab. The rendering is the publication’s own, produced from the same source the index was built from.
Verification beyond answering
Two API capabilities go beyond question answering.
Provable absence. For a question such as whether R 60 constrains packaging, the service can enumerate the standard’s entire machine-readable model, covering every requirement, constraint, test and term, and return a certificate stating that the property is absent, how many nodes were enumerated, and what scope the proof covered. A refusal states that the system found nothing; a certificate states that the system examined everything.
Answer verification. Any answer, from this service or from another system, can be checked against the corpus. Every quoted span must appear verbatim in a retrieved passage, every object reference must resolve to a served object, and a judge scores faithfulness. Deterministic checks and judged checks are labeled as what they are.
Ask, then verify — live
This is the whole path the page describes, compressed into one box: a question goes to the live service, the answer comes back with the clauses it rests on, and the verification endpoint then checks the answer mechanically — every quoted span must be contained in a passage the service retrieved. The verdicts below are computed, not asserted.
The question runs against the live service and shares the anonymous daily allowance with the chat. A full answer can take some seconds.
Edition awareness
The same standard, two dates — watch the edition change
OIML publications are revised and superseded, so the question of which edition governs is part of the answer. These two questions name the same Recommendation and differ only in when the evaluation happened. Each runs against the live service; each answer states its edition and cites the clause that says so.
Two live questions, from the anonymous daily allowance.OIML publications are revised, superseded and withdrawn over time, so the question of which edition applies matters as much as the question of what the text says. The system keeps a registry of publication families and their editions, built from the bibliographic record of 5,707 records covering 224 families.
Whether an edition is current is derived from supersession links in the record rather than trusted from a status field, because the status field disagrees with the record’s own links in 58 cases. When a question is about a publication, answers are steered to the active edition, and citations carry the edition and status of every source.
Models and infrastructure
All models are open-weight and are served through Cloudflare Workers AI. The system has no dependency on a proprietary model provider, and no corpus data is sent to third-party services. Different roles use different models, chosen for the job:
| Role | Model | Notes |
|---|---|---|
| Answers (all tiers) | GLM-5.3 Flash | natively multimodal |
| Query understanding | Qwen3-30B-A3B | |
| Understanding, judging, verification | DeepSeek-V4-Flash | |
| Embeddings | Qwen3-Embedding-0.6B | |
| Reranking | bge-reranker-base |
The service runs on Cloudflare’s edge platform. Frequent questions are served from exact and semantic answer caches, which keeps the service fast and inexpensive; refusal answers are never cached. Answers are produced at two depths: Fast, the default, and Thorough, which raises the reasoning effort and the output budget together for signed-in members.
The source classes
The indexed corpus is deliberately heterogeneous, and every indexed passage carries its class openly — the answer’s confidence line is derived from the classes of the sources it actually used.
Verified model The publication’s requirements ride a machine-checkable data model: MPE tables, accuracy classes and verdict logic resolve against the model, not against prose. The model plane is what the service measures itself against — OIML R 60 is the accuracy gauge.
Edited corpus Documents prepared in Metanorma — the hand-curated sources and the editors’ own work — chunked at clause boundaries with contextual enrichment. Quote anchors resolve mechanically against the indexed text.
Experimental OCR Text recovered from scans across the back catalogue. Coverage is the point; the text can wobble — the service flags any answer that leans on this class and names the sources.
How quality is measured
- A golden question set with expected citations runs end to end on every change.
- Paraphrase probes verify that the same question asked eight ways reaches the same sources.
- Judged metrics in the RAGAS style score faithfulness, relevancy and precision, using a separate model over the full retrieved passages.
- Retrieval hit rate is measured at rank 5, independently of generation.
- Leakage probes confirm that answers never draw on internal, access-restricted corpora.
These suites run in CI and gate every deployment. The feedback buttons on each answer feed the same evaluation loop.
// How quality is measured, gated and shipped — mirroring the narrative // on the How it works page. Hand-authored inline SVG riding the site's // CSS tokens (light/dark). --- ---Known limitations
- The index is English-only. Answers are written in the language of the question, but the indexed source text is the English edition. Translated editions are a future step.
- Typed units cover the curated corpus first. Tables, formulas and figures are first-class objects where the document model provides them. Documents recovered from scans join progressively as their structure is verified.
- Bibliographic gaps propagate. Of the 224 publication families, 36 have no recorded supersession link to a successor, so the active edition cannot be derived for them. The registry reports these gaps rather than guessing, and fixing them requires fixing the source data upstream.
- Source quality varies. Part of the corpus comes from optical character recognition of scanned documents. Failed conversions are filtered out, but OCR noise can still reach retrieval.
- Verification reduces errors; it does not eliminate them. The checks catch unsupported answers, but a wrong answer that looks supported can pass. Read the citations.
Roadmap
The document-model direction described here in earlier revisions, covering typed retrieval units, the bibliographic graph, terminology concepts and canonical identifiers, is now the serving system described on this page. Work has moved to the following items.
- Reading the original, in context. Clause-anchored links into the rendered publication are live for the curated corpus, and coverage extends as renderings are added.
- Semantic edition diffs. Answers to what changed between two editions of a Recommendation, stated at the level of requirements and limits rather than as text differences.
- Normative notes as rules. Notes such as the instruction that a specific factor always takes a stated value become inputs that the computation applies rather than prose that a model might overlook.
- An open, reproducible method. The whitepaper documents the full architecture, including the data kinds, the enrichment, the retrieval stages and the evaluation, so that the approach transfers to the corpus of any standards body. The deployment platform is an implementation detail: the design runs on any platform that provides model serving, vector search and durable storage.
We contribute this direction to the Metanorma project’s work on AI-friendly serialization of document models, so that any Metanorma-authored corpus, not only ours, can be indexed in this way.
Programmatic access
The chat interface is one client. The service also exposes a conversational HTTP API, documented in the API reference, and an MCP server for AI agents with tools for grounded answers, passage search and the publication registry.