TDMAI Metadata
Preparing TDMAI Metadata for Declarations
This guide explains how to structure and prepare TDMAI (Text and Data Mining - Artificial Intelligence) metadata for use with the Liccium Declaration API according to the official TDMAI specification on https://tdmai.org.
Overview
TDMAI metadata enables content creators and rightsholders to make machine-readable declarations about how their digital content may or may not be used for automated processing, AI training, and related activities. When integrated with Liccium declarations, these preferences become cryptographically verifiable and globally discoverable through federated registries.
Core Concepts
Usage Categories
The TDMAI specification defines five distinct usage categories based on the IETF AI Preferences Vocabulary:
- all – Automated Processing (top-level category covering all automated analysis)
- train-ai – AI Training (general-purpose or task-specific AI model training)
- train-genai – Generative AI Training (training models to produce synthetic content)
- ai-use – AI Use/Inference (using content as input to trained AI models)
- search – Search (using content in search engines or discovery applications)
Hierarchical Structure
Categories follow a strict inheritance hierarchy:
train-ai
inherits fromall
train-genai
inherits fromtrain-ai
ai-use
andsearch
are independent categories
Permission Values
Each category uses simple boolean values:
true
- Usage is explicitly allowedfalse
- Usage is explicitly disallowed
JSON Structure
Required Fields
Every TDMAI declaration must include:
Code(json)
- iscc: ISCC fingerprint of the content (must be generated according to the ISCC standard, ISO 24138:2024)
Optional Top-Level Fields
Code(json)
- intent: Purpose of declaration ("activate", "update", or "supercede")
- summary: Human-readable explanation of usage rights
- policy: Legal context or regulatory framework reference
Preparing Your Metadata
Step 1: Generate ISCC
Before creating TDMAI metadata, ensure you have a valid ISCC fingerprint for your content.
Step 2: Define Usage Preferences
Choose your approach for your AI preferences strategy:
Option A: Complete Opt-Out
Disallow all automated processing:
Code(json)
Option B: Selective Permissions
Allow some uses while restricting gen-ai training:
Code(json)
Option C: Granular Control
Specify permissions for each category:
Code(json)
Step 3: Add Context (Optional)
Enhance your declaration with explanatory information:
Code(json)
Embedding in Liccium Declarations
Plugin Structure
TDMAI metadata is embedded as a plugin within the Liccium declaration metadata:
Code(json)
Validation Checklist
Before submitting your declaration:
- ISCC fingerprint is valid and matches your content
- Usage permissions align with your rights and intentions
- Hierarchical rules are respected (no conflicting permissions)
- Summary clearly explains your preferences
- Policy references are accurate and relevant
- JSON structure is valid and follows TDMAI specification
- Declaration is properly signed with valid credentials
Error Prevention
Common Mistakes to Avoid
- Conflicting Permissions: Don't set
all: "false"
andtrain-ai: "true"
together - Invalid ISCC: Ensure ISCC is properly formatted and corresponds to your content
- Missing Signatures: All declarations must be cryptographically signed
- Incomplete Hierarchy: Remember that opting out of parent categories affects children
Validation
Use the TDMAI JSON schema to validate your declarations before submission. The schema ensures structural correctness and logical consistency of your usage preferences.
Next Steps
- Generate ISCC fingerprints for your content
- Structure your TDMAI 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