933: rules documentation files invalid against the XSD

The rules documentation files are invalid against the XSD. rules-english-ref.xml contains: ” %fpml.version.entities; ]> ” The attribute /rules/@name is not in the XML Schema. There are many other nodes node in the XML Schema. … … Please make the rules documentation valid against the XSD.

932: Rule 26b needs to have an additional guard

Rule 26b needs to have an additional guard: if equityExercise/equityBermudaExercise/equityMultipleExercise/integralMultipleExercise does not exist. Otherwise, it collides with eqd-18. Example: 1 1 150000 150000 —Rules——————— eqd-26b (Mandatory) English Description: Context: EquityOption (complex type) EquityDerivativeShortFormBase (complex type) You cannot exercise more than the number of options you have. If numberOfOptions exists, and if equityExercise/equityBermudaExercise/equityMultipleExercise/maximumNumberOfOptions exists, then equityExercise/equityBermudaExercise/equityMultipleExercise/maximumNumberOfOptions … Continued

931: Rule 26 needs to have an additional guard

Rule 26 needs to have an additional guard: if equityExercise/equityAmericanExercise/equityMultipleExercise/integralMultipleExercise does not exist. Otherwise, it collides with eqd-17. Example: 1 1 150000 150000 — Rules ——————————— eqd-26 (Mandatory) English Description: Context: EquityOption (complex type) EquityDerivativeShortFormBase (complex type) You cannot exercise more than the number of options you have. If numberOfOptions exists, and if equityExercise/equityAmericanExercise/equityMultipleExercise/maximumNumberOfOptions exists, … Continued

930: shared-13 XPath form

” Context: Document (complex type) Every $sellerPartyReference in //sellerPartyReference satisfies $sellerPartyReference/@href eq (trade/tradeSide, party)/@id ” Should be: ” Context: Document (complex type) Every $sellerPartyReference in //sellerPartyReference satisfies $sellerPartyReference/@href eq (trade/tradeSide/@id, party/@id) ” The change is to bring the @id within the brackets. It changes nothing other than bringing it into line with other examples, such … Continued

929: shared-12 XPath

The XPath version of shared-12 is today: ” XPath Description: Context: Document (complex type) For buyerPartyReference anywhere in the document, @href shall match the @id attribute of a party element or the @id attribute of a tradeSide element. ” The XPath version should be: ” Context: for $document in //element(*, Document) every $buyerPartyReference in $document//buyerPartyReference … Continued

928: shared-10 path doesn’t exist

The rule shared-10 uses a path that doesn’t exist. There is no element named “CalculationAgent” – that is a type not an element. The rule today: ” shared-10 (Mandatory) Context: CalculationAgent English Description: The values of calculationAgentPartyReference/@href attributes shall be unique. count(distinct-values(calculationAgentPartyReference/@href)) eq count(calculationAgentPartyReference/@href) ” The correct rule, including comment is: ” shared-10 (Mandatory) Context: … Continued

927: ird-14 needs to handle relative dates

ird-14 handles effectiveDate but not relativeEffectiveDate The rule today is: ” Context: CalculationPeriodDates (complex type) terminationDate/unadjustedDate gt effectiveDate/unadjustedDate ” We can either put a guard on the context to limit the rule to effectiveDate, or we can also evaluate the relativeEffectiveDates With a guard: ” Context: CalculationPeriodDates (complex type)[exists(effectiveDate)] terminationDate/unadjustedDate gt effectiveDate/unadjustedDate ” Handling just … Continued

926: cd-26 does not handle optional effectiveDate field

cd-26 does not handle the effectiveDate being optional. cd-26 today is: ” Context: CreditDefaultSwap (complex type) [exists(feeLeg/singlePayment/adjustablePaymentDate)] feeLeg/singlePayment/adjustablePaymentDate gt generalTerms/effectiveDate/unadjustedDate ” There is a guard on paymentDate, there should also be a guard on effectiveDate. I propose the new rule be: ” Context: CreditDefaultSwap (complex type) [exists(feeLeg/singlePayment/adjustablePaymentDate)][exists(generalTerms/effectiveDate)] feeLeg/singlePayment/adjustablePaymentDate gt generalTerms/effectiveDate/unadjustedDate ” I do not know … Continued

925: The rule eqd-6 does not work in 5-0.

The rule eqd-6 does not work in 5-0. There are two issues with: 1) in 5-0, these two elements (latestExerciseTimeType and latestExerciseTime) cannot exist together, only one or the other. —————– eqd-6 (Mandatory) English Description: Context: EquityBermudaExercise (complex type) If latestExerciseTimeType is equal to “SpecificTime”, then latestExerciseTime exists —————– Choice between a latest exercise time … Continued

924: The rule eqd-3 does not work in 5-0

The rule eqd-3 does not work in 5-0 where these two elements cannot exist together, only one or the other. —————– eqd-3 (Mandatory) English Description: Context: EquityAmericanExercise (complex type) If latestExerciseTimeType is equal to “SpecificTime”, then latestExerciseTime exists —————– Choice between a latest exercise time type, such as official close of the exchange, or an … Continued