This is the same issue as #683. The corrected rule is: ” Context: (EquityOption (complex type), EquityDerivativeShortFormBase (complex type))[numberOfOptions][optionEntitlement][equityPremium/paymentAmount][equityPremium/pricePerOption][val:same-currency((equityPremium/pricePerOption, equityPremium/paymentAmount))] eqd-20 (Mandatory) /equityPremium/pricePerOption/amount * $equityOption/numberOfOptions * $equityOption/optionEntitlement eq $equityOption/equityPremium/paymentAmount/amount ” In XQuery this is: ” (for $equityOption in (//element(*, EquityOption)|//element(*, EquityDerivativeShortFormBase))[numberOfOptions][optionEntitlement][equityPremium/paymentAmount][equityPremium/pricePerOption][val:same-currency((equityPremium/pricePerOption, equityPremium/paymentAmount))] return ) “