FpML Issues Tracker
closed
Minor
Always
Validation Rules
Admin
None
Summary
Section 4.6.1 states: "The context of the rule must be defined such that incorporates everything referred to in a rule. The rule must not use the ancestor or parent axis, or use them in cojunction with any other axis. For example "../../tradeHeader" is precluded."
This contradicts:
Context: payerPartyReference shared-5 (Mandatory) If ../receiverPartyReference exists, then the @href attributes of the two elements must not be equal.
Notes:
matthewdr
04/15/08 1:29 pm
The problem is that this is contained within a model group.
The alternative is to define the rule in each type that the model group refers to.
matthewdr
04/15/08 1:35 pm
Discussed at VWG. Agreed Matthew will produce a proposal.
matthewdr
04/15/08 2:56 pm
The path is attempting to access the sibling in the model for a receiver to a payer. There is an XPath axis that can do this for us.
The revised rule would be:
”
Context: payerPartyReference
shared-5 (Mandatory)
@href does not equal following-sibling::receiverPartyReference.
”
This works because according to the definition of PayerReceiver.model these two elements are in sequence.
The “If … exists” is redundant as payerPartyReference must exist wherever receiverPartyReference exists in FpML.
The form “receiverPartyReference/@href” is also correct XPath.
iyermakova
05/20/08 1:58 pm
ValWG 2008-05-20: agreement to make the change.
matthewdr
06/12/08 5:26 pm
Revise rule following the change in specification guidelines:
”
shared-5 (Mandatory)
Context: DirectionalLeg (complex type), EquityPremium (complex type), ExerciseFee (complex type), ExerciseFeeSchedule (complex type), FeaturePayment (complex type), FxOptionPremium (complex type), GrossCashflow (complex type), IndependentAmount (complex type), InitialPayment (complex type), InterestRateStream (complex type), PassThroughItem (complex type), Payment (complex type), PaymentBase (complex type), PaymentMatching (complex type), PrePayment (complex type), PrincipalExchangeDescriptions (complex type), QuotablePayment (complex type), ReturnSwapAdditionalPayment (complex type), ReturnSwapLeg (complex type), SimplePayment (complex type)
Rule: payerPartyReference@href != receiverPartyReference/@href
”
lyteck
07/10/08 4:02 pm
implemented as suggested.
matthewdr
08/12/08 4:29 pm
Accepting the resolution after review.