FpML Issues Tracker
closed
Minor
Always
Validation Rules
Admin
None
Summary
The context in rule ird-59 is too high, as part of the rule to be evaluated lies outside the context.
The rule today is: " ird-59 (Mandatory) Context: ResetDates (complex type) In calculationPeriodDatesReference, the @href attribute = the @id attribute of calculationPeriodDates in the same swapStream. "
The phrase "the same swapStream" is undefined. If we assume it to mean ../calculationPeriodDates then the only problem is that it is out of context. It isn't visible from the context.
The solution is to raise the context to the appropriate level: " ird-59 (Mandatory) Context: InterestRateStream (complex type) id(resetDates/calculationPeriodDatesReference/@href) is calculationPeriodDates. "
Notice that I use "is" instead of "=" because this needs to be the very same element, and not just have the same value. What is required is an identity test not a value equivalence test.
There is a further complication in that resetDates is optional. This requires the addition of a guard upon the rule. The revised proposal is then: " ird-59 (Mandatory) Context: InterestRateStream (complex type) [exists(resetDates)] id(resetDates/calculationPeriodDatesReference/@href) is calculationPeriodDates. "
Given that there is always only ever at most one "resetDates/calculationPeriodDatesReference" and "calculationPeriodDates" then it seems to me that "resetDates/calculationPeriodDatesReference" contains no additional information and is redundant in the XML document. If this value was not present it would not change the interpretation of the XML document. The rule is fine, but the field the rule is upon appear un-necessary. Is the field just a convenience?
Notes:
matthewdr
12/09/08 2:21 pm
Agreed at the VWG today to implemented the proposed fix.
lyteck
12/09/08 8:27 pm
Implemented Formal Description as proposed.
Modified English Description as:
In resetDates/calculationPeriodDatesReference, the @href attribute is equal to the @id attribute of calculationPeriodDates in the same InterestRateStream
matthewdr
12/10/08 10:14 am
Tested, passed, closing.