Validation checks
The Pdftools SDK performs multiple lexical, syntactic, and semantic checks when validating a PDF document according to an ISO standard or a corporate directive.
The table shows details of the validation checks performed according to the specification and conformance level.
| PDF/A-1 | PDF/A-2 & PDF/A-3 | Level U | Level A | ||
|---|---|---|---|---|---|
| Lexical checks | |||||
| Structure of tokens such as keywords, names, numbers, and strings | x | x | x | x | x |
| Structure of the cross-reference table | x | x | x | x | x |
| File positions in the trailer dictionary and cross reference table | x | x | x | x | x |
| Whether a referenced object has the correct object and generation number | x | x | x | x | x |
| Length attribute of stream objects | x | x | x | x | x |
| No header offset | x | x | x | x | |
| Contains a binary marker | x | x | x | x | |
| Syntactic checks | |||||
| Structure of dictionaries, arrays, indirect objects, and streams | x | x | x | x | x |
| Compression errors such as CCITT, JPEG, and Flate | x | x | x | x | x |
| Errors in embedded font programs | x | x | x | x | x |
| Errors in ICC color profiles | x | x | x | x | x |
| Semantic checks | |||||
| Required entries in dictionaries, such as width entry in an image dictionary | x | x | x | x | x |
| Inherited attributes | x | x | x | x | x |
| Value of the parent entries in dictionaries, such as page objects | x | x | x | x | x |
| Type of the dictionary entry’s value, such as integer, string, or name | x | x | x | x | x |
| Whether the object must be indirect or direct (for example, a page object must be an indirect object) | x | x | x | x | x |
| Order of operators in content streams | x | x | x | x | x |
| Number of operands of the operators | x | x | x | x | x |
| Type of operands of the operators | x | x | x | x | x |
| Value ranges of the operands | x | x | x | x | x |
| Unknown referenced resources | x | x | x | x | x |
| Operand stack overflow and underflow | x | x | x | x | x |
| Inconsistent information, such as an image having both a stencil mask and soft mask | x | x | x | x | x |
| Conformance to implementation limits defined by the PDF Reference | x | x | x | x | x |
| No unrendered XFA forms | x | x | x | x | x |
| Contains a unique file identifier | x | x | x | x | |
| Contains document metadata | x | x | x | x | |
| Contains embedded font programs where needed | x | x | x | x | |
| Contains character to glyph mapping (encoding) information for the fonts | x | x | x | x | |
| Contains an output intent if needed | x | x | x | x | |
| No encryption | x | x | x | x | |
| No LZW and non-standard filters | x | x | x | x | |
| No JavaScript | x | x | x | x | |
| No unallowed annotations | x | x | x | x | |
| No unallowed actions | x | x | x | x | |
| No form fields that are generated on the fly | x | x | x | x | |
| No embedded PostScript code | x | x | x | x | |
| No invisible, hidden or non-printable annotations | x | x | x | x | |
| No device-specific color spaces | x | x | x | x | |
| No unknown rendering intents | x | x | x | x | |
| No image interpolation | x | x | x | x | |
| No externally referenced information (external streams and reference XObjects) | x | x | x | x | |
| No Open Print Interface (OPI) information | x | x | x | x | |
| No alternate images | x | x | x | x | |
| No color transfer and half-toning functions | x | x | x | x | |
| No JPX | x | x | x | x | |
| No layers | x | x | x | x | |
| No transparency | x | x | x | x | |
| No embedded files | x | x | x | x | |
| No XRef streams | x | x | x | x | |
| Conformity of metadata | x | x | x | x | |
| PDF/A conformance of embedded files | x | x | x | ||
| Consistency of spot colors | x | x | x | ||
| Contains Unicode information of fonts where needed | x | x | |||
| Contains logical structure information (tagging) | x | ||||
| Contains alternate descriptions of content (replacement text) where needed | x |