THotPDF.ComplianceFindingsToJSON Method
Serializa descobertas compartilhadas de validação e reparo em JSON determinístico para CI, armazenamento de auditoria e ferramentas externas de conformidade
Declaração
function ComplianceFindingsToJSON(
const Findings: THPDFComplianceFindings): AnsiString;
Unidade
HPDFDoc
Modelo de descoberta
THPDFComplianceFinding contém os seguintes campos
| Campo | Finalidade |
|---|---|
Profile | Identifica cpfPDFUA2, cpfPDFA4 ou cpfPDFX6 |
Severity | Identifica descobertas informativas, de aviso ou de erro por meio de THPDFComplianceSeverity |
RuleID | Fornece o identificador de regra estável com namespace |
Clause | Fornece a referência aplicável de norma e cláusula |
Path | Fornece a localização lógica no grafo de objetos |
ObjectNumber | Fornece o número do objeto indireto ou um valor negativo quando desconhecido |
PageIndex | Fornece o índice de página baseado em zero ou um valor negativo quando desconhecido |
Message | Fornece um diagnóstico legível por humanos |
RepairStatus | Identifica a procedência do reparo não tentado, aplicado, não resolvido, revertido ou com falha por meio de THPDFComplianceRepairStatus |
RepairAction | Nomeia a família de reparo quando o reparo foi tentado |
RepairCount | Conta as operações aplicadas representadas pela descoberta |
Contrato JSON
O identificador do esquema raiz é hotpdf.compliance.findings.v1, as descobertas mantêm a ordem determinística de entrada e cada objeto usa uma ordem estável de campos
Localizações desconhecidas de objeto e página são serializadas como null em JSON, enquanto a primeira página permanece com o valor numérico 0
As strings são escapadas em JSON, os caracteres de controle usam escapes padrão e uma matriz de descobertas vazia produz um documento válido com uma matriz findings vazia
Exemplo
var
Options: THPDFPDFA4ValidationOptions;
Findings: THPDFComplianceFindings;
JSON: AnsiString;
begin
Options := THPDFPDFA4ValidationOptions.Default;
PDF.ValidatePDFA4(Options, Findings);
JSON := PDF.ComplianceFindingsToJSON(Findings);
end;