Message

Value MUST be part of code list 'ISO 4217 Currency codes'.

Context
/ubl:Catalogue/cac:CatalogueLine/cac:RequiredItemLocationQuantity/cac:Price/cac:AllowanceCharge/cbc:Amount
Test
not(@currencyID) or (some $code in $clISO4217 satisfies $code = @currencyID)
Code lists
ISO 4217 Currency codes
Usage
/ ubl:Catalogue / cac:CatalogueLine / cac:RequiredItemLocationQuantity / cac:Price / cac:AllowanceCharge / cbc:Amount / @currencyID