THotPDF.ComplianceFindingsToJSON Méthode
Sérialise les constats partagés de validation et de réparation en JSON déterministe pour la CI, l’archivage d’audit et l’outillage de conformité externe
Déclaration
function ComplianceFindingsToJSON(
const Findings: THPDFComplianceFindings): AnsiString;
Unité
HPDFDoc
Modèle de constat
THPDFComplianceFinding contient les champs suivants
| Champ | Rôle |
|---|---|
Profile | Identifie cpfPDFUA2, cpfPDFA4 ou cpfPDFX6 |
Severity | Identifie les constats d’information, d’avertissement ou d’erreur via THPDFComplianceSeverity |
RuleID | Fournit l’identifiant de règle stable avec espace de noms |
Clause | Fournit la référence applicable de norme et de clause |
Path | Fournit l’emplacement logique dans le graphe d’objets |
ObjectNumber | Fournit le numéro d’objet indirect, ou une valeur négative quand il est inconnu |
PageIndex | Fournit l’index de page à partir de zéro, ou une valeur négative quand il est inconnu |
Message | Fournit un diagnostic lisible par un humain |
RepairStatus | Identifie la provenance de réparation — non tentée, appliquée, non résolue, annulée ou échouée — via THPDFComplianceRepairStatus |
RepairAction | Nomme la famille de réparation lorsqu’une réparation a été tentée |
RepairCount | Compte les opérations appliquées représentées par le constat |
Contrat JSON
L’identifiant du schéma racine est hotpdf.compliance.findings.v1, les constats conservent l’ordre d’entrée déterministe, et chaque objet utilise un ordre de champs stable
Les emplacements d’objet et de page inconnus sont sérialisés en null JSON, tandis que la première page reste la valeur numérique 0
Les chaînes sont échappées en JSON, les caractères de contrôle utilisent les échappements standard, et un tableau de constats vide produit un document valide avec un tableau findings vide
Exemple
var
Options: THPDFPDFA4ValidationOptions;
Findings: THPDFComplianceFindings;
JSON: AnsiString;
begin
Options := THPDFPDFA4ValidationOptions.Default;
PDF.ValidatePDFA4(Options, Findings);
JSON := PDF.ComplianceFindingsToJSON(Findings);
end;