A claim,
and its proof.
Every fact about a product is written the same way: a claim (what is said) and its evidence level (how well it is proven). A system reading a record learns not just what a product is, but how much to trust each thing said about it.
That is the whole of it. The structure is required; the evidence is not — a record where every claim sits at E0 is still complete and valid. It is simply honest about being unproven.
{
"@context": "https://ucdm.bar/context/v1",
"type": "Product",
"id": "https://id.gs1.org/01/09506000123456",
"name": "Beeswax Candle, Lavender",
"claims": [
{ "name": "material", "value": "100% beeswax",
"evidence": { "level": "E0" } },
{ "name": "burn_time", "value": 40, "unit": "hour",
"evidence": { "level": "E1",
"document": "https://example.com/spec.pdf" } }
]
}A four-dollar candle. One claim is the seller’s word (E0). One has a document behind it (E1). Both stated plainly, each with its level of proof shown. Most products in the world look exactly like this — and that is the point.
Four levels of proof.
Set by the proof, not the seller.
Every claim carries exactly one evidence level. You cannot reach a higher level by asserting it — the proof you can attach is what sets it. A self-asserted “E2” has no verifier to resolve; a forged “E3” does not validate.
The seller states it. No outside proof — accepted, and labeled as the seller’s word.
A supporting document is attached — a spec sheet, a lab report. Its contents are not independently checked.
An independent party — a lab, an auditor, an inspector — has checked the claim, identified by a resolvable identity.
A signed W3C Verifiable Credential anyone can verify — and that fails verification if it was altered, expired, revoked, or is about a different product.
{
"name": "rated_capacity",
"value": 5.0, "unit": "kilowatt_hour",
"evidence": {
"level": "E2",
"verifier": "did:web:lab.example",
"method": "Annex IV"
}
}Nine parts.
One small, honest core.
A record is built from a small set of parts. The first three are the substance; the rest describe the people, the connections, the rules, how a record is shared, and how it remembers what changed.
The thing being described, as a concept — a "Merino Wool Crewneck" before a size is chosen. The anchor of the record, with a stable id.
A specific, purchasable version with its own SKU. Price and stock belong to a variant, not to the Product.
Every fact about a product — a name, a value, a unit when measured, and an evidence level. Claims that change record their latest observed time.
The proof behind a claim and its level (E0–E3). The spine of the standard — the reason a UCDM record is worth more than the same facts written anywhere else.
A person or organization responsible for the product — manufacturer, importer, distributor, or the verifier who checked a claim. Carries a resolvable identity.
A typed connection to another product — an accessory, a replacement part, a bundle, the parent of a variant.
A policy (returns, warranty, shipping, end-of-life) or a constraint (an explicit limit on where it may be sold, who may buy it, or how it may be used).
The one record rendered for a particular reader — a person, an AI agent, a search engine, a regulator. The substance never changes; only the shape does.
An optional append-only list of changes, so nothing is altered silently. Each entry records what changed, when, the value before and after, and who is responsible.
Bring any catalog in.
Render it for every reader.
Adapters bring data in; Projections render it out. One record, written once, with a different face for whoever is asking — and never a claim it does not contain.
An adapter maps an existing source — a Shopify export, a WooCommerce catalog, a marketplace feed — into a UCDM record. Every imported claim is assigned an evidence level.
A Projection can hide, reshape, or translate — it can never invent, and never quietly upgrade a claim’s proof.
Why not just extend Schema.org?
Schema.org describes what a product is — and UCDM uses it: a record projects to Schema.org for search. But Schema.org has no concept of how well any of it is proven. A Schema.org Product can state “40% recycled”; it cannot say whether that is the seller’s word, a lab’s finding, or a signed certificate — and it was never meant to.
That missing layer — graded, verifiable evidence on every claim — is why UCDM exists. It is not a competing vocabulary; it is the trust layer that sits above the vocabularies, adding the one thing they leave out: proof.
Built on standards.
Designed to integrate.
UCDM extends and integrates existing standards — it does not replace them. Each alignment below is a technical fact you can verify, not a relationship.
Integration philosophy: UCDM extends and integrates these standards; it does not replace them, and it does not claim their endorsement. It is the trust layer above the vocabularies — adding the one thing they leave out: proof.
One record, written for every reader.
The same truth serves an AI agent deciding what to buy, a merchant importing a catalog, a developer building an integration, and a regulator checking a passport — each reading what they need, with every claim’s level of proof intact.
The LLM Card gives an agent a compact, disambiguated record where every claim carries its evidence level — so it spends real money on a fact, not a guess.
Import your catalog exactly as it is. Every claim starts at E0 — honestly unproven — and earns higher evidence over time. Adoption costs nothing to begin.
One JSON-LD record, valid against an open context, that projects to Schema.org, an LLM Card, or a DPP. Build once; render for every reader.
A record projects to a DPP-ready document for the EU Digital Product Passport, with E3 claims expressed as W3C Verifiable Credentials anyone can check.
An open standard, openly stewarded.
UCDM is authored by Aaron Grego and stewarded by TrustLayer Foundation A.C. The specification text and its conformance criteria are public and license-free, so no implementer holds privileged status — conformance is determined by the spec, not by any vendor.