Ce que le document dit de lui-même
Donner au fichier son titre, son auteur, son sujet, sa date, et au besoin des informations d'un vocabulaire à vous.
Résumé
Sur le dos d'un classeur, on écrit ce qu'il y a dedans : le titre, qui l'a préparé, de quoi il traite, de quand il date. Un document numérique fait de même, sauf que c'est le logiciel qui lit l'étiquette — et il dit aussi de quel programme le document est sorti : un logiciel de comptabilité, un tableur, un logiciel de dessin. Tout cela est là pour retrouver le fichier plus tard, pour le ranger, pour savoir ce qu'on tient sans l'ouvrir.
Techniquement
Écrit au premier niveau d'une requête, sous
"metadata"
metadata écrit le dictionnaire /Info du document et son paquet XMP /Metadata, et tient les deux d'accord : chaque champ est écrit dans les deux, les deux qu'une norme d'archivage tient l'un à l'autre. Seules les entrées de metadata.info n'atteignent que les entrées, aucune propriété du paquet ne leur répondant. Un vocabulaire propre au client s'ajoute par schemas, avec ses propriétés et leurs descriptions, ces dernières étant ce qui permet à un contrôleur d'accepter des noms dont la norme n'a jamais entendu parler. La clé de premier niveau information_dictionary retire le dictionnaire /Info et garde le seul paquet, ce que ISO 32000-2 permet et que rien en dessous de PDF 2.0 ne permet.
Schéma de la requête
-
metadata— objet, facultatif, absent par défaut. -
metadata.title— chaîne, facultative. Le titre du document. -
metadata.author— chaîne, facultative. Qui l'a écrit. -
metadata.subject— chaîne, facultative. Ce qu'il est. -
metadata.keywords— chaîne, facultative. Les mots par lesquels on retrouve le document. -
metadata.creator— chaîne, facultative. Le logiciel dans lequel le document d'origine a été écrit. -
metadata.producer— chaîne, facultatif. Ce qui l'a créé. -
metadata.created— chaîne, facultative. La date, en ISO 8601, par exemple2026-08-08T10:00:00+02:00. -
metadata.modified— chaîne, facultative. La date de la dernière modification du document, sous les mêmes formes. Un document qui n'en déclare aucune a été modifié pour la dernière fois quand il a été fait. -
metadata.trapped— chaîne, facultative. Trois valeurs :yes,no,unknown. Dit si le document a été préparé pour l'étalement de l'encre en presse. Ne rien dire n'a pas le même sens que direno. -
metadata.schemas— tableau, facultatif, vide par défaut. Les vocabulaires propres au client. -
schemas[].name,schemas[].namespace,schemas[].prefix— chaînes, toutes obligatoires. Les préfixes que la bibliothèque se réserve sont refusés. -
schemas[].properties— tableau, obligatoire, vide refusé. -
properties[].name,properties[].value,properties[].description— chaînes, toutes obligatoires ; une description vide est refusée. -
properties[].value_type— chaîne, facultative,textpar défaut. Neuf valeurs :boolean,date,integer,mime_type,proper_name,real,text,uri,url. -
properties[].category— chaîne, facultative,internalpar défaut. Deux valeurs :internal,external.
Les propriétés sont écrites dans le paquet quoi qu'il arrive ; leur description l'est à côté d'elles quand le document déclare une norme qui demande à pouvoir les retrouver.
Archivage : un document qui déclare pdfa3b écrit ce qu'il dit de lui-même aux deux endroits, tandis qu'un document qui déclare pdfa4 n'écrit que le paquet — cette norme-là ne porte aucune entrée. Une requête qui nomme une entrée par metadata.info sous pdfa4 est refusée, l'entrée n'ayant nulle part où aller.
Une requête entière qui crée un PDF
{
"metadata": {
"schemas": [
{
"name": "Board papers",
"namespace": "https://example.test/ns/board/",
"prefix": "board",
"properties": [
{
"name": "Sitting",
"value": "2026-08-08",
"description": "The day the board sat",
"value_type": "date",
"category": "external"
}
]
}
],
"title": "Minutes of the board meeting",
"author": "Claire Vasseur",
"subject": "Board meeting of 8 August 2026",
"creator": "The board secretariat system",
"created": "2026-08-08T10:00:00+02:00"
},
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "text",
"rect": { "llx": 60, "lly": 740, "urx": 535, "ury": 768 },
"content": ["Minutes of the board meeting"],
"font": "sans",
"font_size": 18
}
]
}
Le document dans son ensemble
Les numéros que montre le logiciel de lecture Cent courriers dans un seul fichier Ce que le document dit de lui-même, dit une seule fois Les notes qu'un programme laisse pour lui-même Les notes qu'un programme laisse sur une page Les données qu'un programme accroche à un passage d'encre Un fichier encore lisible dans des dizaines d'années La norme d'impression que le document revendique Le mot de passe qui l'ouvre, et ce qu'on peut en faire Une facture qu'un humain et une machine lisent L'adresse contre laquelle les liens se lisent La version de PDF que le fichier déclare Ce qu'une image dit d'elle-même, et comment elle est lue Les pièces jointes du document, à côté de ses pages Les pièces jointes, présentées en portefeuille Les pièces jointes d'une page La fiche d'identité que contient une seule page La norme d'accessibilité que le document déclare Les normes contre lesquelles le document fini est mesuré
Où aller ensuite
Toutes les clés JSON d'une requête, en une page Les quarante et un autres réglages d'une requête