1{"_id": "685ad044c7195815bd412f7a", "createdDate": "2025-06-24T16:20:20.742Z", "jobID": "eq-449683", "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/BiophysicsCoreIntro.pdf", "size": 2125436}, "validationResult": [{"details": {"passedRules": 1715, "failedRules": 9, "passedChecks": 131212, "failedChecks": 238, "tags": ["figure", "metadata", "alt-text", "text", "structure", "table", "font"], "ruleSummaries": [{"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.26", "testNumber": 4, "status": "failed", "failedChecks": 2, "tags": ["structure", "table"], "description": "Tables shall be regular. Table rows shall have the same number of columns (taking into account column spans)", "object": "SETable", "test": "numberOfRowWithWrongColumnSpan == null || wrongColumnSpan == null", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[13](1711 0 obj SESect Sect)/K[1](1744 0 obj SETable Table)", "errorMessage": "Table rows 1 and 2 span different number of columns (24 and 1 respectively)", "errorArguments": ["2", "24", "1"]}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[13](1711 0 obj SESect Sect)/K[2](1922 0 obj SETable Table)", "errorMessage": "Table rows 1 and 2 span different number of columns (24 and 1 respectively)", "errorArguments": ["2", "24", "1"]}]}, {"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](193 0 obj PDStructTreeRoot)", "errorMessage": "The structure tree root contains Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect element(s) instead of a single Document structure element", "errorArguments": ["Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect,Sect"]}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.28.2", "testNumber": 1, "status": "failed", "failedChecks": 204, "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](193 0 obj PDStructTreeRoot)/K[0](197 0 obj SESect Sect)/K[0](198 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[0](197 0 obj SESect Sect)/K[4](211 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[0](213 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[4](222 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[5](223 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[6](224 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[7](225 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)/K[8](226 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[0](352 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[7](371 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[8](372 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[9](373 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[10](374 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[11](375 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[14](383 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[15](384 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[21](402 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[22](403 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[23](404 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)/K[25](408 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[0](410 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[1](412 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[5](448 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[6](455 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[8](459 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[10](463 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[12](465 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)/K[13](466 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)/K[0](468 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)/K[4](477 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)/K[5](482 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)/K[6](483 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)/K[7](484 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[5](485 0 obj SESect Sect)/K[0](486 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[5](485 0 obj SESect Sect)/K[2](491 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[5](485 0 obj SESect Sect)/K[23](570 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[0](579 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[1](581 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[5](635 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[6](636 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[7](637 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[8](638 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[16](669 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)/K[22](710 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)/K[0](720 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)/K[3](726 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)/K[4](749 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)/K[5](803 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)/K[6](832 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[0](834 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[3](844 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[4](867 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[6](907 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[7](945 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[8](950 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[9](955 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[10](960 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[11](961 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[12](966 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[13](967 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[14](972 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[15](977 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[16](982 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[17](987 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[18](992 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[19](997 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[20](1004 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[27](1029 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[28](1030 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[29](1031 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[30](1032 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[31](1033 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[35](1047 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[36](1048 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[37](1049 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[41](1067 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[42](1068 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[43](1069 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[44](1070 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[48](1084 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[49](1085 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)/K[50](1086 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[0](1104 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[3](1114 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[4](1115 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[5](1116 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[6](1117 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[7](1118 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[8](1119 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[10](1123 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[12](1128 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[14](1133 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[23](1160 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[24](1161 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[26](1166 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[33](1214 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[42](1239 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[43](1244 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[44](1249 0 obj SEFigure Figure)", "errorMessage": "Figure structure element neither has an alternate description nor a replacement text", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)/K[45](1254 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.4.3", "testNumber": 1, "status": "failed", "failedChecks": 1, "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[14](162 0 obj PDPage)/contentStream[0](163 0 obj PDSemanticContentStream)/operators[129]/xObject[0]/contentStream[0](167 0 obj PDSemanticContentStream)/operators[24]/usedGlyphs[0](SymbolMT SymbolMT 80 0 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": 6, "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[40]/font[0](Arial-BoldMT)", "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[54]/font[0](ArialMT)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[1](14 0 obj PDPage)/contentStream[0](15 0 obj PDSemanticContentStream)/operators[253]/font[0](Arial-ItalicMT)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[3](39 0 obj PDPage)/contentStream[0](40 0 obj PDSemanticContentStream)/operators[78]/font[0](Arial-BoldItalicMT)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[11](127 0 obj PDPage)/contentStream[0](128 0 obj PDSemanticContentStream)/operators[367]/xObject[0]/contentStream[0](129 0 obj PDSemanticContentStream)/operators[54]/font[0](ArialMT)", "errorMessage": "The font program is not embedded", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/pages[11](127 0 obj PDPage)/contentStream[0](128 0 obj PDSemanticContentStream)/operators[1233]/xObject[0]/contentStream[0](134 0 obj PDSemanticContentStream)/operators[24]/font[0](Arial-BoldMT)", "errorMessage": "The font program is not embedded", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "8.2.5.26", "testNumber": 3, "status": "failed", "failedChecks": 1, "tags": ["structure", "table"], "description": "Tables shall be regular. Table rows shall have the same number of columns (taking into account column spans)", "object": "SETable", "test": "numberOfRowWithWrongColumnSpan == null || wrongColumnSpan != null", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[11](1435 0 obj SESect Sect)/K[0](1436 0 obj SETable Table)", "errorMessage": "Table rows 1 and 2 span different number of columns", "errorArguments": ["2"]}]}, {"ruleStatus": "FAILED", "specification": "ISO 14289-2:2024", "clause": "5", "testNumber": 1, "status": "failed", "failedChecks": 1, "tags": ["metadata"], "description": "The PDF/UA version of a file shall be specified in the value of the Metadata entry in the document catalog using the PDF/UA identification schema", "object": "MainXMPPackage", "test": "containsPDFUAIdentification == true", "checks": [{"status": "failed", "context": "root/document[0]/metadata[0](2605 0 obj PDMetadata)/XMPPackage[0]", "errorMessage": "The document metadata stream doesn't contain PDF/UA Identification Schema", "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](193 0 obj PDStructTreeRoot)", "errorMessage": "StructTreeRoot either doesn't contain or contains more than one <Document>", "errorArguments": []}]}, {"ruleStatus": "FAILED", "specification": "ISO 32005:2023", "clause": "Table 5. StructTreeRoot-Sect", "testNumber": 1, "status": "failed", "failedChecks": 21, "tags": ["structure"], "description": "StructTreeRoot shall not contain <Sect>", "object": "SESect", "test": "parentStandardType != 'StructTreeRoot'", "checks": [{"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[0](197 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[1](212 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[2](351 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[3](409 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[4](467 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[5](485 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[6](578 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[7](719 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[8](833 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[9](1103 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[10](1305 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[11](1435 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[12](1636 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[13](1711 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[14](2141 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[15](2197 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[16](2254 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[17](2266 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[18](2278 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[19](2292 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}, {"status": "failed", "context": "root/document[0]/StructTreeRoot[0](193 0 obj PDStructTreeRoot)/K[20](2507 0 obj SESect Sect)", "errorMessage": "StructTreeRoot contains <Sect>", "errorArguments": []}]}]}, "jobEndStatus": "normal", "profileName": "PDF/UA-2 + Tagged PDF validation profile", "statement": "PDF file is not compliant with Validation Profile requirements.", "compliant": false}], "processingTime": {"start": 1750782014032, "finish": 1750782020536, "duration": "00:00:06.504", "difference": 6504}}], "batchSummary": {"duration": {"start": 1750782013781, "finish": 1750782020697, "duration": "00:00:06.916", "difference": 6916}, "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}}}}