Message

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

Context
/ubl:OrderChange/cac:AnticipatedMonetaryTotal/cbc:LineExtensionAmount
Test
not(@currencyID) or (some $code in $clISO4217 satisfies $code = @currencyID)
Code lists
ISO 4217 Currency codes
Usage
/ ubl:OrderChange / cac:AnticipatedMonetaryTotal / cbc:LineExtensionAmount / @currencyID