# TDMRep

The W3C text and data mining reservation, used mainly by publishers.

**[Access](/docs/access)** · checked once per host (item type `access`) · 4 checks that can fail it

It is the mechanism EU copyright law points at for reserving text and data mining rights, so for publishers it carries legal weight the others do not. A malformed `tdmrep.json` reserves nothing, which is the failure mode worth catching.

## Adoption

**Early production** (L2)

Several independent organisations run it in production, though it is still niche on the open web. Direction of travel: ▲ rising, as of 2026-07-28.

The strongest genuine opt-out adoption: the W3C adopters register lists 30+ STM publishers plus trade publishers, hosting platforms and French newspapers, driven by EU regulation.

| Adopter | Depth |
|---|---|
| Elsevier, Springer Nature, IEEE, Sage, Taylor & Francis, ACS and ~25 more | production |
| Hachette Livre, Mondadori, Penguin Random House Spain and Germany | production |
| Atypon, HighWire, Bookwire, Cairn.info, Edigita (platform opt-in) | production |
| Les Echos, Le Parisien, Ouest-France, Radio France, Sud Ouest | production |

All of the above are recorded in the same place: [github.com](https://github.com/w3c/tdm-reservation-protocol/blob/main/docs/adopters.md).

## What we check

Absence is never a finding: every check below runs only once `tdmRepPresent` is true, so a site that has not
adopted this is not assessed on it and appears in no report.

| Check | Kind | Raises | On whose authority |
|---|---|---|---|
| `tdmRepMalformedDocument` | high severity | conformance, usability | specification (W3C TDMRep CG-FINAL 2024-05-10) |
| `tdmRepInvalidReservation` | high severity | conformance, usability | specification (W3C TDMRep CG-FINAL 2024-05-10) |
| `tdmRepMissingLocation` | medium severity | conformance, usability | specification (W3C TDMRep CG-FINAL 2024-05-10) |
| `tdmRepInvalidPolicy` | medium severity | conformance, usability | specification (W3C TDMRep CG-FINAL 2024-05-10) |

## Examples

These are the fixtures the test suite runs through the real collector, not snippets written for a document.

- Correct: `test/e2e/test-pages/access/correct.tdmrep.json`
- Present but wrong: `test/e2e/test-pages/access/issues.tdmrep.json`

## Specifications

| Document | Revision | Kind |
|---|---|---|
| [W3C TDM Reservation Protocol](https://www.w3.org/community/reports/tdmrep/CG-FINAL-tdmrep-20240510/) | CG-FINAL 2024-05-10 | specification |

Last re-read against the published documents: 2026-08-12.

**On pinning it.** CG-FINAL 2024-05-10 supersedes the 2024-02-02 second version, which is the revision most secondary write-ups still cite. It also defines HTTP header and `<meta>` forms of the reservation that we do not yet score.
