VRBL-INV-DK-OIOUBL-2p0-108

Basic Info

Rule The value of the Payee Party Legal Entity Company ID Scheme ID must be contained in Party Legal Entity Company ID Scheme ID (subset of ISO 6523 ICD) [VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523] or be contained in Party Legal Entity Company ID Scheme ID [VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL] (prefixed by 'VRBL:DK:'). Allowed values: 0184, 0237 or VRBL:DK:DK:CPR, VRBL:DK:DK:CVR, VRBL:DK:ZZZ. For more information visit: https://oioubl21.oioubl.dk/codelists/en/urn_oioubl_scheme_partylegalentitycompanyid-1.1.html
Context /ubl:Invoice/cac:PayeeParty/cac:PartyLegalEntity/cbc:CompanyID
Pattern vrbl-invoice-dk-oioubl-2p0
Severity fatal

Used Template: CodeList

Parameter Value
probe = @schemeID
codeList = $VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523 or $VRBL-DK-Prefix:$VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL
showValues = true

Implementation

not(boolean(@schemeID))
or
(
	(
		not(
			contains(
				normalize-space(@schemeID),
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523, 1, 1)
			)
		)
		and
		contains(
			$VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523,
			concat(
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523, 1, 1),
				normalize-space(@schemeID),
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-ISO6523, 1, 1)
			)
		)
	)
)
or
(
	(
		substring(normalize-space(@schemeID), 1, string-length($VRBL-DK-Prefix)) = $VRBL-DK-Prefix
		and
		not(
			contains(
				substring-after(normalize-space(@schemeID), $VRBL-DK-Prefix),
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL, 1, 1)
			)
		)
		and
		contains(
			$VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL,
			concat(
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL, 1, 1),
				substring-after(normalize-space(@schemeID), $VRBL-DK-Prefix),
				substring($VRBL-CL-DK-OIOUBL2p0-PartyLegalEntityCompanyIDSchemeID-OIOUBL, 1, 1)
			)
		)
	)
)