1{"_id": "685ad21d1449e0fc48d7c4ad", "createdDate": "2025-06-24T16:28:13.178Z", "jobID": "eq-449863", "PDFresults": {"report": {"buildInformation": {"releaseDetails": [{"id": "core", "version": "1.28.1", "buildDate": 1745946180000}, {"id": "validation-model", "version": "1.28.1", "buildDate": 1745953500000}, {"id": "gui", "version": "1.28.1", "buildDate": 1748123640000}]}, "jobs": [{"itemDetails": {"name": "/home/pdf-worker/www/dist/scanners/CPHP-Service-Interest-Request-Form.pdf", "size": 366017}, "validationResult": [{"details": {"passedRules": 1712, "failedRules": 12, "passedChecks": 23698, "failedChecks": 149, "tags": ["annotation", "paragraph", "figure", "metadata", "alt-text", "syntax", "text", "list", "structure", "font"], "ruleSummaries": [{"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-Sect", "testNumber": 1, "status": "failed", "failedChecks": 3, "tags": ["structure"], "description": "StructTreeRoot shall not contain <Sect>", "object": "SESect", "test": "parentStandardType != 'StructTreeRoot'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[44](187 0 obj SESect Textbox)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[45](199 0 obj SESect Textbox)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[96](251 0 obj SESect Textbox)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-Document", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["structure"], "description": "StructTreeRoot shall contain exactly one <Document>", "object": "PDStructTreeRoot", "test": "kidsStandardTypes.split('&').filter(elem => elem == 'Document').length == 1", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)", "errorMessage": "StructTreeRoot either doesn't contain or contains more than one <Document>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.11.1", "testNumber": 2, "status": "failed", "failedChecks": 1, "tags": ["metadata"], "description": "The Catalog dictionary of a conforming file shall contain the Metadata key whose value is a metadata stream as defined in ISO 32000-2:2020, 14.3. The metadata stream dictionary shall contain entry Type with value /Metadata and entry Subtype with value /XML", "object": "PDDocument", "test": "containsMetadata == true", "checks": [{"status": "failed", "context": "root/document[0]", "errorMessage": "The document catalog dictionary doesn't contain metadata key or metadata stream dictionary does not contain either entry Type with value /Metadata or entry Subtype with value /XML", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-P", "testNumber": 1, "status": "failed", "failedChecks": 90, "tags": ["paragraph", "structure"], "description": "StructTreeRoot shall not contain <P>", "object": "SEP", "test": "parentStandardType != 'StructTreeRoot'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[0](66 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[1](69 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[2](70 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[3](71 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[4](72 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[5](73 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[6](74 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[7](75 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[8](76 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[9](77 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[10](78 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[11](79 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[12](80 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[13](81 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[14](82 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[15](83 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[16](84 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[18](102 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[19](103 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[20](104 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[22](126 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[23](127 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[25](151 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[26](152 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[27](153 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[29](171 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[30](172 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[31](173 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[32](174 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[33](175 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[34](177 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[35](178 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[36](179 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[37](180 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[38](181 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[39](182 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[40](183 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[41](184 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[42](185 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[43](186 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[46](200 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[47](202 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[48](203 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[49](204 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[50](205 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[51](206 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[52](207 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[53](208 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[54](209 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[55](210 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[56](211 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[57](212 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[58](213 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[59](214 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[60](215 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[61](216 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[62](217 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[63](218 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[64](219 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[65](220 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[66](221 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[67](222 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[68](223 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[69](224 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[70](225 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[71](226 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[72](227 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[73](228 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[74](229 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[75](230 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[76](231 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[77](232 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[78](233 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[79](234 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[80](235 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[81](236 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[82](237 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[83](238 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[84](239 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[85](240 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[86](241 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[87](242 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[88](243 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[89](244 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[90](245 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[91](246 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[92](247 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[93](248 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[94](249 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[95](250 0 obj SEP P)", "errorMessage": "StructTreeRoot contains <P>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-Part", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["structure"], "description": "StructTreeRoot shall not contain <Part>", "object": "SEPart", "test": "parentStandardType != 'StructTreeRoot'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)", "errorMessage": "StructTreeRoot contains <Part>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-L", "testNumber": 1, "status": "failed", "failedChecks": 4, "tags": ["list", "structure"], "description": "StructTreeRoot shall not contain <L>", "object": "SEL", "test": "parentStandardType != 'StructTreeRoot'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[17](85 0 obj SEL L)", "errorMessage": "StructTreeRoot contains <L>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[21](105 0 obj SEL L)", "errorMessage": "StructTreeRoot contains <L>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[24](128 0 obj SEL L)", "errorMessage": "StructTreeRoot contains <L>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[28](154 0 obj SEL L)", "errorMessage": "StructTreeRoot contains <L>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.2", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["structure"], "description": "The structure tree root shall contain a single Document structure element as its only child, as specified in ISO 32000-2:2020, Annex L and ISO/TS 32005", "object": "PDStructTreeRoot", "test": "kidsStandardTypes == 'Document'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)", "errorMessage": "The structure tree root contains P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,L,P,P,P,L,P,P,L,P,P,P,L,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,Sect,Sect,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,Sect element(s) instead of a single Document structure element", "errorArguments": ["P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,L,P,P,P,L,P,P,L,P,P,P,L,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,Sect,Sect,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,P,Sect"]}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.4.3", "testNumber": 1, "status": "failed", "failedChecks": 38, "tags": ["alt-text", "text"], "description": "In all cases, where real content maps to Unicode PUA values, an ActualText or Alt entry shall be present", "object": "Glyph", "test": "isRealContent == false || unicodePUA == false || actualTextPresent == true || altPresent == true", "checks": [{"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[467]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 13 0 557197074 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[590]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 780843029 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[621]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1739555643 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[662]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 220165304 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[683]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1094272405 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[716]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 973604791 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[737]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 564526486 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[759]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1466558382 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[792]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1551303995 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[844]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1418315639 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[922]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 913746983 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[943]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1660451908 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[972]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1224064486 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[993]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1381857776 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1014]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1363800072 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1039]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1886567481 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1064]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 361571676 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1089]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 749100260 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1114]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 846274760 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1188]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 889422145 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1219]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 248483913 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1272]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1731137986 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1332]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 695248316 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1391]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 5255258 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1412]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1928312257 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1473]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1834031967 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1532]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1092619788 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1557]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1089680530 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1596]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1337835760 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1617]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 718512571 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1705]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 616443292 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1738]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1540832538 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1771]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 183259297 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1792]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 626393072 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1826]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1892869131 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1847]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 302987494 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1888]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 2047744862 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[1925]/usedGlyphs[0](ABCDEE+Wingdings 2 ABCDEE+Wingdings 2 133 0 1882116496 0 true)", "errorMessage": "Real content maps to Unicode PUA values, but ActualText and Alt entry are not present", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.4.5.5.1", "testNumber": 1, "status": "failed", "failedChecks": 5, "tags": ["font"], "description": "The font programs for all fonts used for rendering within a conforming file shall be embedded within that file, as defined in ISO 32000-2:2020, 9.9", "object": "PDFont", "test": "Subtype == \"Type3\" || Subtype == \"Type0\" || renderingMode == 3 || containsFontFile == true", "checks": [{"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[7]/font[0](Times New Roman)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[144]/font[0](Arial,Bold)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[595]/font[0](Arial)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](4 0 obj PDSemanticContentStream)/operators[752]/font[0](Arial,Italic)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[2](40 0 obj PDPage)/contentStream[0](41 0 obj PDSemanticContentStream)/operators[614]/font[0](Times New Roman,Bold)", "errorMessage": "The font program is not embedded", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.20", "testNumber": 1, "status": "failed", "failedChecks": 3, "tags": ["annotation", "structure"], "description": "A link annotation and its associated content shall be enclosed in either a Link or Reference structure element", "object": "PDLinkAnnot", "test": "structParentStandardType == 'Link' || structParentStandardType == 'Reference'", "checks": [{"status": "failed", "context": "root/document[0]/pages[0](3 0 obj PDPage)/annots[0](8 0 obj PDLinkAnnot)", "errorMessage": "A Link annotation is an Artifact or is nested within null tag (standard type = null) instead of Link or Reference", "errorArguments": [null, null]}, {"status": "failed", "context": "root/document[0]/pages[1](37 0 obj PDPage)/annots[0](39 0 obj PDLinkAnnot)", "errorMessage": "A Link annotation is an Artifact or is nested within null tag (standard type = null) instead of Link or Reference", "errorArguments": [null, null]}, {"status": "failed", "context": "root/document[0]/pages[2](40 0 obj PDPage)/annots[0](42 0 obj PDLinkAnnot)", "errorMessage": "A Link annotation is an Artifact or is nested within null tag (standard type = null) instead of Link or Reference", "errorArguments": [null, null]}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.28.2", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["figure", "alt-text", "structure"], "description": "A Figure structure element shall have at least one of the following properties: a) an alternate description (Alt property), as specified in ISO 32000-2:2020, 14.9.3; b) a replacement text (ActualText property) that represents the content enclosed by the Figure structure element", "object": "SEFigure", "test": "Alt != null || ActualText != null", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](62 0 obj PDStructTreeRoot)/K[0](65 0 obj SEPart Part)/K[44](187 0 obj SESect Textbox)/K[10](198 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.11.2", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["syntax"], "description": "The ViewerPreferences dictionary of the document catalog dictionary shall be present and shall contain at least the DisplayDocTitle key with a value of true, as described in ISO 32000-2:2020, Table 147", "object": "CosDocument", "test": "DisplayDocTitle == true", "checks": [{"status": "failed", "context": "root", "errorMessage": "ViewerPreferences dictionary is not present in the document Catalog, or DisplayDocTitle key is set to false or is not present in the ViewerPreferences dictionary (ViewerPreferences = null, DisplayDocTitle = null)", "errorArguments": [null, null]}]}]}, "jobEndStatus": "normal", "profileName": "PDF/UA-2 + Tagged PDF validation profile", "statement": "PDF file is not compliant with Validation Profile requirements.", "compliant": false}], "processingTime": {"start": 1750782489916, "finish": 1750782492964, "duration": "00:00:03.048", "difference": 3048}}], "batchSummary": {"duration": {"start": 1750782489726, "finish": 1750782493120, "duration": "00:00:03.394", "difference": 3394}, "totalJobs": 1, "outOfMemory": 0, "veraExceptions": 0, "failedEncryptedJobs": 0, "failedParsingJobs": 0, "validationSummary": {"nonCompliantPdfaCount": 1, "compliantPdfaCount": 0, "failedJobCount": 0, "totalJobCount": 1, "successfulJobCount": 1}, "featuresSummary": {"failedJobCount": 0, "totalJobCount": 0, "successfulJobCount": 0}, "repairSummary": {"failedJobCount": 0, "totalJobCount": 0, "successfulJobCount": 0}, "multiJob": false}}}}