ID | Name | Description | Type | Rule |
1 | 6-1-10-t01 | The LZWDecode filter shall not be permitted | CosStream | filters == null || filters.indexOf("LZWDecode") == -1 |
2 | 6-1-10-t02 | The LZWDecode filter shall not be permitted | PDInlineImage | F == null || F.indexOf("LZW") == -1 |
3 | 6-1-11-t02 | A file's name dictionary, as defined in PDF Reference 3.6.3, shall not contain the EmbeddedFiles key | CosDocument | EmbeddedFiles_size == 0 |
4 | 6-1-12-t01 | Largest Integer value is 2,147,483,647. Smallest integer value is -2,147,483,648 | CosInteger | (intValue <= 2147483647) && (intValue >= -2147483648) |
5 | 6-1-12-t02 | Absolute real value must be less than or equal to 32767.0 | CosReal | (realValue >= -32767.0) && (realValue <= 32767.0) |
6 | 6-1-12-t03 | Maximum length of a string (in bytes) is 65535 | CosString | value.length() < 65536 |
7 | 6-1-12-t04 | Maximum length of a name (in bytes) is 127 | CosName | origLength <= 127 |
8 | 6-1-12-t05 | Maximum capacity of an array (in elements) is 8191 | CosArray | size <= 8191 |
9 | 6-1-12-t06 | Maximum capacity of a dictionary (in entries) is 4095 | CosDict | size <= 4095 |
10 | 6-1-12-t07 | Maximum number of indirect objects in a PDF file is 8,388,607 | CosDocument | nrIndirects <= 8388607 |
11 | 6-1-12-t08 | Maximum depth of graphics state nesting by q and Q operators is 28 | Op_q_gsave | nestingLevel <= 28 |
12 | 6-1-12-t09 | Maximum number of DeviceN components is 8 | PDDeviceN | nrComponents <= 8 |
13 | 6-1-12-t10 | Maximum value of a CID (character identifier) is 65,535 | CIDGlyph | CID <= 65535 |
14 | 6-1-13-t01 | The document catalog dictionary shall not contain a key with the name OCProperties | CosDocument | isOptionalContentPresent == false |
15 | 6-1-2-t01 | The % character of the file header shall occur at byte offset 0 of the file.
The first line of a PDF file is a header identifying the version of the PDF specification to which the file conforms | CosDocument | pdfHeaderCompliesPDFA |
16 | 6-1-2-t02 | The file header line shall be immediately followed by a comment consisting of a % character followed by at
least four characters, each of whose encoded byte values shall have a decimal value greater than 127 | CosDocument | binaryHeaderComplyPDFA |
17 | 6-1-3-t01 | The file trailer dictionary shall contain the ID keyword. The file trailer referred to is either the last trailer dictionary in a PDF file,
as described in PDF Reference 3.4.4 and 3.4.5, or the first page trailer in a linearized PDF file, as described in PDF Reference F.2 | CosDocument | (isLinearized == true && firstPageID != null) || ((isLinearized != true) && lastID != null) |
18 | 6-1-3-t02 | The keyword Encrypt shall not be used in the trailer dictionary | CosTrailer | isEncrypted != true |
19 | 6-1-3-t03 | No data shall follow the last end-of-file marker except a single optional end-of-line marker. | CosDocument | eofCompliesPDFA |
20 | 6-1-3-t04 | In a linearized PDF, if the ID keyword is present in both the first page trailer dictionary
and the last trailer dictionary, the value to both instances of the ID keyword shall be identical | CosDocument | (isLinearized != true)|| lastID == null || (firstPageID == lastID) |
21 | 6-1-4-t01 | In a cross reference subsection header the starting object number and the range shall be separated by a single SPACE character (20h) | CosXRef | xrefHeaderSpacingsComplyPDFA |
22 | 6-1-4-t02 | The xref keyword and the cross reference subsection header shall be separated by a single EOL marker | CosXRef | xrefEOLMarkersComplyPDFA |
23 | 6-1-6-t01 | Hexadecimal strings shall contain an even number of non-white-space characters | CosString | (isHex != true) || hexCount % 2 == 0 |
24 | 6-1-6-t02 | All non-white-space characters in hexadecimal strings shall be in the range 0 to 9, A to F or a to f | CosString | (isHex != true) || isHexSymbols |
25 | 6-1-7-t01 | The value of the Length key specified in the stream dictionary shall match the number of bytes in the file
following the LINE FEED character after the stream keyword and preceding the EOL marker before the endstream keyword | CosStream | isLengthCorrect |
26 | 6-1-7-t02 | The stream keyword shall be followed either by a CARRIAGE RETURN (0Dh) and LINE FEED (0Ah) character sequence
or by a single LINE FEED character. The endstream keyword shall be preceded by an EOL marker | CosStream | spacingCompliesPDFA |
27 | 6-1-7-t03 | A stream object dictionary shall not contain the F, FFilter, or FDecodeParms keys | CosStream | F == null && FFilter == null && FDecodeParms == null |
28 | 6-1-8-t01 | The object number and generation number shall be separated by a single white-space character. The generation number and obj keyword
shall be separated by a single white-space character. The object number and endobj keyword shall each be preceded by an EOL marker. The obj and endobj
keywords shall each be followed by an EOL marker. | CosIndirect | spacingCompliesPDFA |
29 | 6-2-10-t01 | A content stream shall not contain any operators not defined in PDF Reference
even if such operators are bracketed by the BX/EX compatibility operators | Op_Undefined | false |
30 | 6-2-2-t01 | A PDF/A-1 OutputIntent is an OutputIntent dictionary, as defined by PDF Reference 9.10.4, that is included in the file's OutputIntents
array and has GTS_PDFA1 as the value of its S key and a valid ICC profile stream as the value its DestOutputProfile key | ICCOutputProfile | (deviceClass == "prtr" || deviceClass == "mntr") && (colorSpace == "RGB " || colorSpace == "CMYK" || colorSpace == "GRAY") && version <= 2.3 |
31 | 6-2-2-t02 | If a file's OutputIntents array contains more than one entry, then all entries that contain a DestOutputProfile
key shall have as the value of that key the same indirect object, which shall be a valid ICC profile stream | PDOutputIntent | destOutputProfileRef == null || gOutputProfileRef == null || destOutputProfileRef == gOutputProfileRef |
32 | 6-2-3-t01 | All ICCBased colour spaces shall be embedded as ICC profile streams as described in PDF Reference 4.5 | ICCInputProfile | (deviceClass == "prtr" || deviceClass == "mntr" || deviceClass == "scnr" || deviceClass == "spac") &&
(colorSpace == "RGB " || colorSpace == "CMYK" || colorSpace == "GRAY" || colorSpace == "LAB ") && version <= 2.3 |
33 | 6-2-3-t02 | DeviceRGB may be used only if the file has a PDF/A-1 OutputIntent that uses an RGB colour space | PDDeviceRGB | gOutputCS != null && gOutputCS == "RGB " |
34 | 6-2-3-t03 | DeviceCMYK may be used only if the file has a PDF/A-1 OutputIntent that uses a CMYK colour space | PDDeviceCMYK | gOutputCS != null && gOutputCS == "CMYK" |
35 | 6-2-3-t04 | If an uncalibrated colour space is used in a file then that file shall contain a PDF/A-1 OutputIntent, as defined in 6.2.2 | PDDeviceGray | gOutputCS != null |
36 | 6-2-3-t05 | The number of color components in the color space described by the ICC profile data must match the number of components actually in the ICC profile.
As of PDF 1.4, N must be 1, 3, or 4 | ICCProfile | N != null && ((N == 1 && colorSpace == "GRAY") || (N == 3 && (colorSpace == "RGB " || colorSpace == "LAB ")) || (N == 4 && colorSpace == "CMYK")) |
37 | 6-2-4-t01 | An Image dictionary shall not contain the Alternates key | PDXImage | Alternates_size == 0 |
38 | 6-2-4-t02 | An XObject dictionary (Image or Form) shall not contain the OPI key | PDXObject | OPI_size == 0 |
39 | 6-2-4-t03 | If an Image dictionary contains the Interpolate key, its value shall be false | PDXImage | Interpolate == false |
40 | 6-2-5-t01 | A form XObject dictionary shall not contain the Subtype2 key with a value of PS or the PS key | PDXForm | (Subtype2 == null || Subtype2 != "PS") && PS_size == 0 |
41 | 6-2-6-t01 | A conforming file shall not contain any reference XObjects | PDXForm | Ref_size == 0 |
42 | 6-2-7-t01 | A conforming file shall not contain any PostScript XObjects | PDXObject | Subtype != "PS" |
43 | 6-2-8-t01 | An ExtGState dictionary shall not contain the TR key | PDExtGState | TR == null |
44 | 6-2-8-t02 | An ExtGState dictionary shall not contain the TR2 key with a value other than Default | PDExtGState | TR2 == null || TR2 == "Default" |
45 | 6-2-9-t01 | Where a rendering intent is specified, its value shall be one of the four values defined in PDF Reference
RelativeColorimetric, AbsoluteColorimetric, Perceptual or Saturation | CosRenderingIntent | value == "RelativeColorimetric" || value == "AbsoluteColorimetric" || value == "Perceptual" || value == "Saturation" |
46 | 6-3-2-t01 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
Type - name - (Required) The type of PDF object that this dictionary describes; must be Font for a font dictionary | PDFont | Type == "Font" |
47 | 6-3-2-t02 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
Subtype - name - (Required) The type of font; must be "Type1" for Type 1 fonts, "MMType1" for multiple master fonts, "TrueType" for TrueType fonts
"Type3" for Type 3 fonts, "Type0" for Type 0 fonts and "CIDFontType0" or "CIDFontType2" for CID fonts | PDFont | Subtype == "Type1" || Subtype == "MMType1" || Subtype == "TrueType" || Subtype == "Type3" || Subtype == "Type0"
|| Subtype == "CIDFontType0" || Subtype == "CIDFontType2" |
48 | 6-3-2-t03 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
BaseFont - name - (Required) The PostScript name of the font | PDFont | Subtype == "Type3" || BaseFont != null |
49 | 6-3-2-t04 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
FirstChar - integer - (Required except for the standard 14 fonts) The first character code defined in the font's Widths array | PDSimpleFont | isStandard == true || FirstChar != null |
50 | 6-3-2-t05 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
FirstChar - integer - (Required except for the standard 14 fonts) The first character code defined in the font's Widths array | PDSimpleFont | isStandard == true || LastChar != null |
51 | 6-3-2-t06 | All fonts used in a conforming file shall conform to the font specifications defined in PDF Reference 5.5.
Widths - array - (Required except for the standard 14 fonts; indirect reference preferred) An array of (LastChar − FirstChar + 1) widths | PDSimpleFont | isStandard == true || (Widths_size != null && Widths_size == LastChar - FirstChar + 1) |
52 | 6-3-3-t01 | For any given composite (Type 0) font referenced within a conforming file, the CIDSystemInfo entries of its
CIDFont and CMap dictionaries shall be compatible | PDType0Font | areRegistryOrderingCompatible == true |
53 | 6-3-3-t02 | For all Type 2 CIDFonts, the CIDFont dictionary shall contain a CIDToGIDMap entry that shall be a stream mapping
from CIDs to glyph indices or the name Identity, as described in PDF Reference Table 5.13 | PDCIDFont | Subtype != "CIDFontType2" || CIDToGIDMap != null |
54 | 6-3-3-t03 | All CMaps used within a conforming file, except Identity-H and Identity-V, shall be embedded in that file as described in PDF Reference 5.6.4 | PDCMap | CMapName == "Identity-H" || CMapName == "Identity-V" || embeddedFile_size == 1 |
55 | 6-3-4-t01 | The font programs for all fonts used within a conforming file shall be embedded within that file, as defined in PDF Reference 5.8,
except when the fonts are used exclusively with text rendering mode 3 | PDFont | Subtype == "Type3" || Subtype == "Type0" || fontFile_size == 1 |
56 | 6-3-5-t01 | Embedded font programs shall define all font glyphs referenced for rendering with a conforming file | Glyph | isGlyphPresent == true |
57 | 6-3-6-t01 | For every font embedded in a conforming file, the glyph width information stored in the Widths entry of the
font dictionary and in the embedded font program shall be consistent | Glyph | isWidthConsistent == true |
58 | 6-3-7-t01 | All non-symbolic TrueType fonts shall specify MacRomanEncoding or WinAnsiEncoding, either as the value of the Encoding entry in the font dictionary
or as the value of the BaseEncoding entry in the dictionary that is the value of the Encoding entry in the font dictionary.
If the value of the Encoding entry is a dictionary, it shall not contain a Differences entry. | PDTrueTypeFont | isSymbolic == true || (Encoding == "MacRomanEncoding" || Encoding == "WinAnsiEncoding") |
59 | 6-3-7-t02 | All symbolic TrueType fonts shall not specify an Encoding entry in the font dictionary | PDTrueTypeFont | isSymbolic == false || Encoding == null |
60 | 6-3-7-t03 | Font programs' "cmap" tables for all symbolic TrueType fonts shall contain exactly one encoding | TrueTypeFontProgram | isSymbolic == false || nrCmaps == 1 |
61 | 6-4-t01 | If an SMask key appears in an ExtGState dictionary, its value shall be None | PDExtGState | SMask == null || SMask == "None" |
62 | 6-4-t03 | A Group object with an S key with a value of Transparency shall not be included in a form XObject.
A Group object with an S key with a value of Transparency shall not be included in a page dictionary | PDGroup | S != "Transparency" |
63 | 6-4-t04 | The following keys, if present in an ExtGState object, shall have the values shown: BM - Normal or Compatible | PDExtGState | BM == null || BM == "Normal" || BM == "Compatible" |
64 | 6-4-t06 | The following keys, if present in an ExtGState object, shall have the values shown: CA - 1.0 | PDExtGState | ca == null || ca == 1.0 |
65 | 6-5-2-t01 | Annotation types not defined in PDF Reference shall not be permitted. Additionally, the FileAttachment,
Sound and Movie types shall not be permitted | PDAnnot | Subtype == "Text" || Subtype == "Link" || Subtype == "FreeText" || Subtype == "Line" ||
Subtype == "Square" || Subtype == "Circle" || Subtype == "Highlight" || Subtype == "Underline" ||
Subtype == "Squiggly" || Subtype == "StrikeOut" || Subtype == "Stamp" || Subtype == "Ink" ||
Subtype == "Popup" || Subtype == "Widget" || Subtype == "PrinterMark" || Subtype == "TrapNet" |
66 | 6-5-3-t01 | An annotation dictionary shall not contain the CA key with a value other than 1.0 | PDAnnot | CA == null || CA == 1.0 |
67 | 6-5-3-t02 | An annotation dictionary shall contain the F key. The F key’s Print flag bit shall be set to 1 and its Hidden,
Invisible and NoView flag bits shall be set to 0 | PDAnnot | F != null && (F & 4) == 1 && (F & 1) == 0 && (F & 2) == 0 && (F & 32) == 0 |
68 | 6-5-3-t03 | An annotation dictionary shall not contain the C array or the IC array unless the colour space of the
DestOutputProfile in the PDF/A-1 OutputIntent dictionary, defined in 6.2.2, is RGB | PDAnnot | (C_size == 0 && IC_size == 0) || gOutputCS == "RGB " |
69 | 6-5-3-t04 | If an annotation dictionary contains the AP key, the appearance dictionary that it defines as its value shall contain only the N key,
whose value shall be a stream defining the appearance of the annotation | PDAnnot | AP == null || ( AP == "N" && ( (FT != "Btn" && N_type == "Stream") || (FT == "Btn" && N_type == "Dict") ) ) |
70 | 6-6-1-t01 | The Launch, Sound, Movie, ResetForm, ImportData and JavaScript actions shall not be permitted.
Additionally, the deprecated set-state and no-op actions shall not be permitted. The Hide action shall not be permitted (Corrigendum 2) | PDAction | S == "GoTo" || S == "GoToR" || S == "Thread" || S == "URI" || S == "Named" || S == "SubmitForm" |
71 | 6-6-1-t02 | Named actions other than NextPage, PrevPage, FirstPage, and LastPage shall not be permitted | PDNamedAction | N == "NextPage" || N == "PrevPage" || N == "FirstPage" || N == "LastPage" |
72 | 6-6-1-t03 | Interactive form fields shall not perform actions of any type | PDAnnot | Subtype != "Widget" || A_size == 0 |
73 | 6-6-2-t01 | A Widget annotation dictionary shall not include an AA entry for an additional-actions dictionary | PDAnnot | Subtype != "Widget" || AA_size == 0 |
74 | 6-6-2-t02 | A Field dictionary shall not include an AA entry for an additional-actions dictionary | PDFormField | AA_size == 0 |
75 | 6-6-2-t03 | The document catalog dictionary shall not include an AA entry for an additional-actions dictionary | PDDocument | AA_size == 0 |
76 | 6-7-11-t01 | The PDF/A version and conformance level of a file shall be specified using the PDF/A Identification extension schema. | XMPMainPackage | ispdfaidNSPresent |
77 | 6-7-11-t02 | The PDF/A version and conformance level of a file shall be specified using the PDF/A Identification extension schema. | PDFAIdSchema | part == 1 |
78 | 6-7-11-t03 | The PDF/A version and conformance level of a file shall be specified using the PDF/A Identification extension schema. | PDFAIdSchema | conformance == "B" |
79 | 6-7-11-t04 | The property "corr" is not specified in PDF/A Identification Schema in PDF/A-1 specification. | PDFAIdSchema | corr == null |
80 | 6-7-11-t05 | The PDF/A Identification Schema has required prefix "pdfaid". | PDFAIdSchema | prefix == "pdfaid" |
81 | 6-7-2-t01 | The document catalog dictionary of a conforming file shall contain the Metadata key. | PDDocument | metadata_size == 1 |
82 | 6-7-2-t02 | Metadata object stream dictionaries shall not contain the Filter key. | PDMetadata | Filter == null |
83 | 6-7-3-t01 | If a document information dictionary does appear at a document, then all of its entries that have analogous properties in predefined XMP schemas, shall also be embedded in the file in XMP form with equivalent values. | CosDocument | doesInfoMatchXMP |
84 | 6-7-5-t01 | The bytes attribute shall not be used in the header of an XMP packet. | XMPPackage | bytes == null |
85 | 6-7-5-t02 | The encoding attribute shall not be used in the header of an XMP packet. | XMPPackage | encoding == null |
86 | 6-7-8-t01 | All extension schemas used in a conforming file shall have their descriptions embedded within that file in the metadata stream. | XMPCustomSchema | isDefinitionCorrect |
87 | 6-7-8-t02 | All extension schemas used in a conforming file shall have their descriptions embedded within that file in the metadata stream. | XMPCustomSchema | isDefinedInThisPackage |
88 | 6-7-8-t03 | The required PDF/A Extension Schema namespace prefix is pdfaExtension. | PDFAExtensionSchema | prefix == "pdfaExtension" |
89 | 6-7-8-t04 | A PDF/A Field Schema namespace prefix is required to be "pdfaField". | PDFAExtensionSchema | isPDFAFieldPrefixCorrect |
90 | 6-7-8-t05 | A PDF/A Property Schema namespace prefix is required to be "pdfaProperty". | PDFAExtensionSchema | isPDFAPropertyPrefixCorrect |
91 | 6-7-8-t06 | A PDF/A Schema Description Schema namespace prefix is required to be "pdfaSchema". | PDFAExtensionSchema | isPDFASchemaPrefixCorrect |
92 | 6-7-8-t07 | A PDF/A ValueType Schema namespace prefix is required to be "pdfaType". | PDFAExtensionSchema | isPDFATypePrefixCorrect |
93 | 6-7-9-t01 | The metadata stream shall conform to XMP Specification. | XMPPackage | isMetadataValid |
94 | 6-7-9-t02 | All predefined schemas shall conform to XMP specification. | XMPPredefinedSchema | unknownProperties == null |
95 | 6-7-9-t03 | All predefined schemas shall conform to XMP specification. | XMPPredefinedSchema | wrongValueTypeProperties == null |
96 | 6-9-t01 | The NeedAppearances flag of the interactive form dictionary shall either not be present or shall be false | PDAcroForm | NeedAppearances == null || NeedAppearances == false |
97 | 6-9-t02 | A Widget annotation dictionary or Field dictionary shall not contain the A or AA keys | PDAnnot | Subtype != "Widget" || (A_size == 0 && AA_size == 0) |
98 | 6-9-t03 | A Widget annotation dictionary or Field dictionary shall not contain the A or AA keys | PDFormField | AA_size == 0 |