Features

What AODM 1.2 provides today, element by element.

AODM 1.2 provides the nineteen features below.

Each is recorded against this release rather than against AODM in general — while the current release is 1.2, the features on this page are the features of 1.2 — so when 1.3 adds to the list, which features 1.2 had is still answerable.

1

Core ontology

Four knowledge primitives — entity, relationship, fact, rule — cover things, the links between them, assertions about them, and the conditional statements that connect assertions.

2

Provenance

<aodm:source> records where a statement came from, with a URI, a title, when you retrieved it, and separately when the source itself made the claim.

3

Confidence

<aodm:confidence> carries a value from 0.0 to 1.0, optionally tagged with the method that produced it, so uncertainty travels with the data instead of being lost at the boundary.

4

Structured measurement

<aodm:value> expresses a quantity as a number with a unit and an optional tolerance, or as a min/max range. Units follow UCUM codes. No regex-parsing magnitudes out of prose.

5

Temporal validity

valid-from and valid-to bound when an assertion holds. Superseded knowledge is excluded from current queries but retained for audit, never silently deleted.

6

Polarity

polarity="negative" states that something is known to be false, which is a different claim from having no information. Both the format and the rules keep the two apart.

7

Derivation tracking

derived-from records which rule and which facts produced an inferred statement, so you can answer “why is this believed?” and trace every conclusion that rests on a given source.

8

Content hashing

Self-describing digests (sha256:…) let the same fact arriving from two pipelines be recognised as one fact rather than ingested twice.

9

Dual serialisation

Every document can be written as XML or as JSON, with a field-for-field mapping between them. Both forms have a published, tested schema.

10

Documented validation rules

Referential integrity, cardinality, measurement, temporal and provenance rules that no schema language can express are specified separately, with two named conformance levels.

11

Online validator

Paste a document and check it against every rule in the specification, in the browser. Nothing is uploaded and nothing is stored.

12

Reference parsers

Open implementations in Python, JavaScript, Java and C#, each dependency-free. They read AODM, enforce every validation rule, and write it back out. Four independent implementations is also how the specification itself gets tested.

13

XBRL converter

Complete support for the XBRL 2.1 instance syntax, so financial filings become AODM without re-authoring anything — periods, units, dimensions, tuples, footnotes and stated accuracy all carried across.

14

Self-generated knowledge

origin="generated" marks a claim a system proposed rather than observed, and <aodm:evidence> quotes the passage that prompted it, with a locator. A proposal can be reviewed in seconds instead of re-reading the source.

15

Graph compiler

Compiles to Neo4j, RDF Turtle, GraphML and Graphviz. Facts, rules and sources become nodes — which is what makes “what rests on this source?” a single traversal rather than a full scan.

16

Inference engine

Forward chaining with confidence propagation, time-scoped evaluation, explanation and retraction. Evaluation semantics are specified, so two conformant engines reach the same conclusions.

17

LLM context builder

Renders a document into prompt-ready context that carries the trust signals with it, so a model can hedge accurately instead of stating everything with equal confidence.

18

HTML embedding profile

One data-aodm attribute annotates an existing page in place, with no runtime dependency and no effect on rendering. The online validator extracts it straight from a live page.

19

Citable by AI search

Generative engines repeat claims they can attribute. A fact carrying its source, confidence and validity window is one an engine can verify rather than paraphrase, and the markup adds no script and no render cost.

Every element and attribute above is defined in the documentation, with the full reference tables and a worked example for each.