VRBL-INV-HR-CIUS-1p0-27

Basic Info

Rule When Invoice Line Commodity Classification Code List ID is 'VRBL:HR:KPD', the value of the Invoice Line Commodity Classification Code must be contained in Item Classification Codes [VRBL-CL-HR-ItemClassificationCode].
Context /ubl:Invoice/cac:InvoiceLine/cac:Item/cac:CommodityClassification/cbc:ItemClassificationCode
Pattern vrbl-invoice-hr-cius-1p0
Severity fatal

Used Template: CodeList

Parameter Value
probe = .
codeList = $VRBL-CL-HR-ItemClassificationCode

Implementation

(
	not(@listID = concat($VRBL-HR-Prefix, 'KPD'))
)
or
(
	not(boolean(.))
	or
	(
		(
			not(
				contains(
					normalize-space(.),
					substring($VRBL-CL-HR-ItemClassificationCode, 1, 1)
				)
			)
			and
			contains(
				$VRBL-CL-HR-ItemClassificationCode,
				concat(
					substring($VRBL-CL-HR-ItemClassificationCode, 1, 1),
					normalize-space(.),
					substring($VRBL-CL-HR-ItemClassificationCode, 1, 1)
				)
			)
		)
	)
)