941: finish off the conversion to XPath contexts

We should complete the current partial conversion of the XPath contexts to XPath. eqd-4 is a good example: ” XPath Description: Context: //element(*, Trade) (complex type) [exists(equityOption/equityExercise/equityAmericanExercise)] equityOption/equityExercise/equityAmericanExercise/expirationDate/adjustableDate/unadjustedDate ge tradeHeader/tradeDate ” The context doesn’t need to have “(complex type)” after it, because in XPath it is clear this is a complex type. “complex type” was … Continued

940: English version of shared-12 is ambiguous

The English version of shared-12 is: ” shared-12 (Mandatory) English 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 phrase “anywhere in the document” is ambiguous because “document” is not defined. Does it … Continued

939: ref-6 needs to be removed from XQuery implementation

Please apply this patch to remove ref-6 from the XQuery implementation. It has already been removed from the rules. Index: fpml-ref.xq =================================================================== — fpml-ref.xq (revision 6045) +++ fpml-ref.xq (working copy) @@ -26,9 +26,6 @@ for $settlementTermsReference as element(*, SettlementTermsReference) in //element(*, SettlementTermsReference) return res:pretty-result(xs:NMTOKEN(“ref-4”), id($settlementTermsReference/@href) instance of element(*, SettlementTerms), $settlementTermsReference, ()) , -for $interestCalculationReference as … Continued

937: cd-9 doesn’t cope with multiple referenceObligations

The rule cd-9 does not cope with multiple referenceObligation within its context. The rules today: ” English Description: Context: ReferenceInformation (complex type) If referenceObligation/primaryObligorReference exists, then the attribute @href of referenceObligation/primaryObligorReference must be equal to the @id attribute of referenceEntity XPath Description: Context: ReferenceInformation (complex type) [exists(referenceObligation/primaryObligorReference)] The attribute @href of referenceObligation/primaryObligorReference eq the @id … Continued

936: cd-6 GeneralTerms is a complex type

cd-6 is incorrect. The context should be indicated as a Complex Type. Currently, the context is given as an element. Today: ” XPath Description: Context: GeneralTerms buyerPartyReference/@href ne sellerPartyReference/@href ” Correct: ” XPath Description: Context: GeneralTerms (complex type) buyerPartyReference/@href ne sellerPartyReference/@href ” element(GeneralTerms) – today in XPath element(*, GeneralTerms) – correct in XPath

935: cd-2 mangled

cd-2 changed in revision 5360. It now says: ” Context: Trade (complex type) [exists(calculationAgent)] child::calculationAgent = (calculationAgentPartyReference, calculationAgentParty eq “AsSpecifiedInMasterAgreement”) ” 1. The form “child::” is redundant. 2. There may be more than one calculationAgent. What it should say is instead is what is in the XQuery implementation: ” Context: Trade (complex type) [exists(calculationAgent)] every … Continued

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