Skip to content
Miguel Guimarães edited this page Apr 6, 2022 · 11 revisions

Validation

Usage:

dbptk validate --import-file <path-to-siard> [-r <path_to_report> -a <path_to_allowed_types>]
Option Description
--import-file value SIARD file to be validated
--report value File where the validation report will be saved
--allowed value File with allowed data types for the categories UDT or distinct, one per line.
--skip-additional-checks Run the SIARD validation without the additional checks. The additional checks can be found here.

DBPTK Developer version 2.6 onwards supports validating a SIARD against its specification and also a set of additional checks defined below.

Currently supported SIARD versions:

Additional checks

Id Description
A_P_4.3-10 Examining whether the number of rows in the header correspond to the actual number of rows in Content
A_M_5.1-1-3 Check if the description element exists, has 3 or more characters and is not composed of blanks
A_M_5.1-1-5 Check if the archiverContact element exists, has 3 or more characters and is not composed of blanks
A_M_5.1-1-7 Check if the dataOriginTimespan element exists, has 3 or more characters and is not composed of blanks
A_M_5.1-1-10 Check if archivalDate is a valid date
A_M_5.2-1-1 Check if the schema name element exists, has 3 or more characters and is not composed of blanks
A_M_5.2-1-2 Check if the schema folder element exists, has 3 or more characters and is not composed of blanks
A_M_5.2-1-4 Check if the schema description element exists, has 3 or more characters and is not composed of blanks
A_M_5.3-1-10 Check if the type description element exists, has 3 or more characters and is not composed of blanks
A_M_5.4-1-8 Check if the attribute description element exists, has 3 or more characters and is not composed of blanks
A_M_5.5-1-1 Check if the table name element exists, has 3 or more characters and is not composed of blanks
A_M_5.5-1-3 Check if the table description element exists, has 3 or more characters and is not composed of blanks
A_M_5.6-1-2 The lobFolder should exist if the column is a large object type and the corresponding table.xml column contains date, also check if the file attribute in the table.xml column contains a valid path to lobFolder
A_M_5.6-1-5 This validation will produce a notice with all the different data types used
A_M_5.6-1-12 Check if the column description element exists, has 3 or more characters and is not composed of blanks
A_M_5.7-1-2 The lobFolder should exist in the field if the parent column is a large object type
A_M_5.7-1-5 Check if the field description element exists, has 3 or more characters and is not composed of blanks
A_M_5.8-1-1 Check if the primary key has no blank characters
A_M_5.8-1-2 Check if the primary key columns are identical to the column names in the table
A_M_5.8-1-3 Check if the primary key description element exists, has 3 or more characters and is not composed of blanks
A_M_5.9-1-2 Check if the referenced schema exist
A_M_5.9-1-3 Check if the referenced table exist
A_M_5.9-1-8 Check if the foreign key description element exists, has 3 or more characters and is not composed of blanks
A_M_5.10-1-1 Check if the foreign key column exist in the table
A_M_5.10-1-2 Check if the referenced column exist in the referenced table and check if foreign key and referenced key have identical data types
A_M_5.11-1-1 Check if the candidate key has no blank characters
A_M_5.11-1-2 Check if the candidate key columns are identical to the column names in the table
A_M_5.11-1-3 Check if the candidate key description element exists, has 3 or more characters and is not composed of blanks
A_M_5.12-1-1 Check if Check constraint name is unique
A_M_5.12-1-3 Check if the Check constraint description element exists, has 3 or more characters and is not composed of blanks
A_M_5.13-1-1 Check if trigger name is unique
A_M_5.13-1-6 Check if the trigger description element exists, has 3 or more characters and is not composed of blanks
A_M_5.14-1-1 Check if view name is unique
A_M_5.14-1-5 Check if the view description element exists, has 3 or more characters and is not composed of blanks
A_M_5.15-1-1 Check if routine name is unique
A_M_5.15-1-2 Check if the routine description element exists, has 3 or more characters and is not composed of blanks
A_M_5.16-1-1 Check if parameter name is unique
A_M_5.16-1-8 Check if the parameter description element exists, has 3 or more characters and is not composed of blanks
A_M_5.17-1-1 Check if user name is unique
A_M_5.17-1-2 Check if the user description element exists, has 3 or more characters and is not composed of blanks
A_M_5.18-1-1 Check if role name is unique
A_M_5.18-1-2 Check if admin is a valid user or a valid role
A_M_5.18-1-3 Check if role description element exists, has 3 or more characters and is not composed of blanks
A_M_5.19-1-1 Check if privilege type is a common DBMS privilege type
A_M_5.19-1-2 Check if privilege object is a valid schema and a valid table
A_M_5.19-1-3 Check if privilege grantor is a valid user or a valid role
A_M_5.19-1-4 Check if privilege grantee is a valid user or a valid role
A_M_5.19-1-5 Check if privilege option is "ADMIN", "GRANT" or empty
A_M_5.19-1-6 Check if privilege description element exists, has 3 or more characters and is not composed of blanks
A_T_6.0-1-1 Count the number of missing values for each foreign key
A_T_6.0-1-2 Validate data type content against the type definition