ASIC Rewrite and MAS Rewrite both introduced a major structural change with the move from the CSV to XML file structure.
XML uses an embedded schema and validation system using XSD files. Essentially, when creating an XML file, it is checked against a set of formatting and data rules in the XSD file. If your XML file does not meet those rules, an error will appear.
Below is a list of the most common errors we see at TRAction in ASIC and MAS reporting and their causes.
1. Element ‘<XYZ>’ has a missing child element ‘<ABC>’
Missing UPI:
Where the UPI is missing, the element <CtrctData> has incomplete content. The error message which comes back from the XSD file is as follows:
List of possible elements expected: Unique Product Identifier <PdctId>.
This error occurs when <CtrctData> is expected to contain <PdctId> (Unique Product Identifier) but it is either absent or incorrectly placed in your XML instance.
See below XML examples for missing UPI:
Invalid | PdctId / UPI: <Blank> |
Valid | PdctId / UPI: <QZQF33340G58> |
Missing Asset Class:
See below XML examples for missing asset class fields:
Invalid | asset_class: <FX> |
Valid | asset_class: <CURR> |
2. Missing required attribute
This error occurs when a required attribute is missing based on the XSD schema, often in amount or price fields. Price-related fields like ‘Price’, ‘Strike Price’ and ‘Notional Amount’ must include the ‘Ccy’ (Currency).
If the currency attribute is omitted, the system will trigger an error stating “Amt element is missing the required attribute ‘Ccy’.“
Invalid XML example | <NtnlAmt> <1000.00> <CCY> <Blank> |
Incorrect XML example | <NtnlAmt> <10000.00> <CCY> <DOLLAR> |
Correct XML example | <NtnlAmt> <1000.00> <CCY> <USD> |
3. Invalid LEI format
This error occurs when the ‘LEI’ element is invalid. The value of the ‘LEI’ element is invalid according to its datatype ‘LEIIdentifier’. An LEI must be 20 alphanumeric characters following the ISO 17442 standard. If the value does not match the required pattern, the error occurs.
The LEI should only contain uppercase letters (A-Z) and digits (0-9). Special characters, spaces, or lowercase letters will cause the validation to fail.
Invalid XML example | <TRActionFintech> |
Valid XML example | <549300HPQYOZP8Y6FT53> |
4. Invalid boolean value for an element
This XSD error occurs when some amounts as such ‘Price’, ‘Strike Price’, ‘Notional Amount’ are expressed in monetary value and are reported with a negative sign XML tag (<Sgn>false</Sgn>).
The <Sgn> XML tag determines the sign of the value. If <Sgn> is set to false, it represents a negative value; if set to true, it represents a positive value. When it’s false, it will cause XML schema error resulting in XSD error.
Invalid XML example | <Price>-100.25</Dcml> <Sgn>false</Sgn> |
Valid XML example | <Price >-100.25</Dcml> <Sgn>true</Sgn> |
5. Invalid date/time format
This error occurs when a date or time value does not match the required format defined by the XSD schema.
The timestamp type in XSD follows a UTC format (Coordinated Universal time), such as YYYY-MM-DDTHH:MM:SSZ (e.g. “2025-02-03T06:00:00Z”). Any variation, such as missing components or incorrect formatting, will trigger an XSD error.
Invalid XML example | 2025-02-03 06:00:00 |
Valid XML example | 2025-02-03T06:00:00Z |
6. Exceeding maximum length constraint
Under the ASIC trade reporting regime, the number of decimal places allowed for valuations depends on the specific data field and the reporting format (i.e. XML schema constraints). The ‘Price’ and ‘Valuation amount’ fields allow up to 5 decimal places and if exceeded, will cause an XSD error.
Invalid XML example | <152.12365897635479> |
Valid XML example | <152.12366> |
The MAS trade reporting regime differs to ASIC, as MAS only specifies that for the data fields: fixed rate of legs 1 and 2, up to 11 numeric characters including 10 decimal places are permitted.
7. Enumeration constraint violation
This error occurs when an element’s value is not one of the predefined values specified in the XSD schema. Enumeration constraints restrict values to a specific set of options.
Example: Quantity unit of measure – this field is mandatory for asset classes where the notional quantity is expressed in units, such as commodities or equities.
For instance, if you are reporting a commodity derivative contract, specifying the unit of measure (e.g., barrels, tons) is required. Any other value will result in an error.
Invalid XML example | <BARRELS> |
Valid XML example | <BARL> |
Summary
XML and the associated XSD validations have added a level of complexity to trade reporting that often requires a firm to seek external assistance in their daily trade reporting process.
If you think you could benefit from such assistance, please contact us.