Validation de schéma
Les structures de données TIDAS sont définies avec JSON Schema. Le point d'entrée de validation par lot supporté est tidas validate dans la CLI Rust unifiée. Il utilise les ressources de schéma JSON, XSD ILCD et de règles intégrées et vérifiées pour l'intégrité de la version 0.1.1 hors ligne, sans arborescence source externe ou environnement Python.
Valider un paquet JSON TIDAS
tidas validate ./tidas-package \
--input-format tidas-json \
--issues ./issues.jsonl \
--format json-
Le répertoire d'entrée positionnel contient les sous-répertoires de catégories TIDAS canoniques.
-
--issuesécrit de manière atomique le flux complet déterministe de problèmes JSONL. -
--format jsonmaintient stdout vers un rapport stable lisible par machine; les diagnostics et la progression utilisent stderr. -
--report <path>persiste de manière atomique le rapport complet.
Valider un paquet XML ILCD
tidas validate ./ilcd-package \
--input-format ilcd-xml \
--issues ./issues.jsonl \
--format jsonLe validateur utilise uniquement les ressources XSD intégrées et vérifiées pour l'intégrité dans le binaire et réutilise les contextes de validation hors ligne.
Inspecter les empreintes du validateur
Enregistrez le protocole de validation, le moteur et les empreintes de verrouillage de schéma avant une exécution CI reproductible ou par lot :
tidas validate --describe --format json
tidas version --format jsonLe protocole document-validation-batch.v1 valide exactement les documents manifestes et produit des événements de problèmes déterministes plus un hachage de preuve final :
tidas validate ./batch-root \
--protocol document-validation-batch.v1 \
--input-manifest ./document-validation-batch.v1.jsonl \
--events ./validation-events.jsonl \
--format jsonVue d'ensemble du contenu de validation
La validation TIDAS combine deux types de vérifications :
1. Validation de structure (Standard JSON Schema)
-
Vérification des champs manquants (requis)
-
Vérification de la correspondance des types de champs (chaîne, nombre, etc.)
-
Vérification des valeurs de champs par rapport aux définitions (format, enum, etc.)
-
Support de la résolution de références inter-modules ($ref)
2. Logique de paquet et de classification
Pour les structures de classification comme les flux, processus, sources :
-
Vérification de hiérarchie : Vérifier que la séquence
@levelest correcte -
Règles de code : Vérifier que les éléments enfants utilisent les codes des éléments parents comme préfixe
-
Correspondance d'industrie de classification de processus : Vérifier que les codes d'industrie respectent la logique de mappage des normes nationales
-
Vérifications de référence et de paquet : Appliquer les contraintes inter-modules et de paquet à partir des ressources verrouillées
Sortie des résultats de validation
Le rapport normal contient des comptes de problèmes bornés et le hachage du flux de problèmes; --issues conserve chaque problème. Les problèmes de document représentent un scan complet, tandis que le rapport et le statut de sortie distinguent les problèmes de données des échecs de protocole ou d'exécution. L'automatisation devrait analyser le rapport stable --format json au lieu de faire correspondre du texte lisible par l'homme.
Pour les champs et modules JSON Schema, voir Structure de données (JSON Schema). Pour l'installation, le support de plateforme et la migration des commandes héritées, voir la CLI TIDAS unifiée.