MX validation maps
The individual MX validation maps are organized into map source files according to their business function.
For example:
The mx_acmt_validation.mms map source file contains the validation maps for all of the acmt messages. See List of supported messages.
Schema name | Validation map name |
pacs.008.001.04 | ps008104_pacs_008_001_04 |
The validation map name is derived from the schema name as follows:
Character 1 of the validation map name | represents character 1 of the schema name |
Character 2 of the validation map name | represents character 4 of the schema name |
Characters 3 - 5 of the validation map name | represents characters 6 - 8 of the schema name |
Character 6 of the validation map name | represents character 12 of the schema name |
Characters 7 and 8 of the validation map name | represents characters 14 and 15 of the schema name |
Character 9 of the validation map name | represents the underscore character |
Characters 10 - 24 of the validation map name | represents the full schema name, but with periods replaced with underscores |
- Schema validation to check the MX instance conforms to the schema definition.
- BIC validation to ensure that only valid BICs are used.
- Country validation to ensure that only valid country codes are used.
- Currency validation to ensure that only valid currency codes are used.
- Decimal place validation to ensure the correct number of decimals per currency is used.
- IBAN validation to ensure that the IBAN contains a valid currency code and valid check digits as stated in the guidelines in the Swift MT User Handbook for IBANs (see Message Format Validation Rules, Part II Components, Chapter 4 Special Functions, topic IBAN).
Schema validation is always performed in the validation maps, but each of the other validation tasks can be turned off or on as required by using the supplied configuration file. See MX configuration file.
The validation maps use the bic.xml and currencycodedecimals.xml files to verify BICs, Currency Codes, Country Codes, and Decimal Places information.
The bic.xml file contains a list of BICs created from the SWIFT published BIC address list.
The currencycodedecimals.xml file contains a list of countries, their country codes, and the number of decimal places their currency allows. This data is obtained from the SWIFT published list.
The SWIFT components includes a utility for creating both of these files. See Common SWIFT components.
The individual MX validation maps can be run from the framework map, or they can be called individually as an independent executable map.
If you execute these maps outside of the framework map, then you must build your own error handling and error reporting routines. If so, the framework map can be used as an example in building your own routines See Individual MX validation maps.