VRBL-INV-IT-1p2-191

Basic Info

Rule The Financial Institution Branch ID must follow the pattern "[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3}){0,1}".
Context /ubl:Invoice/cac:PaymentMeans/cac:PayeeFinancialAccount/cac:FinancialInstitutionBranch/cbc:ID
Pattern vrbl-invoice-it-1p2
Severity fatal

Implementation

translate(substring(normalize-space(.), 1, 6), $AlphabetUpperCase, '') = ''
and
translate(substring(normalize-space(.), 7, 1), concat($AlphabetUpperCase, '23456789'), '') = ''
and
translate(substring(normalize-space(.), 8, 1), concat('ABCDEFGHIJKLMN', 'PQRSTUVWXYZ', $Numerics), '') = ''
and
(
	string-length(normalize-space(.)) = 8
	or
	(
		string-length(normalize-space(.)) = 11
		and
		translate(substring(normalize-space(.), 9, 3), $AlphaNumerics, '') = ''
	)
)