PintLint

Rules / IBR-128-AE

IBR-128-AE error

Emirate must be a code

When the country is AE, the country subdivision must be one of AUH, DXB, SHJ, AJM, UAQ, RAK or FUJ.

Free-text emirates ('Dubai', 'Abu-Dhabi', 'R.A.K') can't be matched reliably.

Fails

<cbc:CountrySubentity>Abu Dhabi</cbc:CountrySubentity>

Fix

Swap the name for the code. PintLint's fix does this automatically.

Passes

<cbc:CountrySubentity>AUH</cbc:CountrySubentity>
Schematron
Context
cac:PostalAddress
Test
(cac:Country/cbc:IdentificationCode="AE" and cbc:CountrySubentity = ("AUH", "DXB", "SHJ", "UAQ", "FUJ", "AJM", "RAK")) or not(cac:Country/cbc:IdentificationCode="AE")

Official text: When Country code (IBT-040, IBT-055, IBT-069, IBT-080) is AE, then country subdivision (IBT-039, IBT-054, IBT-068, IBT-079) must be one of (AUH, DXB, SHJ, UAQ, FUJ, AJM, RAK).

Official · PINT AE (UAE) rules. Severity: error. Runs on UBL XML and on JSON.

Check an invoice