Метод THotPDF.ComplianceFindingsToJSON

Сериализует общие замечания валидации и ремонта в детерминированный JSON для CI, аудитных хранилищ и внешних инструментов проверки соответствия

Объявление

function ComplianceFindingsToJSON(
  const Findings: THPDFComplianceFindings): AnsiString;

Модуль

HPDFDoc

Модель замечания

THPDFComplianceFinding содержит следующие поля

ПолеНазначение
ProfileИдентифицирует cpfPDFUA2, cpfPDFA4 или cpfPDFX6
SeverityЧерез THPDFComplianceSeverity различает информационные замечания, предупреждения и ошибки
RuleIDСодержит стабильный идентификатор правила с пространством имён
ClauseСодержит ссылку на применимый стандарт и пункт
PathСодержит логическое расположение в графе объектов
ObjectNumberСодержит номер indirect-объекта или отрицательное значение, если он неизвестен
PageIndexСодержит индекс страницы с нуля или отрицательное значение, если он неизвестен
MessageСодержит диагностику, удобочитаемую для человека
RepairStatusЧерез THPDFComplianceRepairStatus различает происхождение ремонта: не выполнялся, применён, не разрешён, откачен или завершился ошибкой
RepairActionНазывает семейство ремонта, если он предпринимался
RepairCountСчитает применённые операции, охваченные замечанием

Контракт JSON

Идентификатор корневой схемы — hotpdf.compliance.findings.v1, замечания сохраняют детерминированный порядок входа, а каждый объект использует стабильный порядок полей

Неизвестные расположения объекта и страницы сериализуются как JSON null, а первая страница остаётся числовым значением 0

Строки экранируются по правилам JSON, управляющие символы используют стандартные escape-последовательности, а пустой массив замечаний даёт корректный документ с пустым массивом findings

Пример

var
  Options: THPDFPDFA4ValidationOptions;
  Findings: THPDFComplianceFindings;
  JSON: AnsiString;
begin
  Options := THPDFPDFA4ValidationOptions.Default;
  PDF.ValidatePDFA4(Options, Findings);
  JSON := PDF.ComplianceFindingsToJSON(Findings);
end;

Связанные API