VRBL-STM-MX-1p0-58

Basic Info

Rule When the Statement Line Invoice Document Reference Document Currency Code is equal to Statement Line Statement Line Extension Document Currency Code, the Statement Line Invoice Document Reference Exchange Rate Calculation Rate if existing must be equal to 1.
Context /ubl:Statement/cac:StatementLine/cac:BillingReference/cac:InvoiceDocumentReference/cec:UBLExtensions/cec:UBLExtension/cec:ExtensionContent/vrbl:InvoiceDocumentReferenceExtension/cbc:DocumentCurrencyCode
Pattern vrbl-payments-mx-1p0
Severity fatal

Implementation

not(
	. =  ../../../../../../../cec:UBLExtensions/cec:UBLExtension/cec:ExtensionContent/vrbl:StatementLineExtension/cbc:DocumentCurrencyCode
	and
	boolean(../cac:ExchangeRate/cbc:CalculationRate)
)
or 
(
	number(../cac:ExchangeRate/cbc:CalculationRate) = 1
)