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
Counted from the GitHub API on 30 August 2026, over repositories owned by other people. Our own projects are excluded, and so is anything we were paid to write.
GBIF
the Global Biodiversity Information Facility
Fixed upstreamBoth endpoints serving the ZooBank checklist returned 404 and five consecutive crawls had failed since 21 July, with nothing on the dataset page to say so. The registrar rebuilt the archive the day after the issue was filed. It now publishes 527,127 rows against the 478,746 names GBIF is still serving from March 2025, so 48,381 names are waiting on the next crawl.
Catalogue of Life
ChecklistBank, the infrastructure behind the annual checklist
OpenImports from the ZooBank source have been failing for three years, and the source page carries no staleness signal, so a reader has no way to tell that the copy is old. The rebuilt archive holds 127,801 more names than the copy ChecklistBank serves.
Defra Digital Waste Tracking
the receipt API for the mandatory waste tracking service
OpenSix worked examples in the published specification are rejected by the specification’s own schema. One of them drops the leading zero from a European Waste Catalogue code, which teaches an integrator to submit a code that is invalid and looks correct. Five reference vocabularies are bound only in prose, and nine cross-field rules appear nowhere in the schema.
HDR UK
the Gateway schemas for UK health dataset metadata
OpenThe DOI pattern leaves the dot unescaped in three schema versions, so 10X1234/abcd validates as a DOI. The linkage identifier slots are typed as free text, and all 59 live values are prose rather than identifiers. The daily dataset extract also stopped in June 2025 and serves 898 records against 1,707 on the live Gateway.
openFDA
the US Food and Drug Administration public drug data service
OpenThe product National Drug Code appears under more than one Structured Product Label for 1,904 products, and in 1,151 of those the duplicate documents carry the same finished-product flag, so the code does not identify a single product.
Avoindata.fi
the Finnish national open data portal
OpenThe DCAT export publishes each dataset theme as a local group identifier instead of the EU data theme authority that DCAT-AP specifies, so an EU-level theme filter returns no Finnish datasets.
IATA ONE Record
the global data standard for air cargo
OpenNo 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.
EDM Council FIBO
the Financial Industry Business Ontology
OpenThe 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.
GLEIF
the Global Legal Entity Identifier Foundation
Invited by maintainersDraft 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.
W3C
the JSON-LD syntax specification
OpenSection 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.
US General Services Administration
DCAT-US, the metadata standard for US federal open data
OpenThe 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.
USDA National Agricultural Library
the NAL Agricultural Thesaurus
ReportedThe 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.
Team Digitale Italia
the Italian national semantic assets repository
OpenConcept-level SHACL rules for the territorial classification vocabularies, so the published controlled lists are checked at the concept and not only at the file.
OpenSanctions
the open database of sanctioned and politically exposed entities
OpenThe 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.
python-stdnum and ewc-onto
the identifier and waste-code libraries the rest of the stack depends on
OpenLEI 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.
ethereum-lists and DefiLlama
the registries most crypto tooling reads chain and token facts from
OpenChecked 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.
Semantica
a knowledge graph library with an RDF export path
Merged upstreamAudited 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.
TrustGraph
an open knowledge graph platform
OpenThe 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.
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 456 stars, 59 forks and an outside contributor base that has landed 20 merged pull requests, including native Windows support and the bi-temporal conformance corpus.
Counted from the GitHub API on 30 August 2026. The merged outside contributions include 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.
