Validation rules for regulatory transactions provided to Health Canada in the electronic Common Technical Document (eCTD) format
May 13, 2022
Our file number: 22-105656-591
Health Canada has updated the validation rules for regulatory transactions submitted in the electronic Common Technical Document (eCTD) format, to reflect recent and upcoming changes in our processes. These rules are built in accordance the information provided in the following documents:
- Guidance Document - Preparation of Drug Regulatory Activities in Electronic Common Technical Document (eCTD) Format;
- Creation of the Canadian Module 1 Backbone (eCTD) format - Guidance Document
- International Council for Harmonisation (ICH) Electronic Common Technical Document Specification (Version 3.2.2)
- Guidance Document: The Regulatory Enrolment Process (REP)
The purpose of the validation rules is to help ensure Sponsors provide a valid electronic transaction to Health Canada, and reduce errors and follow-up with Sponsors. Sponsors are encouraged to use a commercially available tool to validate their regulatory transactions in eCTD format, prior to filing them to Health Canada.
Health Canada validates each regulatory transaction as it is received. If the validation fails due to one or more errors detected, an eCTD Validation Report describing each error will be emailed to the sponsor as a.pdf file attachment.
Version of the eCTD validation rules: 5.1
Effective date: August 1, 2022
Should you have any questions regarding the content of this document, please email us at firstname.lastname@example.org.
|Date||Version||Summary of Changes|
|August 1, 2022||5.1||F14 - Revised to exclude image files from this check
F15 - Added new valid file extensions
G22 - Added new valid file extensions
G34 - Added new node extension R8 Product Lifecycle Management Information
|ID #||Rule Name||Rule Description||Severity|
|A - GENERAL|
|A01||Empty Folders||Checks the sequence folder structure for any empty folders (folders without any files or subfolders).||Error|
|A02||File and Folder Security||Checks the sequence folder structure for any files or folders the user does not have access permission to.||Error|
|A03a||File Size||This rule's implementation checks for files that exceed the configured maximum size. Warning for PDF files between 150 MB and 200 MB. Warning for other file types larger than 100 MB (excluding SAS XPT).||Warning|
|A03b||File Size||This rule's implementation checks for files that exceed the configured maximum size
(Max. size: 200 MB for PDF, 1 GB for SAS XPT).
|A05a||Sequence Folder Requirements||Checks the sequence folder name. Furthermore the rule will report a finding if the sequence seems to be the initial sequence for the application but its name is not 0000.||Error|
|A05b||Higher sequences found||Reports error if the validated sequence is not the highest in the application folder.||Error|
|A06a||XML Backbones Identification||Identifies all ICH and regional index files found in the sequence folder. Incorrect or invalid index files will be reported as errors.||Error|
|A06b||STF Identification||Identifies all STF files found in the sequence folder. Invalid STF files will be reported as errors. STF files with an incorrect name will be also reported as errors.||Error|
|A07||Sequence numbering||Each subsequent transaction provided in the lifecycle of a dossier, must have a sequence number that is consecutively incremented by 1 number (for example 0000, 0001, 0002, 0003, and so on).
Skipping numbers is not acceptable for sequence numbers. Validating a transaction with sequence number 0004 will report an error if sequence number 0003 does not exist (even if sequence 0004 does not have any reference to it).
|A09||Corrupt and password protected WORD documents||Word document will be reported as corrupted or password protected if one or more of the following situations occur:
Note: This rule applies only to Word version 2007 or later (.docx).
|A10||Duplicate transaction||This rule checks if the eCTD sequence that is being validated already exists in the eCTD dossier.||Error|
|B - PDF ANALYSIS|
|B01||Corrupt or unreadable PDF documents||A PDF document will be reported as corrupt if one or more of the following situations occur:
|B02||Bookmarks - Absolute (Rooted)||Retrieves all non-relative bookmarks in PDF documents and prints the total count, including the broken ones.||Error|
|B03a||Bookmark - External (www, e-mail)||Retrieves all web link bookmarks and e-mail bookmarks in PDF documents and prints the total count.||Error|
|B03b||Bookmarks - External (other)||Retrieves all external bookmarks other than web links and e-mail links from PDF documents and prints the total count.||Error|
|B04||Bookmarks - Inactive||Retrieves all inactive bookmarks in PDF documents and prints the total count.||Error|
|B06||Bookmarks - Inter Application, broken||Retrieves all broken inter-application bookmarks in PDF documents and prints the total count.||Error|
|B08||Bookmarks - Intra Application, broken||Retrieves all broken intra-application bookmarks in PDF documents and prints the total count.||Error|
|B10||Bookmarks - Intra Sequence, broken||Retrieves all broken intra-sequence bookmarks from PDF documents and prints the total count.||Error|
|B12||Bookmarks - Count||Reports the number of bookmarks per document and the total number of bookmarks in the sequence.||Information|
|B13||Hyperlinks - Absolute (Rooted)||Retrieves all non-relative hyperlinks from PDF documents and prints the total count, including the broken ones.||Error|
|B14a||Hyperlinks - External (www, e-mail)||Retrieves all web links and e-mail links from PDF documents and prints the total count.||Error|
|B14b||Hyperlinks - External (other)||Retrieves all external hyperlinks other than web links and e-mail links from PDF documents and prints the total count.||Error|
|B15||Hyperlinks - Inactive||Retrieves all inactive hyperlinks from PDF documents and prints the total count.||Error|
|B17||Hyperlinks - Inter Application, broken||Retrieves all broken inter-application hyperlinks from PDF documents and prints the total count.||Error|
|B19||Hyperlinks - Intra Application, broken||Retrieves all broken intra-application hyperlinks from PDF documents and prints the total count.||Error|
|B21||Hyperlinks - Intra Sequence, broken||Retrieves all broken intra-sequence hyperlinks from PDF documents and prints the total count.||Error|
|B23||Hyperlinks - Count||Reports the number of hyperlinks per document and the total number of hyperlinks in the sequence.||Information|
|B24||PDF Protection||Finds PDF documents with password protection.||Error|
|B25||PDF version checking||Checks all PDF document versions against the list of allowed versions.||Warning|
|B32||PDF Protection: Owner password||
Finds all documents with an owner password set, excluding Health Canada application forms regardless of their location and literature references in subfolders: 33-lit-ref, 43-lit-ref, 54-lit-ref.
|B33||PDF Protection: Encrypted||Finds all encrypted documents.||Information|
|B35||Bookmarks - deep destination check||For all bookmarks, the named destination or destination page will be verified.
Non existing destinations will be reported (i.e. the destination file exists but the page does not).
|B36||Bookmarks - multi action||Finds all bookmarks with multiple actions assigned.||Error|
|B37||Hyperlinks - deep destination check||For all hyperlinks, the named destination or destination page will be verified.
Non existing destinations will be reported (i.e. the destination file exists but the page does not).
|B38||Hyperlinks - multi action||Finds all hyperlinks with multiple actions assigned.||Error|
|B40||PDF documents with attachments are not allowed||This rule is configured to detect attachments and portfolio documents found in PDF documents.||Error|
|B41||Bookmark does not 'Inherit Zoom"||All bookmarks and hyperlinks should have a magnification setting of "Inherit Zoom". This rule performs the corresponding checks for bookmarks.||Warning|
|B42||Link does not 'Inherit Zoom'||All bookmarks and hyperlinks should have a magnification setting of "Inherit Zoom". This rule performs the corresponding checks for hyperlinks.||Warning|
|B43||PDF Initial View||Checks for PDF documents with an incorrect initial view. ICH eCTD Specification: Documents with bookmarks must show the bookmarks pane in their initial view. The Magnification and Page Layout should be set as "default".||Warning|
|B44||PDF documents with more than 10 pages must have bookmarks||PDF documents with more than 10 pages must have bookmarks. Excluded from this check are literature references in sections 3.3, 4.3, and 5.4; the life cycle management table; and Health Canada application forms.||Warning|
|B45||PDF Protection - Printing||Finds all documents where printing is not allowed.||Error|
|B46||PDF Protection - Content Copying||Finds all documents where copying the content is not allowed.||Error|
|B47||PDF content restrictions||
This rule checks for PDF files that contain, dynamic content (e.g., audio, video or special effects), or 3D content. Health Canada application forms are excluded from this check regardless of their location.
|B48||PDF content restrictions||
|C - REFERENCED FILES|
|C01||HREFs to targets outside application||Checks for broken links in submission files.||Error|
|Hyperlinks targeting files outside the application will be identified.|
|C02||HREFs to targets outside sequence||Checks for broken links in submission files.||Information|
|Hyperlinks targeting files outside sequence will be identified.|
|C03||Life Cycle Management Semantics||This check option refers to the current sequence. It will perform a general verification of the leaf life cycle properties in this sequence only (no deep history scanning).||Error|
|For leaf elements with operation "new", the eValidator verifies that: modified file must not exist / title is given / href must exist.|
|For leaf elements with operation "replace", the eValidator verifies that: modified file must exist / title is given / href must exist.|
|For leaf elements with operation "append", the eValidator verifies that: modified file must exist / title is given / href must exist.|
|For leaf elements with operation "delete", the eValidator verifies that: modified file must exist / title is not required / href must not exist.|
|The eValidator verifies that for initial submissions all leaf elements have the operation "new".|
|The eValidator checks modified files in LCM: leaf in previous sequence must exist. It also verifies that when the attribute "modified-file" has been used for a leaf document then the referenced document exists in the previous submission. It is recognized that this attribute is invalid when used for submission sequence number 0000.|
|The eValidator checks that all files referenced in the backbone exist.|
|C04||MD5 Checksum||The eValidator regenerates the MD5 checksums for all referenced files and compares the checksums to the values provided in the backbone file.||Error|
|C05||Naming Syntax||Checks the syntax of all referenced file names (path length, illegal characters, etc.). The maximum path length is 200 characters.||Error|
|C06||Relative References||The eValidator checks that only relative references (href and modified file) are used. Also, only forward slashes "/" are allowed (no backslashes).||Error|
|Do the file references in the index files (ICH, Regional, STF) use relative paths? Absolute (i.e. rooted) paths are not allowed.|
|C07||Unreferenced Files||Searches for files not referenced in an index file (ICH, Regional or STF).||Error|
|D - XML ANALYSIS|
|D01||DTD/Schema Checksums||Rule compares the checksums of the DTD and schema against the following checksums:||Error|
|D02||Existence of Node extensions||The eValidator checks for "node-extension" elements being used and reports them for informational purposes.||Information|
|D03||MD5 for Index files||
MD5 checksums for index files will be calculated and compared against the MD5 checksums provided in the MD5 text files (not case sensitive).
|D04||Validate against delivered DTD||Performs XML validation for ICH Backbone and Regional backbones.||Error|
|Uses the DTD or Schema given in the sequence number folder (util/dtd).|
|F - CA REGIONAL 2.2|
|F01||All files should have one and only one file extension||Checks if referenced files have exactly one file extension.||Error|
|F03||Element must have leaf||Checks for elements not having any leaf child nodes. This only affects elements with a name that starts with 'm'.||Error|
|F04||The folder m1\ca must exist.||The sequence folder must have a subfolder m1 with a subfolder ca.||Error|
|F05||No subfolders in ca-subfolder||The folder m1\ca must not have any subfolders.||Warning|
|F06||Leaf title must not be empty||For operations other than 'delete', all leafs must have a 'title' child. The title must be present.||Error|
|F07||Module 1 (regional xml file) exists||The regional backbone ca-regional.xml file must exist in folder m1\ca.||Error|
|F08||Application folder name must match dossier-identifier||The element value for the dossier-identifier must match the name of the parent folder of the sequence folder. And the dossier-identifier must start with the letter e or s.||Error|
|F09||Element sequence-description||Refer to the CA M1 guidance document for the list of valid values for the sequence-description element.||Error|
|F10||Cover letter operation attribute||Cover letter should have 'new' operation attribute.||Warning|
|F11||Multiple operations on same document in same sequence||Checks for documents in the regional backbone, which are used as modified-file more than once.||Error|
|F12||File reuse||Checks for file reuse scenarios (Same values for xlink:href used multiple times in the regional backbone for this sequence).||Information|
|F14||Replace should not provide identical content to the previous file||
When replacing content, the new content should be different from the previous content. This check does not apply to image files provided in module 1.
|F15||Invalid file extension||
Valid file extensions include:
|F17||Detect invalid life cycle: Delete||Detect invalid life cycle pattern: Delete operations causing branches.||Error|
|F18||Detect invalid life cycle: Replace||Detect invalid life cycle pattern: Replace operations causing branches.||Error|
|F19||Detect invalid life cycle: Delete||Detect invalid life cycle pattern: Operation on deleted leaf content.||Error|
|F21||Element sequence-number||The value of the sequence-number element must match the sequence folder name.||Error|
|F22||Operation for Life Cycle Management Table||
The operation attribute for this leaf element must be "new" when provided for the first time, and "replace"/ "delete" whenever referenced again as part of a subsequent transaction.
|F23||Product Name and Applicant||Element values product-name and applicant must not be empty.||Error|
|F24||Cover letter||Cover letter should not have more than three pages.||Error|
|F25||Node extensions in module 1||
Node extensions in module 1 backbone (ca-regional.xml) are not allowed, except in 1.2.6 Authorization for Sharing Information heading, 1.2.7 International Information heading, and 1.6.1 Comparative bioavailability Information heading.
The validator checks all headings and subheadings in the Canadian regional backbone (ca-regional.xml). It generates an error when there is (are) node extension(s) found in any subheadings other than those mentioned above This rule does not apply to leaves with operation "delete".
|F26||Node Extensions in 1.2.7 International Information||
Node extensions are expected in section 1.2.7 International Information heading.
Note: There is a mixture of node extensions and leaves allowed in the 1.2.7 International Information heading. A warning is generated when there is a (are) leaf (leaves) added under this heading. The warning serves the purpose to notify the user to manually verify the leaves added under this heading. Requirements are outlined below and will result in failure of the transaction if not followed:
When provided, the International Status document and the Foreign review attestation must be added as leaves directly under 1.2.7 subheading. Any other foreign agency (such as FDA,. EMA) related documents must be provided using node extensions This rule does not apply to leaves with operation "delete".
|F27||Node Extension title must not be empty||For node extensions, the title child must be present (value must be present).||Error|
|F28||Use of operation append||
The use of operation "append" is not allowed in module 1.
|G - ICH BACKBONE 3.2|
|G01||All files should have one and only one file extension||Checks if referenced files have exactly one file extension.||Error|
|G02||Attribute checksum-type||The checksum-type attribute must have the value md5 or MD5.||Error|
|G03||Attribute dosage form||Checks if the attribute value is present.||Warning|
|G04||Attribute excipient||Checks if the attribute value is present.||Warning|
|G05||Attribute Indication||Checks if the attribute value is present.||Error|
|G06||Attribute Manufacturer||Checks if the attribute value is present. Applicable only to sections where this attribute is mandatory, otherwise reported as warning.||Error|
|G07||Attribute Product-Name||Checks if the attribute value is present.||Warning|
|G08||Attribute Substance||Checks if the attribute value is present. Applicable only to sections where this attribute is mandatory, otherwise reported as warning.||Error|
|G09||Element must have leaf||Checks for elements not having any leaf child nodes. This only affects elements with a name that starts with 'm'.||Error|
|G10||File index.xml exists||The index.xml file must be present.||Error|
|G11||File index-md5.txt exists||The MD5 checksum file index-md5.txt must be present.||Error|
|G12||Folder m1 exists||The m1 folder must be present.||Error|
|G13||Folder util exists||The util folder must be present.||Error|
|G14||Leaf title must not be empty||For operations other than 'delete', all leafs must have a 'title' child. The title must be present.||Error|
|G15||m1-administrative element must exist||The element m1-administrative-information-and-prescribing information must be present.||Error|
|G16||No other files in m1||The m1 folder must not have any other files in addition to the files explicitly allowed.||Error|
|G17||No other files in root||The root folder (sequence number folder) must not have any other files in addition to the files explicitly allowed.||Error|
|G18||Node Extension title must not be empty||For node extensions, the title child must be present (value must be present).||Error|
|G19||Regional backbone(s) referenced operations||Regional backbone(s) referenced (ca-regional.xml) should have 'new' operation attribute.||Warning|
|G20||Multiple operations on same document in same sequence||Checks for documents in the ICH backbone, which are used as modified-file more than once.||Error|
|G21||File reuse||Checks for file reuse scenarios (Same values for xlink:href used multiple times in the regional backbone for this sequence).||Information|
|G22||Invalid file extension||
Valid file extensions include: Documents:.pdf,.doc,.docx,.xls,.xlsx,.wpd,.ppt,.pptx
Data, Modeling and Simulation:.dat,.inf,.txt,.sas,.xpt .wksz,.wksx,.wks (SimCyp workspace files, Pharmaceutical Drugs only) .sdax,.edpdp,.wsp,.epr,.pnf,.psf (Consistency Lot Release Testing Activities, Biologic Drugs only)
|G23||Replace or append should not provide identical content to the previous file||When replacing or appending content, the new content should be different from the previous content.||Error|
|G24||Leaf count under a node||The number of leaves directly under a single node must not exceed 1000. This rule applies only to module 5 when using node extensions and only to leaves with operation attribute "new".||Error|
|G25||Detect invalid life cycle: Append||Detect invalid life cycle pattern: Append operations causing branches.||Error|
|G26||Detect invalid life cycle: Append||Detect invalid life cycle pattern: Append operations not appending to most recent STF leaf.||Error|
|G27||Detect invalid life cycle: Delete||Detect invalid life cycle pattern: Delete operations causing branches.||Error|
|G28||Detect invalid life cycle: Replace||Detect invalid life cycle pattern: Replace operations causing branches.||Error|
|G29||Detect invalid life cycle: Delete||Detect invalid life cycle pattern: Operation on deleted leaf content.||Error|
|G30||Detect invalid life cycle: Append||Detect invalid life cycle pattern: Append on Append.||Warning|
|G31||Strength in dosage form attribute||Do not provide strength values in the dosage form attribute in sections 2.3.P, 3.2.P, 3.2.A.1, or 3.2.A.2. Any numeric value found in these attribute values will be reported as an error. If the strength value was already present in a previous sequence, the rule will not report an error for the current sequence.||Error|
|G32||Do not relocate content||This applies to leaf elements in the ICH sections modules 2-5.
When revisions are sent to a regulatory authority, the new leaf element should be submitted in the same location in the backbone as the leaf element being appended, replaced or deleted.
|G33||SAS XPT dataset files (XPORT)||This check will examine the SAS XPT dataset files (XPORT). Files that are corrupt or compressed will be reported as Error. For details about the technical specifications, please refer to the FDA study data technical conformance guide.||Error|
|G34||Node extensions in 3.2.R Regional Information||Leaf elements in 3.2.R Regional Information heading must be provided using node extensions. PDF files are not allowed as leaf elements directly under 3.2.R Regional Information heading. Acceptable titles of the node extensions are:
Warning will be reported if the naming of the title is not followed.
The exact naming convention of the titles of node extensions must be used when the node extension(s) is (are) created for the first time under this heading.If new or replaced leaves are provided when there are already existing node extensions in the 3.2.R Regional information heading, the leaves must be provided under the existing node extensions, even if they don't follow the exact naming convention of the node extension title. Warning generated during the validation can be ignored.
|H - STF 2.2|
|H01||Check Index Reference||Verifies that the href target exists and has the correct value.||Error|
|H02||Check Index Reference (title - match)||Verifies that the href target exists and matches the title value.||Warning|
|H03||Content Block are not accepted||Reports any used content-block element.||Warning|
|H04||No backslash in HREF||Verifies that href values do not contain backslashes.||Error|
|H05||Study Identifier category must not be empty||The value of the study-identifier/category element must not be empty.||Warning|
|H06||Study Identifier study-ID must not be empty||The value of the study-identifier/study-id element must not be empty.||Warning|
|H07||Study Identifier title must not be empty||The value of the study-identifier/title element must not be empty.||Warning|
|H08||Categories and file tags||Checks file tag values and category values against definitions in valid-values.xml file. Accepting values as defined in valid-values.xml v5.||Error|
|H09||STF leaf element must reference other STF leaf upon append||STF leaf element must reference other STF leaf upon append.||Error|
|Such leaf elements must not reference PDF files as modified files.|
|H10||Category information must be provided for certain STFs||Category information must be provided for certain STFs.||Warning|
|H12||STF cannot reference another STF||Leaf references in STFs must always target content files, not STFs.||Warning|
|H13||STF does not relate to any leaf elements||STF files must reference at least one leaf.||Warning|
|H14||Study ID for STF must remain constant||The STF study IDs must not change in the application life cycle.||Warning|
|H15||Invalid STF TOC location||STFs should only be associated with certain headings under Modules 4 or 5.||Warning|
|H16||STF doc-content file tag count||There should be one and only one file tag for each doc-content.||Warning|
|H19||Case Report Form(s) structure in 5.3.7||If Study Tagging Files are used in the current sequence being validated, the node 5.3.7 must not be used. The Case Report Forms must be referenced from the Study Tagging Files. The previous sequences in the same dossier will not be checked.||Error|
|H20||Use Study Tagging Files or Node Extensions||Leaf elements in module 4 (except those in subsection 4.3), with an operation attribute "new", can use either node extensions, STFs or may be placed directly under the TOC sections.
Leaf elements in subsections 5.3.1, 5.3.2, 5.3.3, 5.3.4, 5.3.5, and 5.3.7, with an operation attribute "new", can use only node extensions or STFs.
Although both node extensions and STFs are acceptable for study reports, only one or the other approach should be used consistently throughout the lifecycle of a leaf. Also, in a specific sequence all leaf elements should use the same approach.
Note: Previous sequences in the same dossier will not be checked, and neither will leaf elements with operation attributes other than "new".
I: Regulatory Enrolment Process*
*ONLY for users of the Regulatory Enrolment Process (REP)
|I01||Corrupt xml file||An XML file will be reported as corrupt if the file cannot be opened because the file is damaged.||Error|
|I02||Missing Regulatory Transaction (RT) XML file||
Checks the 1.2.1 Application Forms node. Generates error if the RT file is missing from the current eCTD sequence and was provided in the previous eCTD sequence.
Note: This rule is not based on the presence of the RT file in the current sequence. This rule is based on the existence of the RT XML file in the previous eCTD sequence. Error must not be generated if there is no RT xml file present in the previous eCTD sequence.
|I03||Placement of the Regulatory Transaction (RT) and Product Information (PI) xml files||Verifies the placement of the RT and PI xml files. Generates error if they are placed in a node other than 1.2.1 Application Forms.||Error|
|I04||Presence of the Submission Application form (3011)||
Checks the 1.2.1 Application Forms node. Generates error if, in addition to the RT xml file, there is a 3011 form named hc-sc-3011-en.pdf or hc-sc-3011-fr.pdf.
|I05||Presence of other xml files in the Application Forms node||
Checks the 1.2.1 Application Forms node. Generates error if in addition to the RT xml and/or PI xml file there are other xml files Error will also be reported if more than one RT XML file is found in this node.
|I06||Comparison of the RT file with the top level folder (Dossier ID folder)||
Compares the value in the Dossier ID field in the RT file with the top level folder.
|I07||Operation Attribute Value for the RT XML file||
The operation attribute value in the leaf element must be "new" when provided for the first time, and "replace" when provided in subsequent transaction.
|I08||Dossier ID Naming convention||
Checks the Dossier ID field in the RT XML file. It must be lower case letter "e" followed by 6 digits.
|I09||Product Name and company ID in the RT XML file||Element values for "product-name" and "company_id" must not be empty.||Error|
Report a problem or mistake on this page
- Date modified: