LEX.TXT Protocol 001
Protocol 001
When Rights Signals Disagree
A worked account of technical priority, missing instructions and the legal questions left after parsing.
Cite as Manraj Singh Chandpuri, 'When Rights Signals Disagree' (LEX.TXT, 24 September 2026) <https://manrajchandpuri.com/lex/protocols/understanding-tdm-reservation-protocol>.
In this protocol
Abstract
I use a controlled example to examine how the TDM Reservation Protocol resolves conflicting values and why the selected value must remain distinguishable from a legal conclusion about permission. I argue that a useful resolver should preserve the competing declarations, their sources and the rule that selected between them, while treating an unreadable carrier as a failure of observation rather than a convenient zero. The resulting record can explain the technical decision without pretending to establish authority, reconcile every external policy or determine whether the applicable copyright exception protects the proposed use.
I want to know what happens when a publisher’s instructions disagree, because a system that reports only the winning value can make an inconsistent website appear more coherent than the evidence allows. The Text and Data Mining Reservation Protocol ("TDMRep"), developed through a World Wide Web Consortium ("W3C") Community Group, provides a useful starting point because its May 2024 report specifies how certain conflicts are processed, while remaining a Community Group report rather than a W3C Recommendation.
I use an invented article and deliberately conflicting declarations below, so that the example tests a processing rule without implying that these declarations appeared on aninews.in or any other audited website. The distinction matters because my research finding in NOTE 001 concerns an instruction the instrument could not read, whereas this example begins with instructions that are available and inconsistent.
The limited decision the protocol makes
TDMRep uses tdm-reservation to express whether text and data mining ("TDM") rights are reserved, with 1 recording a reservation and 0 recording its absence through this mechanism, while an optional tdm-policy points to proposed conditions. Its processing priority gives response headers priority over the well-known file and page metadata priority over those earlier channels, without treating a missing later property as an instruction to erase an earlier value.
Those rules give me a technical answer to a bounded question, which is what value the specified process selects from the declarations it actually receives. I still need a separate account of the proposed use, the relevant legal provision and the person responsible for the instruction before I can explain the selected value’s legal significance.
In motion · scroll or step through
How TDMRep chooses one value from three channels
Three places can declare a reservation for the same article. Watch the working value rise through them in the order the protocol prescribes, and see what the final value leaves out.
Step 1 of 7 · Three channels
One article, three places to declare a reservation
Under the TDM Reservation Protocol ("TDMRep"), a site can declare
tdm-reservationin a file at/.well-known/tdmrep.json, in the HTTP header of a response and in the Hypertext Markup Language ("HTML") metadata of a page. The value 1 records a reservation and 0 records its absence through this mechanism.Step 2 of 7 · The file
The well-known file supplies the first value
A matching rule in the well-known file declares 1 for
example.org/news/report, so the working value starts as a reservation.Step 3 of 7 · The header
The response header overrides it with 0
The response for the article carries
tdm-reservation: 0. Under the protocol’s processing priority the header takes precedence over the file, so the working value becomes 0.Step 4 of 7 · The page
The page metadata reinstates 1
The HTML metadata of the same article declares 1, and metadata takes precedence over the earlier channels, so the final working value is 1. The intermediate 0 stays in the ledger, because it is evidence of an inconsistent deployment that the publisher may want to correct.
Step 5 of 7 · Missing
A missing property does not erase an earlier value
If the page metadata had no
tdm-reservationproperty at all, the header’s 0 would remain the working value. A parser that treats every missing later property as zero is performing a different operation from the one the protocol describes.Step 6 of 7 · File order
Inside the file, the first matching rule wins
The well-known file can hold several rules, and under its matching instructions the first rule that matches supplies the value. Placing a broad rule before a narrow one, and then reversing them, can change the result even though the same declarations are present.
Step 7 of 7 · Outside
What the selected value leaves unanswered
A prose policy objecting to training may sit entirely outside the three channels, and a linked policy may be unreadable. The protocol’s order does not assign legal priority to the prose, and an unreadable policy leaves its conditions unknown rather than empty, so the record keeps both beside the selected value.
A page that changes the answer twice
Suppose an invented resource at example.org/news/report is covered by a reservation in the well-known file, while its Hypertext Transfer Protocol ("HTTP") response carries a contrary value and its Hypertext Markup Language ("HTML") metadata reinstates the reservation. I would retain the successive readings in the following form, with each row identifying where the value came from rather than attributing the final result to an undifferentiated website policy.
| Encountered source | Declared value | Working value after this step |
|---|---|---|
Matching rule in /.well-known/tdmrep.json | tdm-reservation is 1 | 1 |
| Header on the article response | tdm-reservation is 0 | 0 |
| Metadata in the same article body | tdm-reservation is 1 | 1 |
My conclusion from this fixture is that the processing order selects 1, while the intermediate zero remains relevant evidence of an inconsistent deployment. If the metadata property were absent instead, the previously encountered header value would remain the working result, so a parser that replaces every missing later property with zero would be performing a different operation from the one described here.
That difference gives the example a practical use for both a publisher and a collector, because the publisher can identify the channel that unexpectedly changes the result and the collector can demonstrate which rule its implementation followed. Neither participant needs to conceal the superseded declarations in order to explain the final value, and preserving them makes a later correction intelligible.
A file whose order changes the result
The report also assigns significance to the sequence of matching rules in the well-known file, which is why I would test an implementation with a broad rule placed before a narrower one and then reverse their order. Under its matching instructions, the first matching rule supplies the relevant priority, so borrowing a longest-path rule from another protocol can change the result even where the same declarations are present.
The legal interest lies in the explanation a collector can give for its interpretation, because an assertion that it honoured the publisher’s most specific instruction is incomplete unless the relevant mechanism defines specificity that way. A record containing the file bytes, the matched rule and the processing version would permit the disagreement to be reproduced, whereas retaining only the final word allowed or reserved would conceal its cause.
I would therefore test the resolver against a small set of disclosed fixtures before relying on its classifications in a study, recording the expected technical value and the reason for it. That is a recommendation about inspectability, rather than a claim that these fixtures implement every part of the protocol or determine the legal sufficiency of the resulting reservation.
A contrary policy outside the processing order
Now suppose the technical result is 0 while a separately encountered prose policy expressly objects to training, which presents a different problem from conflicting values within the specified channels. I cannot assume that the protocol’s internal order assigns a legal priority between every form of statement on the website, because the meaning, scope and authority of the external policy remain matters for the governing law.
My preferred record would retain both the technical result and the contrary statement, identify the unresolved conflict and leave any operational response visible as the collector’s choice. A blanket rule that the more restrictive statement always wins would be a proposed policy of my own, with consequences for publishers that intentionally distinguish uses, rather than something I could attribute to the processing order without support.
ESSAY 003 examines that allocation of interpretive responsibility in greater depth, while ESSAY 001 asks whether the person or service publishing a signal had the authority to express the rightsholder’s choice. Those questions can remain live even when there is no disagreement about what the parser selected.
An unreadable policy leaves a different gap
An unavailable linked policy does not tell me that its conditions were empty, and the report’s treatment of policy retrieval expressly preserves uncertainty about the conditions when the policy cannot be accessed or parsed. I would keep that failure beside the reservation value, because the question whether rights were reserved differs from the question whether the instrument could discover terms on which permission might be obtained.
The same discipline prevents me from turning a 403 at an instruction location into a silent declaration of zero, which was the central evidential difficulty in my aninews.in example. NOTE 002 develops a preservation record that allows the raw observation and later interpretations to coexist, so an improved resolver need not erase the result produced by the earlier version.
What the selected value leaves unanswered
Article 4(3) of the Directive on Copyright in the Digital Single Market gives an appropriately expressed reservation a role within a particular exception, while other conditions and other possible legal bases remain relevant to the use. For India, the possible application of section 52(1)(c) examined in ESSAY 002 requires its own statutory analysis rather than treating a European reservation mechanism as a complete account of Indian permission.
I therefore want a resolver to explain what it selected and why, while retaining the evidence that prevents its output from being mistaken for a universal licence or prohibition. The value of a processing rule is that it makes one decision reproducible, and the value of a good research record is that it shows where that decision ends.