FpML Issues Tracker

660: ISDA 2003 Precondition falsely assumes a single contractualDefinitions

March 27, 2008

closed

Crash

Always

Validation Rules

Admin

None

Summary

The ISDA 2003 Precondition falsely assumes a single contractualDefinitions element.

According to the schema, there may be more than one contractualDefinitions element. It needs to state how to evaluate this across zero to many element.

The rule today: Precondition: ISDA2003 (context: Trade) (context: Contract) The documentation/contractualDefinitions element begins with the substring ISDA2003Credit (this includes ISDA2003CreditJapan, etc.) or the documentation/masterConfirmation/masterConfirmationType element begins with the substring ISDA2003Credit or ISDA2004Credit.

I propose the rule tests for the existence of some element beginning with the string ISDA2003Credit.

The intermediate proposed change: Precondition: ISDA2003 (context: Trade) (context: Contract) Some documentation/contractualDefinitions element begins with the substring ISDA2003Credit (this includes ISDA2003CreditJapan, etc.) or the documentation/masterConfirmation/masterConfirmationType element begins with the substring ISDA2003Credit or ISDA2004Credit.

We already agreed that we shouldn't be describing the type "string" using the term for an operator: "substring". See issue #618 http://www.fpml.org/issues/view.php?id=618 Taking this secondary issue into account would give us:

The final proposed changes:

The proposed change: Precondition: ISDA2003 (context: Trade) (context: Contract) Some documentation/contractualDefinitions element begins with the String ISDA2003Credit (this includes ISDA2003CreditJapan, etc.), or the documentation/masterConfirmation/masterConfirmationType element begins with the string ISDA2003Credit or ISDA2004Credit.

The current XPath/XQuery definition is: let $iSDA2003PreCondition as xs:boolean := fn:starts-with(//documentation/contractualDefinitions, "ISDA2003Credit") or fn:matches(//documentation/masterConfirmation/masterConfirmationType, "^(ISDA2003Credit|ISDA2004Credit)")

The revised XPath/XQuery definition would be: let $iSDA2003PreCondition as xs:boolean := (some $contractualDefinitions as xs:string in //documentation/contractualDefinitions satisfies fn:starts-with($contractualDefinitions, "ISDA2003Credit")) or (fn:matches(//documentation/masterConfirmation/masterConfirmationType, "^(ISDA2003Credit|ISDA2004Credit)"))

Notes:

  • matthewdr

    04/08/08 1:52 pm

    Agreed at the VWG to authorize Marc to implement this.

  • mgratacos

    04/21/08 2:33 pm

    This has been committed to the 5.0 branch (revision 3632)
    This has been committed to the trunk (revision 3633)

  • Leave an update

    You must be logged in to post an update.