AODM 1.2 complete package
Specification, XML Schema, JSON Schema, validation rules, worked examples, conformance test suite, and the v1.1 HTML embedding profile.
aodm-1.2.zip · 42 KB
What’s in the package
| File | Purpose |
|---|---|
AODM-1.2-SPECIFICATION.md | The authoritative specification |
aodm-core-1.2.xsd | XML Schema for the 1.2 core |
aodm-core-1.2.schema.json | JSON Schema equivalent |
VALIDATION-RULES.md | Rules a conformant processor must enforce beyond schema validation |
AODM-1.2-HTML-PROFILE.md | The HTML Embedding Profile — marking up web pages with data-aodm attributes |
example-core-1.2.xml / .json | Worked examples using every feature |
conformance-check.py | Test suite verifying the schemas accept valid and reject invalid documents |
reference/aodm-validator-1.2.jsreference/aodm-html-extract.js | Reference validator and HTML-profile extractor (JavaScript) |
LICENSE, NOTICE | Apache License 2.0 |
legacy/ | The published v1.1 files, kept for reference with six defects corrected. legacy/README.md explains why they are superseded |
Getting started
For standalone AODM documents (XML or JSON files):
- Declare the namespace:
xmlns:aodm="http://nesaraq.com/aodm/1.2", or use the JSON form with"aodm_version": "1.2". - Add elements — see the documentation for each one.
- Validate against
aodm-core-1.2.xsdoraodm-core-1.2.schema.json, then applyVALIDATION-RULES.md.
For marking up web pages, use the HTML Embedding Profile instead:
- Add
data-aodmattributes to the elements that display the content — seeAODM-1.2-HTML-PROFILE.md. - Check your work with the online validator, which can extract embedded AODM straight from a page.
- Questions? Email support@nesaraq.com.
Important for anyone using v1.1 markup on a live site. The v1.1
profile embedded data using xmlns:aodm and elements such as
<aodm:data-block>. That approach cannot work on a page served as
text/html: HTML5 has no XML namespaces, so the declaration is
discarded and no namespace-aware tool can find the elements. As a result
aodm-validator.js reports “all tags are valid” on
any web page — because it inspected nothing, not because the markup is
correct.
For that reason that validator is no longer distributed. If you
have a copy deployed on your site, remove it: it cannot tell you anything true
about a web page. Use the HTML Embedding Profile in this package instead, and the
online validator to check your work. The remaining v1.1
files are included under legacy/, with six defects corrected —
including a schema that never parsed at all, because its indentation contained
non-breaking spaces.
License
AODM is released under the Apache License, Version 2.0. You are free to use, modify and distribute it, including commercially, and to build your own implementations of the specification.
Apache 2.0 was chosen deliberately over a simpler permissive licence: it includes
an express patent grant, which is what lets an enterprise legal team approve a
dependency on the format without a bespoke review. The full text ships as
LICENSE in the download, alongside NOTICE.
Copyright © 2026 NESARAQ.