TDMrep Plugin
Preparing TDMrep Metadata for Declarations
This guide explains how to structure and prepare TDMrep metadata for use with the Liccium Declaration API according to the W3C TDM Reservation Protocol specification.
The TDM·AI registry aggregates AI preference signals across vocabularies. Declarations using the TDMrep vocabulary are published there alongside signals expressed through other supported formats.
Overview
TDMrep metadata enables content creators and rightsholders to make machine-readable declarations reserving their rights with respect to text and data mining (TDM) – including AI training. When integrated with Liccium declarations, these reservations become cryptographically verifiable and globally discoverable through federated registries, bound to content-derived ISCC fingerprints rather than domains or embedded file metadata.
Core Concepts
The TDMrep Vocabulary
The W3C TDMRep Community Group defines two vocabulary terms under https://www.w3.org/ns/tdmrep#:
- tdm-reservation – a boolean indicating whether TDM rights are reserved (
1) or not reserved (0) for the content. - tdm-policy – an optional URI pointing to a TDM Policy document (human-readable or machine-readable) that specifies the conditions under which content may be used for TDM purposes. Only meaningful when
tdm-reservationis1.
Why Registry-Based?
The TDMrep specification was originally designed for domain-based or asset-embedded signaling. Liccium extends this model to registry-based declarations: TDMrep terms are bound to ISCC fingerprints and published to federated registries. This means rights reservations remain accessible even when content is redistributed, metadata is stripped, or the original hosting location changes.
JSON Structure
Required Fields
Every TDMrep declaration must include a valid ISCC fingerprint:
Code
- iscc: ISCC fingerprint of the content, generated according to ISO 24138:2024.
Preparing Your Metadata
Step 1: Generate an ISCC
Before creating TDMrep metadata, generate a valid ISCC fingerprint for your content using any conformant ISCC generator.
Step 2: Define Your TDM Reservation
Option A: Reserve all TDM rights
No TDM or AI use is permitted without authorisation from the rightsholder:
Code
Option B: Reserve rights and link to a policy document
Reserve TDM rights and point to a document that specifies permitted uses or licensing terms:
Code
Option C: Explicitly declare no reservation
Signal that TDM use is permitted without contacting the rightsholder:
Code
Embedding in Liccium Declarations
TDMrep metadata is embedded as a plugin within the Liccium declaration metadata, alongside schema and context references for semantic validation:
Code
The $schema field links to the Liccium JSON Schema for validation. The @context field allows semantic web agents to interpret the declaration.
Validation Checklist
Before submitting your declaration:
- ISCC fingerprint is valid and matches your content
-
tdm-reservationvalue reflects your actual rights and intentions -
tdm-policyURL is accessible and resolves to a policy document (if provided) - JSON structure is valid and conforms to the Liccium schema
- Declaration is properly signed with valid credentials
Error Prevention
Common mistakes to avoid:
- Missing ISCC: Every declaration must include a valid ISCC fingerprint.
- Invalid policy URL: If
tdm-policyis provided, the URI must be a resolvable URL. - Omitting tdm-reservation: This field is required. A
tdm-policyalone is not sufficient. - Missing signature: All declarations must be cryptographically signed before submission.
Next Steps
- Generate ISCC fingerprints for your content
- Structure your TDMrep metadata according to this guide
- Integrate the metadata into your Liccium declaration
- Submit the signed declaration via the Declaration API
- Verify publication to federated registries