Message

In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.

Context
/ubl:Invoice/cac:LegalMonetaryTotal/cbc:PayableAmount
Test
((. > 0) and (exists(//cbc:DueDate) or exists(//cac:PaymentTerms/cbc:Note))) or (. <= 0)
Usage
/ ubl:Invoice / cbc:DueDate
/ ubl:Invoice / cac:PaymentTerms / cbc:Note
/ ubl:CreditNote / cac:PaymentMeans / cbc:PaymentDueDate
/ ubl:CreditNote / cac:PaymentTerms / cbc:Note