Skip to main content

The standards we file bugs against

Buying data work from us means buying the judgement that finds a defect in a published standard and the discipline to report it where the maintainer can act on it. This page is the record of that, kept in public and kept current.

Why there are no logos on this page

The usual way to display this work is a row of logos under a heading like "trusted by". We will not do that, for two reasons.

The first is that it would be untrue. We are not a member, partner or licensee of IATA, the W3C, GLEIF, the EDM Council, the General Services Administration or the Department of Agriculture. Their marks are restricted to exactly those relationships, and putting one on a supplier page asserts a relationship that does not exist. Federal agencies in particular do not endorse contractors, and cannot be shown as if they had.

The second is that a logo is weaker evidence than the thing it replaces. A logo asks you to take our word for it. Every row below is a dated public thread with a maintainer on the other end, and you can read the argument, the response and whether we were right.

The ledger

20
pull requests merged upstream
42
defects reported upstream
26
projects contributed to
24
organisations, none of them ours

Counted from the GitHub API on 25 August 2026, over repositories owned by other people. Our own projects are excluded, and so is anything we were paid to write.

  • IATA ONE Record

    the global data standard for air cargo

    Open

    No property in the 2023-12 or 2024-12 data model ontology declares a domain, so nothing in the published standard says which class a property belongs to. The domain information that survives sits in comments, and in 14.3 per cent of cases it contradicts the class axioms beside it.

    Issue 433Issue 435Our domain extension

  • EDM Council FIBO

    the Financial Industry Business Ontology

    Open

    The legal entity module cites ISO 17442:2012, which has been withdrawn, and the Legal Entity Identifier carries no syntactic constraint, so FIBO cannot tell a valid LEI from a malformed one.

    Issue 2237Issue 2238

  • GLEIF

    the Global Legal Entity Identifier Foundation

    Invited by maintainers

    Draft SHACL shapes for Level 1 LEI records, including the ISO 7064 MOD 97-10 check-digit test written as SHACL-SPARQL so a validator can reject a malformed identifier without any code. Contributed after the maintainers asked for the checks on their own open issue.

    Pull request 230Against issue 218ISO 17442 package

  • W3C

    the JSON-LD syntax specification

    Open

    Section 7.2 says escaped content stays escaped, while a major consumer applies one pass of unescaping. Filed with a conformance suite that reproduces the divergence rather than an opinion about it.

    Issue 498Conformance suite

  • US General Services Administration

    DCAT-US, the metadata standard for US federal open data

    Open

    The namespace IRI that every DCAT-US document points at resolves to a host that does not exist, and the status of the SHACL shapes in version 3 is undocumented, so a publisher cannot tell what they are being validated against.

    Issue 163Issue 164Our DCAT-US binding

  • USDA National Agricultural Library

    the NAL Agricultural Thesaurus

    Reported

    The SKOS labelling violations in the thesaurus are not spread across it. All 32 sit inside a single 887-concept subscheme and none in the other 75,800 concepts, which makes them one bad load rather than a thesaurus-wide fault. The published linked data has also not changed since July 2024.

    Semantic Asset Register

  • Team Digitale Italia

    the Italian national semantic assets repository

    Open

    Concept-level SHACL rules for the territorial classification vocabularies, so the published controlled lists are checked at the concept and not only at the file.

    Pull request 317Italy register ontology

  • OpenSanctions

    the open database of sanctioned and politically exposed entities

    Open

    The US Department of Defense Chinese military companies dataset was being read live from a Google Sheet. Moved into versioned CSV in the repository, so the source of a sanctions listing is auditable and cannot silently change.

    Pull request 5458

  • python-stdnum and ewc-onto

    the identifier and waste-code libraries the rest of the stack depends on

    Open

    LEI validation upper-cases the input before checking it, so a malformed lower-case identifier passes. Separately, three European Waste Catalogue classes carry their English label tagged as German, leaving those classes with no English label at all, including mixed municipal waste.

    python-stdnum 509ewc-onto 1

  • ethereum-lists and DefiLlama

    the registries most crypto tooling reads chain and token facts from

    Open

    Checked the published entries against the chains themselves. Five token entries name an address with no contract behind it, one of them an active account holding a balance, three publish the wrong decimals, and twenty listed RPC endpoints answer with a chain ID other than the one they are filed under.

    chains 8635tokens 1047tokens 1048DefiLlama 20663

  • Semantica

    a knowledge graph library with an RDF export path

    Merged upstream

    Audited and then repaired the whole export path: seventeen issues filed and ten pull requests merged, covering deterministic identifier minting, a declared vocabulary, JSON-LD payloads that a plain parser can actually read, typed literals, timezone-qualified timestamps, and SHACL shapes that had never once matched the data they were written to validate.

    Merged pull requests

  • TrustGraph

    an open knowledge graph platform

    Open

    The N-Quads importer stringifies terms, so datatype, language tag and the distinction between an IRI and a literal are lost on the way in, and the exporter omits the backslash from its bad-character set, so IRIs containing one are written out invalid.

    Issue 1094Issue 1095

What we maintain ourselves

Open Ontologies is a Rust server that exposes OWL and RDF taxonomies to language models as tools, with an OWL 2 DL reasoner, SHACL validation, SPARQL and versioning in a single binary. It has 442 stars, 56 forks and an outside contributor base that has landed 16 merged pull requests, including native Windows support and the bi-temporal conformance corpus.

Underneath the research programme sits a family of published register-integrity ontologies in OWL 2, SKOS and SHACL, covering banking, investment funds, insurance, securities, the scholarly record, learning standards, air cargo, space objects, biosurveillance and on-chain control. Ten are archived with Zenodo DOIs. They feed the Register Integrity Index, which scores 14 public registers on five measured dimensions.

Everything is published under an open licence, and the assessment code is written to be re-run by somebody who does not trust us.

What this means if you are buying

A supplier who has never filed an issue against the standard your programme depends on has never read it closely enough to find one. Every entry in the ledger above is unpaid, and was done because the defect was there. It is the most honest sample of our method available to you before you commission anything: the same checks, run against the same kind of artefact, with the reasoning visible.

The research write-ups sit under Research, and how to commission us is on How to Buy.