public CompositeSumOptionPayoff(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode fixingDateInfoNode = xmlNode.SelectSingleNode("fixingDateInfo");
     
     if (fixingDateInfoNode != null)
     {
         if (fixingDateInfoNode.Attributes["href"] != null || fixingDateInfoNode.Attributes["id"] != null) 
         {
             if (fixingDateInfoNode.Attributes["id"] != null) 
             {
                 fixingDateInfoIDRef_ = fixingDateInfoNode.Attributes["id"].Value;
                 FixingDateInfo ob = new FixingDateInfo(fixingDateInfoNode);
                 IDManager.SetID(fixingDateInfoIDRef_, ob);
             }
             else if (fixingDateInfoNode.Attributes["href"] != null)
             {
                 fixingDateInfoIDRef_ = fixingDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 fixingDateInfo_ = new FixingDateInfo(fixingDateInfoNode);
             }
         }
         else
         {
             fixingDateInfo_ = new FixingDateInfo(fixingDateInfoNode);
         }
     }
     
 
     XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");
     
     if (payoffDateInfoNode != null)
     {
         if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null) 
         {
             if (payoffDateInfoNode.Attributes["id"] != null) 
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                 PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                 IDManager.SetID(payoffDateInfoIDRef_, ob);
             }
             else if (payoffDateInfoNode.Attributes["href"] != null)
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
             }
         }
         else
         {
             payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNodeList standardOptionNodeList = xmlNode.SelectNodes("standardOption");
     
     if (standardOptionNodeList != null)
     {
         this.standardOption_ = new List<StandardOption>();
         foreach (XmlNode item in standardOptionNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     standardOptionIDRef_ = item.Attributes["id"].Value;
                     standardOption_.Add(new StandardOption(item));
                     IDManager.SetID(standardOptionIDRef_, standardOption_[standardOption_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     standardOptionIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 standardOption_.Add(new StandardOption(item));
                 }
             }
             else
             {
                 standardOption_.Add(new StandardOption(item));
             }
         }
     }
     
 
 }
        public SimpleRangeEventCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode range1DNode = xmlNode.SelectSingleNode("range1D");

            if (range1DNode != null)
            {
                if (range1DNode.Attributes["href"] != null || range1DNode.Attributes["id"] != null)
                {
                    if (range1DNode.Attributes["id"] != null)
                    {
                        range1DIDRef_ = range1DNode.Attributes["id"].Value;
                        Range1D ob = new Range1D(range1DNode);
                        IDManager.SetID(range1DIDRef_, ob);
                    }
                    else if (range1DNode.Attributes["href"] != null)
                    {
                        range1DIDRef_ = range1DNode.Attributes["href"].Value;
                    }
                    else
                    {
                        range1D_ = new Range1D(range1DNode);
                    }
                }
                else
                {
                    range1D_ = new Range1D(range1DNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode dateInformationNode = xmlNode.SelectSingleNode("dateInformation");

            if (dateInformationNode != null)
            {
                if (dateInformationNode.Attributes["href"] != null || dateInformationNode.Attributes["id"] != null)
                {
                    if (dateInformationNode.Attributes["id"] != null)
                    {
                        dateInformationIDRef_ = dateInformationNode.Attributes["id"].Value;
                        DateInformation ob = new DateInformation(dateInformationNode);
                        IDManager.SetID(dateInformationIDRef_, ob);
                    }
                    else if (dateInformationNode.Attributes["href"] != null)
                    {
                        dateInformationIDRef_ = dateInformationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dateInformation_ = new DateInformation(dateInformationNode);
                    }
                }
                else
                {
                    dateInformation_ = new DateInformation(dateInformationNode);
                }
            }


            XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");

            if (jointSimpleCalculationNode != null)
            {
                if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null)
                {
                    if (jointSimpleCalculationNode.Attributes["id"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                        JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                        IDManager.SetID(jointSimpleCalculationIDRef_, ob);
                    }
                    else if (jointSimpleCalculationNode.Attributes["href"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                    }
                }
                else
                {
                    jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                }
            }
        }
Ejemplo n.º 3
0
        public VanillaReturnCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode gearingNode = xmlNode.SelectSingleNode("gearing");

            if (gearingNode != null)
            {
                if (gearingNode.Attributes["href"] != null || gearingNode.Attributes["id"] != null)
                {
                    if (gearingNode.Attributes["id"] != null)
                    {
                        gearingIDRef_ = gearingNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(gearingNode);
                        IDManager.SetID(gearingIDRef_, ob);
                    }
                    else if (gearingNode.Attributes["href"] != null)
                    {
                        gearingIDRef_ = gearingNode.Attributes["href"].Value;
                    }
                    else
                    {
                        gearing_ = new XsdTypeDouble(gearingNode);
                    }
                }
                else
                {
                    gearing_ = new XsdTypeDouble(gearingNode);
                }
            }


            XmlNode spreadNode = xmlNode.SelectSingleNode("spread");

            if (spreadNode != null)
            {
                if (spreadNode.Attributes["href"] != null || spreadNode.Attributes["id"] != null)
                {
                    if (spreadNode.Attributes["id"] != null)
                    {
                        spreadIDRef_ = spreadNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(spreadNode);
                        IDManager.SetID(spreadIDRef_, ob);
                    }
                    else if (spreadNode.Attributes["href"] != null)
                    {
                        spreadIDRef_ = spreadNode.Attributes["href"].Value;
                    }
                    else
                    {
                        spread_ = new XsdTypeDouble(spreadNode);
                    }
                }
                else
                {
                    spread_ = new XsdTypeDouble(spreadNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }
        }
        public VariableCalculation(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode operator1DListNode = xmlNode.SelectSingleNode("operator1DList");

            if (operator1DListNode != null)
            {
                if (operator1DListNode.Attributes["href"] != null || operator1DListNode.Attributes["id"] != null)
                {
                    if (operator1DListNode.Attributes["id"] != null)
                    {
                        operator1DListIDRef_ = operator1DListNode.Attributes["id"].Value;
                        Operator1DList ob = new Operator1DList(operator1DListNode);
                        IDManager.SetID(operator1DListIDRef_, ob);
                    }
                    else if (operator1DListNode.Attributes["href"] != null)
                    {
                        operator1DListIDRef_ = operator1DListNode.Attributes["href"].Value;
                    }
                    else
                    {
                        operator1DList_ = new Operator1DList(operator1DListNode);
                    }
                }
                else
                {
                    operator1DList_ = new Operator1DList(operator1DListNode);
                }
            }


            XmlNode conditionOperatorNode = xmlNode.SelectSingleNode("conditionOperator");

            if (conditionOperatorNode != null)
            {
                if (conditionOperatorNode.Attributes["href"] != null || conditionOperatorNode.Attributes["id"] != null)
                {
                    if (conditionOperatorNode.Attributes["id"] != null)
                    {
                        conditionOperatorIDRef_ = conditionOperatorNode.Attributes["id"].Value;
                        ConditionOperator ob = new ConditionOperator(conditionOperatorNode);
                        IDManager.SetID(conditionOperatorIDRef_, ob);
                    }
                    else if (conditionOperatorNode.Attributes["href"] != null)
                    {
                        conditionOperatorIDRef_ = conditionOperatorNode.Attributes["href"].Value;
                    }
                    else
                    {
                        conditionOperator_ = new ConditionOperator(conditionOperatorNode);
                    }
                }
                else
                {
                    conditionOperator_ = new ConditionOperator(conditionOperatorNode);
                }
            }
        }
        public VanillaPutOption(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");

            if (payoffDateInfoNode != null)
            {
                if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null)
                {
                    if (payoffDateInfoNode.Attributes["id"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                        PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                        IDManager.SetID(payoffDateInfoIDRef_, ob);
                    }
                    else if (payoffDateInfoNode.Attributes["href"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                    }
                }
                else
                {
                    payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                }
            }


            XmlNode participateRateNode = xmlNode.SelectSingleNode("participateRate");

            if (participateRateNode != null)
            {
                if (participateRateNode.Attributes["href"] != null || participateRateNode.Attributes["id"] != null)
                {
                    if (participateRateNode.Attributes["id"] != null)
                    {
                        participateRateIDRef_ = participateRateNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(participateRateNode);
                        IDManager.SetID(participateRateIDRef_, ob);
                    }
                    else if (participateRateNode.Attributes["href"] != null)
                    {
                        participateRateIDRef_ = participateRateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        participateRate_ = new XsdTypeDouble(participateRateNode);
                    }
                }
                else
                {
                    participateRate_ = new XsdTypeDouble(participateRateNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode strikeNode = xmlNode.SelectSingleNode("strike");

            if (strikeNode != null)
            {
                if (strikeNode.Attributes["href"] != null || strikeNode.Attributes["id"] != null)
                {
                    if (strikeNode.Attributes["id"] != null)
                    {
                        strikeIDRef_ = strikeNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(strikeNode);
                        IDManager.SetID(strikeIDRef_, ob);
                    }
                    else if (strikeNode.Attributes["href"] != null)
                    {
                        strikeIDRef_ = strikeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        strike_ = new XsdTypeDouble(strikeNode);
                    }
                }
                else
                {
                    strike_ = new XsdTypeDouble(strikeNode);
                }
            }


            XmlNode lowerBoundNode = xmlNode.SelectSingleNode("lowerBound");

            if (lowerBoundNode != null)
            {
                if (lowerBoundNode.Attributes["href"] != null || lowerBoundNode.Attributes["id"] != null)
                {
                    if (lowerBoundNode.Attributes["id"] != null)
                    {
                        lowerBoundIDRef_ = lowerBoundNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(lowerBoundNode);
                        IDManager.SetID(lowerBoundIDRef_, ob);
                    }
                    else if (lowerBoundNode.Attributes["href"] != null)
                    {
                        lowerBoundIDRef_ = lowerBoundNode.Attributes["href"].Value;
                    }
                    else
                    {
                        lowerBound_ = new XsdTypeDouble(lowerBoundNode);
                    }
                }
                else
                {
                    lowerBound_ = new XsdTypeDouble(lowerBoundNode);
                }
            }
        }
 public StopLossReturnCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode powerNode = xmlNode.SelectSingleNode("power");
     
     if (powerNode != null)
     {
         if (powerNode.Attributes["href"] != null || powerNode.Attributes["id"] != null) 
         {
             if (powerNode.Attributes["id"] != null) 
             {
                 powerIDRef_ = powerNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(powerNode);
                 IDManager.SetID(powerIDRef_, ob);
             }
             else if (powerNode.Attributes["href"] != null)
             {
                 powerIDRef_ = powerNode.Attributes["href"].Value;
             }
             else
             {
                 power_ = new XsdTypeToken(powerNode);
             }
         }
         else
         {
             power_ = new XsdTypeToken(powerNode);
         }
     }
     
 
     XmlNode lossTriggerNode = xmlNode.SelectSingleNode("lossTrigger");
     
     if (lossTriggerNode != null)
     {
         if (lossTriggerNode.Attributes["href"] != null || lossTriggerNode.Attributes["id"] != null) 
         {
             if (lossTriggerNode.Attributes["id"] != null) 
             {
                 lossTriggerIDRef_ = lossTriggerNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(lossTriggerNode);
                 IDManager.SetID(lossTriggerIDRef_, ob);
             }
             else if (lossTriggerNode.Attributes["href"] != null)
             {
                 lossTriggerIDRef_ = lossTriggerNode.Attributes["href"].Value;
             }
             else
             {
                 lossTrigger_ = new XsdTypeToken(lossTriggerNode);
             }
         }
         else
         {
             lossTrigger_ = new XsdTypeToken(lossTriggerNode);
         }
     }
     
 
     XmlNode maximumLossNode = xmlNode.SelectSingleNode("maximumLoss");
     
     if (maximumLossNode != null)
     {
         if (maximumLossNode.Attributes["href"] != null || maximumLossNode.Attributes["id"] != null) 
         {
             if (maximumLossNode.Attributes["id"] != null) 
             {
                 maximumLossIDRef_ = maximumLossNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(maximumLossNode);
                 IDManager.SetID(maximumLossIDRef_, ob);
             }
             else if (maximumLossNode.Attributes["href"] != null)
             {
                 maximumLossIDRef_ = maximumLossNode.Attributes["href"].Value;
             }
             else
             {
                 maximumLoss_ = new XsdTypeToken(maximumLossNode);
             }
         }
         else
         {
             maximumLoss_ = new XsdTypeToken(maximumLossNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode withNotionalNode = xmlNode.SelectSingleNode("withNotional");
     
     if (withNotionalNode != null)
     {
         if (withNotionalNode.Attributes["href"] != null || withNotionalNode.Attributes["id"] != null) 
         {
             if (withNotionalNode.Attributes["id"] != null) 
             {
                 withNotionalIDRef_ = withNotionalNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(withNotionalNode);
                 IDManager.SetID(withNotionalIDRef_, ob);
             }
             else if (withNotionalNode.Attributes["href"] != null)
             {
                 withNotionalIDRef_ = withNotionalNode.Attributes["href"].Value;
             }
             else
             {
                 withNotional_ = new XsdTypeBoolean(withNotionalNode);
             }
         }
         else
         {
             withNotional_ = new XsdTypeBoolean(withNotionalNode);
         }
     }
     
 
     XmlNode isExpiredNode = xmlNode.SelectSingleNode("isExpired");
     
     if (isExpiredNode != null)
     {
         if (isExpiredNode.Attributes["href"] != null || isExpiredNode.Attributes["id"] != null) 
         {
             if (isExpiredNode.Attributes["id"] != null) 
             {
                 isExpiredIDRef_ = isExpiredNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(isExpiredNode);
                 IDManager.SetID(isExpiredIDRef_, ob);
             }
             else if (isExpiredNode.Attributes["href"] != null)
             {
                 isExpiredIDRef_ = isExpiredNode.Attributes["href"].Value;
             }
             else
             {
                 isExpired_ = new XsdTypeBoolean(isExpiredNode);
             }
         }
         else
         {
             isExpired_ = new XsdTypeBoolean(isExpiredNode);
         }
     }
     
 
 }
 public VanillaRateTrigger(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dayCounterNode = xmlNode.SelectSingleNode("dayCounter");
     
     if (dayCounterNode != null)
     {
         if (dayCounterNode.Attributes["href"] != null || dayCounterNode.Attributes["id"] != null) 
         {
             if (dayCounterNode.Attributes["id"] != null) 
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(dayCounterNode);
                 IDManager.SetID(dayCounterIDRef_, ob);
             }
             else if (dayCounterNode.Attributes["href"] != null)
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["href"].Value;
             }
             else
             {
                 dayCounter_ = new XsdTypeToken(dayCounterNode);
             }
         }
         else
         {
             dayCounter_ = new XsdTypeToken(dayCounterNode);
         }
     }
     
 
     XmlNode calculationStartDateNode = xmlNode.SelectSingleNode("calculationStartDate");
     
     if (calculationStartDateNode != null)
     {
         if (calculationStartDateNode.Attributes["href"] != null || calculationStartDateNode.Attributes["id"] != null) 
         {
             if (calculationStartDateNode.Attributes["id"] != null) 
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationStartDateNode);
                 IDManager.SetID(calculationStartDateIDRef_, ob);
             }
             else if (calculationStartDateNode.Attributes["href"] != null)
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
             }
         }
         else
         {
             calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
         }
     }
     
 
     XmlNode calculationEndDateNode = xmlNode.SelectSingleNode("calculationEndDate");
     
     if (calculationEndDateNode != null)
     {
         if (calculationEndDateNode.Attributes["href"] != null || calculationEndDateNode.Attributes["id"] != null) 
         {
             if (calculationEndDateNode.Attributes["id"] != null) 
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationEndDateNode);
                 IDManager.SetID(calculationEndDateIDRef_, ob);
             }
             else if (calculationEndDateNode.Attributes["href"] != null)
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
             }
         }
         else
         {
             calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
         }
     }
     
 
     XmlNode gearingNode = xmlNode.SelectSingleNode("gearing");
     
     if (gearingNode != null)
     {
         if (gearingNode.Attributes["href"] != null || gearingNode.Attributes["id"] != null) 
         {
             if (gearingNode.Attributes["id"] != null) 
             {
                 gearingIDRef_ = gearingNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(gearingNode);
                 IDManager.SetID(gearingIDRef_, ob);
             }
             else if (gearingNode.Attributes["href"] != null)
             {
                 gearingIDRef_ = gearingNode.Attributes["href"].Value;
             }
             else
             {
                 gearing_ = new XsdTypeDouble(gearingNode);
             }
         }
         else
         {
             gearing_ = new XsdTypeDouble(gearingNode);
         }
     }
     
 
     XmlNode spreadNode = xmlNode.SelectSingleNode("spread");
     
     if (spreadNode != null)
     {
         if (spreadNode.Attributes["href"] != null || spreadNode.Attributes["id"] != null) 
         {
             if (spreadNode.Attributes["id"] != null) 
             {
                 spreadIDRef_ = spreadNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(spreadNode);
                 IDManager.SetID(spreadIDRef_, ob);
             }
             else if (spreadNode.Attributes["href"] != null)
             {
                 spreadIDRef_ = spreadNode.Attributes["href"].Value;
             }
             else
             {
                 spread_ = new XsdTypeDouble(spreadNode);
             }
         }
         else
         {
             spread_ = new XsdTypeDouble(spreadNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");
     
     if (payoffDateInfoNode != null)
     {
         if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null) 
         {
             if (payoffDateInfoNode.Attributes["id"] != null) 
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                 PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                 IDManager.SetID(payoffDateInfoIDRef_, ob);
             }
             else if (payoffDateInfoNode.Attributes["href"] != null)
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
             }
         }
         else
         {
             payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
         }
     }
     
 
 }
        public SimpleRangeAccrualRateTrigger(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode dayCounterNode = xmlNode.SelectSingleNode("dayCounter");

            if (dayCounterNode != null)
            {
                if (dayCounterNode.Attributes["href"] != null || dayCounterNode.Attributes["id"] != null)
                {
                    if (dayCounterNode.Attributes["id"] != null)
                    {
                        dayCounterIDRef_ = dayCounterNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(dayCounterNode);
                        IDManager.SetID(dayCounterIDRef_, ob);
                    }
                    else if (dayCounterNode.Attributes["href"] != null)
                    {
                        dayCounterIDRef_ = dayCounterNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dayCounter_ = new XsdTypeToken(dayCounterNode);
                    }
                }
                else
                {
                    dayCounter_ = new XsdTypeToken(dayCounterNode);
                }
            }


            XmlNode calculationStartDateNode = xmlNode.SelectSingleNode("calculationStartDate");

            if (calculationStartDateNode != null)
            {
                if (calculationStartDateNode.Attributes["href"] != null || calculationStartDateNode.Attributes["id"] != null)
                {
                    if (calculationStartDateNode.Attributes["id"] != null)
                    {
                        calculationStartDateIDRef_ = calculationStartDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(calculationStartDateNode);
                        IDManager.SetID(calculationStartDateIDRef_, ob);
                    }
                    else if (calculationStartDateNode.Attributes["href"] != null)
                    {
                        calculationStartDateIDRef_ = calculationStartDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
                    }
                }
                else
                {
                    calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
                }
            }


            XmlNode calculationEndDateNode = xmlNode.SelectSingleNode("calculationEndDate");

            if (calculationEndDateNode != null)
            {
                if (calculationEndDateNode.Attributes["href"] != null || calculationEndDateNode.Attributes["id"] != null)
                {
                    if (calculationEndDateNode.Attributes["id"] != null)
                    {
                        calculationEndDateIDRef_ = calculationEndDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(calculationEndDateNode);
                        IDManager.SetID(calculationEndDateIDRef_, ob);
                    }
                    else if (calculationEndDateNode.Attributes["href"] != null)
                    {
                        calculationEndDateIDRef_ = calculationEndDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
                    }
                }
                else
                {
                    calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode simpleRangeEventListNode = xmlNode.SelectSingleNode("simpleRangeEventList");

            if (simpleRangeEventListNode != null)
            {
                if (simpleRangeEventListNode.Attributes["href"] != null || simpleRangeEventListNode.Attributes["id"] != null)
                {
                    if (simpleRangeEventListNode.Attributes["id"] != null)
                    {
                        simpleRangeEventListIDRef_ = simpleRangeEventListNode.Attributes["id"].Value;
                        SimpleRangeEventList ob = new SimpleRangeEventList(simpleRangeEventListNode);
                        IDManager.SetID(simpleRangeEventListIDRef_, ob);
                    }
                    else if (simpleRangeEventListNode.Attributes["href"] != null)
                    {
                        simpleRangeEventListIDRef_ = simpleRangeEventListNode.Attributes["href"].Value;
                    }
                    else
                    {
                        simpleRangeEventList_ = new SimpleRangeEventList(simpleRangeEventListNode);
                    }
                }
                else
                {
                    simpleRangeEventList_ = new SimpleRangeEventList(simpleRangeEventListNode);
                }
            }


            XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");

            if (payoffDateInfoNode != null)
            {
                if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null)
                {
                    if (payoffDateInfoNode.Attributes["id"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                        PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                        IDManager.SetID(payoffDateInfoIDRef_, ob);
                    }
                    else if (payoffDateInfoNode.Attributes["href"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                    }
                }
                else
                {
                    payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                }
            }


            XmlNode denumerDateNumNode = xmlNode.SelectSingleNode("denumerDateNum");

            if (denumerDateNumNode != null)
            {
                if (denumerDateNumNode.Attributes["href"] != null || denumerDateNumNode.Attributes["id"] != null)
                {
                    if (denumerDateNumNode.Attributes["id"] != null)
                    {
                        denumerDateNumIDRef_ = denumerDateNumNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(denumerDateNumNode);
                        IDManager.SetID(denumerDateNumIDRef_, ob);
                    }
                    else if (denumerDateNumNode.Attributes["href"] != null)
                    {
                        denumerDateNumIDRef_ = denumerDateNumNode.Attributes["href"].Value;
                    }
                    else
                    {
                        denumerDateNum_ = new XsdTypeToken(denumerDateNumNode);
                    }
                }
                else
                {
                    denumerDateNum_ = new XsdTypeToken(denumerDateNumNode);
                }
            }
        }
 public LowerBarrierEventCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList dateInformationNodeList = xmlNode.SelectNodes("dateInformation");
     
     if (dateInformationNodeList != null)
     {
         this.dateInformation_ = new List<DateInformation>();
         foreach (XmlNode item in dateInformationNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     dateInformationIDRef_ = item.Attributes["id"].Value;
                     dateInformation_.Add(new DateInformation(item));
                     IDManager.SetID(dateInformationIDRef_, dateInformation_[dateInformation_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     dateInformationIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 dateInformation_.Add(new DateInformation(item));
                 }
             }
             else
             {
                 dateInformation_.Add(new DateInformation(item));
             }
         }
     }
     
 
     XmlNodeList lowerTriggerNodeList = xmlNode.SelectNodes("lowerTrigger");
     
     if (lowerTriggerNodeList != null)
     {
         this.lowerTrigger_ = new List<XsdTypeDouble>();
         foreach (XmlNode item in lowerTriggerNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     lowerTriggerIDRef_ = item.Attributes["id"].Value;
                     lowerTrigger_.Add(new XsdTypeDouble(item));
                     IDManager.SetID(lowerTriggerIDRef_, lowerTrigger_[lowerTrigger_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     lowerTriggerIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 lowerTrigger_.Add(new XsdTypeDouble(item));
                 }
             }
             else
             {
                 lowerTrigger_.Add(new XsdTypeDouble(item));
             }
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
 }
 public SimpleRangeEventCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode range1DNode = xmlNode.SelectSingleNode("range1D");
     
     if (range1DNode != null)
     {
         if (range1DNode.Attributes["href"] != null || range1DNode.Attributes["id"] != null) 
         {
             if (range1DNode.Attributes["id"] != null) 
             {
                 range1DIDRef_ = range1DNode.Attributes["id"].Value;
                 Range1D ob = new Range1D(range1DNode);
                 IDManager.SetID(range1DIDRef_, ob);
             }
             else if (range1DNode.Attributes["href"] != null)
             {
                 range1DIDRef_ = range1DNode.Attributes["href"].Value;
             }
             else
             {
                 range1D_ = new Range1D(range1DNode);
             }
         }
         else
         {
             range1D_ = new Range1D(range1DNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode dateInformationNode = xmlNode.SelectSingleNode("dateInformation");
     
     if (dateInformationNode != null)
     {
         if (dateInformationNode.Attributes["href"] != null || dateInformationNode.Attributes["id"] != null) 
         {
             if (dateInformationNode.Attributes["id"] != null) 
             {
                 dateInformationIDRef_ = dateInformationNode.Attributes["id"].Value;
                 DateInformation ob = new DateInformation(dateInformationNode);
                 IDManager.SetID(dateInformationIDRef_, ob);
             }
             else if (dateInformationNode.Attributes["href"] != null)
             {
                 dateInformationIDRef_ = dateInformationNode.Attributes["href"].Value;
             }
             else
             {
                 dateInformation_ = new DateInformation(dateInformationNode);
             }
         }
         else
         {
             dateInformation_ = new DateInformation(dateInformationNode);
         }
     }
     
 
     XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");
     
     if (jointSimpleCalculationNode != null)
     {
         if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null) 
         {
             if (jointSimpleCalculationNode.Attributes["id"] != null) 
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                 JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                 IDManager.SetID(jointSimpleCalculationIDRef_, ob);
             }
             else if (jointSimpleCalculationNode.Attributes["href"] != null)
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
             }
             else
             {
                 jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
             }
         }
         else
         {
             jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
         }
     }
     
 
 }
 public VanillaReturnCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode gearingNode = xmlNode.SelectSingleNode("gearing");
     
     if (gearingNode != null)
     {
         if (gearingNode.Attributes["href"] != null || gearingNode.Attributes["id"] != null) 
         {
             if (gearingNode.Attributes["id"] != null) 
             {
                 gearingIDRef_ = gearingNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(gearingNode);
                 IDManager.SetID(gearingIDRef_, ob);
             }
             else if (gearingNode.Attributes["href"] != null)
             {
                 gearingIDRef_ = gearingNode.Attributes["href"].Value;
             }
             else
             {
                 gearing_ = new XsdTypeDouble(gearingNode);
             }
         }
         else
         {
             gearing_ = new XsdTypeDouble(gearingNode);
         }
     }
     
 
     XmlNode spreadNode = xmlNode.SelectSingleNode("spread");
     
     if (spreadNode != null)
     {
         if (spreadNode.Attributes["href"] != null || spreadNode.Attributes["id"] != null) 
         {
             if (spreadNode.Attributes["id"] != null) 
             {
                 spreadIDRef_ = spreadNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(spreadNode);
                 IDManager.SetID(spreadIDRef_, ob);
             }
             else if (spreadNode.Attributes["href"] != null)
             {
                 spreadIDRef_ = spreadNode.Attributes["href"].Value;
             }
             else
             {
                 spread_ = new XsdTypeDouble(spreadNode);
             }
         }
         else
         {
             spread_ = new XsdTypeDouble(spreadNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
 }
        public VanillaRateTrigger(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode dayCounterNode = xmlNode.SelectSingleNode("dayCounter");

            if (dayCounterNode != null)
            {
                if (dayCounterNode.Attributes["href"] != null || dayCounterNode.Attributes["id"] != null)
                {
                    if (dayCounterNode.Attributes["id"] != null)
                    {
                        dayCounterIDRef_ = dayCounterNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(dayCounterNode);
                        IDManager.SetID(dayCounterIDRef_, ob);
                    }
                    else if (dayCounterNode.Attributes["href"] != null)
                    {
                        dayCounterIDRef_ = dayCounterNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dayCounter_ = new XsdTypeToken(dayCounterNode);
                    }
                }
                else
                {
                    dayCounter_ = new XsdTypeToken(dayCounterNode);
                }
            }


            XmlNode calculationStartDateNode = xmlNode.SelectSingleNode("calculationStartDate");

            if (calculationStartDateNode != null)
            {
                if (calculationStartDateNode.Attributes["href"] != null || calculationStartDateNode.Attributes["id"] != null)
                {
                    if (calculationStartDateNode.Attributes["id"] != null)
                    {
                        calculationStartDateIDRef_ = calculationStartDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(calculationStartDateNode);
                        IDManager.SetID(calculationStartDateIDRef_, ob);
                    }
                    else if (calculationStartDateNode.Attributes["href"] != null)
                    {
                        calculationStartDateIDRef_ = calculationStartDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
                    }
                }
                else
                {
                    calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
                }
            }


            XmlNode calculationEndDateNode = xmlNode.SelectSingleNode("calculationEndDate");

            if (calculationEndDateNode != null)
            {
                if (calculationEndDateNode.Attributes["href"] != null || calculationEndDateNode.Attributes["id"] != null)
                {
                    if (calculationEndDateNode.Attributes["id"] != null)
                    {
                        calculationEndDateIDRef_ = calculationEndDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(calculationEndDateNode);
                        IDManager.SetID(calculationEndDateIDRef_, ob);
                    }
                    else if (calculationEndDateNode.Attributes["href"] != null)
                    {
                        calculationEndDateIDRef_ = calculationEndDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
                    }
                }
                else
                {
                    calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
                }
            }


            XmlNode gearingNode = xmlNode.SelectSingleNode("gearing");

            if (gearingNode != null)
            {
                if (gearingNode.Attributes["href"] != null || gearingNode.Attributes["id"] != null)
                {
                    if (gearingNode.Attributes["id"] != null)
                    {
                        gearingIDRef_ = gearingNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(gearingNode);
                        IDManager.SetID(gearingIDRef_, ob);
                    }
                    else if (gearingNode.Attributes["href"] != null)
                    {
                        gearingIDRef_ = gearingNode.Attributes["href"].Value;
                    }
                    else
                    {
                        gearing_ = new XsdTypeDouble(gearingNode);
                    }
                }
                else
                {
                    gearing_ = new XsdTypeDouble(gearingNode);
                }
            }


            XmlNode spreadNode = xmlNode.SelectSingleNode("spread");

            if (spreadNode != null)
            {
                if (spreadNode.Attributes["href"] != null || spreadNode.Attributes["id"] != null)
                {
                    if (spreadNode.Attributes["id"] != null)
                    {
                        spreadIDRef_ = spreadNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(spreadNode);
                        IDManager.SetID(spreadIDRef_, ob);
                    }
                    else if (spreadNode.Attributes["href"] != null)
                    {
                        spreadIDRef_ = spreadNode.Attributes["href"].Value;
                    }
                    else
                    {
                        spread_ = new XsdTypeDouble(spreadNode);
                    }
                }
                else
                {
                    spread_ = new XsdTypeDouble(spreadNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");

            if (payoffDateInfoNode != null)
            {
                if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null)
                {
                    if (payoffDateInfoNode.Attributes["id"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                        PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                        IDManager.SetID(payoffDateInfoIDRef_, ob);
                    }
                    else if (payoffDateInfoNode.Attributes["href"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                    }
                }
                else
                {
                    payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                }
            }
        }
Ejemplo n.º 13
0
        public CompositeSumOptionPayoff(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode fixingDateInfoNode = xmlNode.SelectSingleNode("fixingDateInfo");

            if (fixingDateInfoNode != null)
            {
                if (fixingDateInfoNode.Attributes["href"] != null || fixingDateInfoNode.Attributes["id"] != null)
                {
                    if (fixingDateInfoNode.Attributes["id"] != null)
                    {
                        fixingDateInfoIDRef_ = fixingDateInfoNode.Attributes["id"].Value;
                        FixingDateInfo ob = new FixingDateInfo(fixingDateInfoNode);
                        IDManager.SetID(fixingDateInfoIDRef_, ob);
                    }
                    else if (fixingDateInfoNode.Attributes["href"] != null)
                    {
                        fixingDateInfoIDRef_ = fixingDateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        fixingDateInfo_ = new FixingDateInfo(fixingDateInfoNode);
                    }
                }
                else
                {
                    fixingDateInfo_ = new FixingDateInfo(fixingDateInfoNode);
                }
            }


            XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");

            if (payoffDateInfoNode != null)
            {
                if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null)
                {
                    if (payoffDateInfoNode.Attributes["id"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                        PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                        IDManager.SetID(payoffDateInfoIDRef_, ob);
                    }
                    else if (payoffDateInfoNode.Attributes["href"] != null)
                    {
                        payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                    }
                }
                else
                {
                    payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNodeList standardOptionNodeList = xmlNode.SelectNodes("standardOption");

            if (standardOptionNodeList != null)
            {
                this.standardOption_ = new List <StandardOption>();
                foreach (XmlNode item in standardOptionNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            standardOptionIDRef_ = item.Attributes["id"].Value;
                            standardOption_.Add(new StandardOption(item));
                            IDManager.SetID(standardOptionIDRef_, standardOption_[standardOption_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            standardOptionIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            standardOption_.Add(new StandardOption(item));
                        }
                    }
                    else
                    {
                        standardOption_.Add(new StandardOption(item));
                    }
                }
            }
        }
 public ConstDualBarrierInfo(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode barrierDateInfoNode = xmlNode.SelectSingleNode("barrierDateInfo");
     
     if (barrierDateInfoNode != null)
     {
         if (barrierDateInfoNode.Attributes["href"] != null || barrierDateInfoNode.Attributes["id"] != null) 
         {
             if (barrierDateInfoNode.Attributes["id"] != null) 
             {
                 barrierDateInfoIDRef_ = barrierDateInfoNode.Attributes["id"].Value;
                 BarrierDateInfo ob = new BarrierDateInfo(barrierDateInfoNode);
                 IDManager.SetID(barrierDateInfoIDRef_, ob);
             }
             else if (barrierDateInfoNode.Attributes["href"] != null)
             {
                 barrierDateInfoIDRef_ = barrierDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 barrierDateInfo_ = new BarrierDateInfo(barrierDateInfoNode);
             }
         }
         else
         {
             barrierDateInfo_ = new BarrierDateInfo(barrierDateInfoNode);
         }
     }
     
 
     XmlNode upperTriggerNode = xmlNode.SelectSingleNode("upperTrigger");
     
     if (upperTriggerNode != null)
     {
         if (upperTriggerNode.Attributes["href"] != null || upperTriggerNode.Attributes["id"] != null) 
         {
             if (upperTriggerNode.Attributes["id"] != null) 
             {
                 upperTriggerIDRef_ = upperTriggerNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(upperTriggerNode);
                 IDManager.SetID(upperTriggerIDRef_, ob);
             }
             else if (upperTriggerNode.Attributes["href"] != null)
             {
                 upperTriggerIDRef_ = upperTriggerNode.Attributes["href"].Value;
             }
             else
             {
                 upperTrigger_ = new XsdTypeDouble(upperTriggerNode);
             }
         }
         else
         {
             upperTrigger_ = new XsdTypeDouble(upperTriggerNode);
         }
     }
     
 
     XmlNode lowerTriggerNode = xmlNode.SelectSingleNode("lowerTrigger");
     
     if (lowerTriggerNode != null)
     {
         if (lowerTriggerNode.Attributes["href"] != null || lowerTriggerNode.Attributes["id"] != null) 
         {
             if (lowerTriggerNode.Attributes["id"] != null) 
             {
                 lowerTriggerIDRef_ = lowerTriggerNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(lowerTriggerNode);
                 IDManager.SetID(lowerTriggerIDRef_, ob);
             }
             else if (lowerTriggerNode.Attributes["href"] != null)
             {
                 lowerTriggerIDRef_ = lowerTriggerNode.Attributes["href"].Value;
             }
             else
             {
                 lowerTrigger_ = new XsdTypeDouble(lowerTriggerNode);
             }
         }
         else
         {
             lowerTrigger_ = new XsdTypeDouble(lowerTriggerNode);
         }
     }
     
 
     XmlNode pastEventOccDateNode = xmlNode.SelectSingleNode("pastEventOccDate");
     
     if (pastEventOccDateNode != null)
     {
         if (pastEventOccDateNode.Attributes["href"] != null || pastEventOccDateNode.Attributes["id"] != null) 
         {
             if (pastEventOccDateNode.Attributes["id"] != null) 
             {
                 pastEventOccDateIDRef_ = pastEventOccDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(pastEventOccDateNode);
                 IDManager.SetID(pastEventOccDateIDRef_, ob);
             }
             else if (pastEventOccDateNode.Attributes["href"] != null)
             {
                 pastEventOccDateIDRef_ = pastEventOccDateNode.Attributes["href"].Value;
             }
             else
             {
                 pastEventOccDate_ = new XsdTypeDate(pastEventOccDateNode);
             }
         }
         else
         {
             pastEventOccDate_ = new XsdTypeDate(pastEventOccDateNode);
         }
     }
     
 
     XmlNode pastEventOccValueNode = xmlNode.SelectSingleNode("pastEventOccValue");
     
     if (pastEventOccValueNode != null)
     {
         if (pastEventOccValueNode.Attributes["href"] != null || pastEventOccValueNode.Attributes["id"] != null) 
         {
             if (pastEventOccValueNode.Attributes["id"] != null) 
             {
                 pastEventOccValueIDRef_ = pastEventOccValueNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(pastEventOccValueNode);
                 IDManager.SetID(pastEventOccValueIDRef_, ob);
             }
             else if (pastEventOccValueNode.Attributes["href"] != null)
             {
                 pastEventOccValueIDRef_ = pastEventOccValueNode.Attributes["href"].Value;
             }
             else
             {
                 pastEventOccValue_ = new XsdTypeDouble(pastEventOccValueNode);
             }
         }
         else
         {
             pastEventOccValue_ = new XsdTypeDouble(pastEventOccValueNode);
         }
     }
     
 
     XmlNode refVariableFlag_eventOccDateNode = xmlNode.SelectSingleNode("refVariableFlag_eventOccDate");
     
     if (refVariableFlag_eventOccDateNode != null)
     {
         if (refVariableFlag_eventOccDateNode.Attributes["href"] != null || refVariableFlag_eventOccDateNode.Attributes["id"] != null) 
         {
             if (refVariableFlag_eventOccDateNode.Attributes["id"] != null) 
             {
                 refVariableFlag_eventOccDateIDRef_ = refVariableFlag_eventOccDateNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(refVariableFlag_eventOccDateNode);
                 IDManager.SetID(refVariableFlag_eventOccDateIDRef_, ob);
             }
             else if (refVariableFlag_eventOccDateNode.Attributes["href"] != null)
             {
                 refVariableFlag_eventOccDateIDRef_ = refVariableFlag_eventOccDateNode.Attributes["href"].Value;
             }
             else
             {
                 refVariableFlag_eventOccDate_ = new XsdTypeToken(refVariableFlag_eventOccDateNode);
             }
         }
         else
         {
             refVariableFlag_eventOccDate_ = new XsdTypeToken(refVariableFlag_eventOccDateNode);
         }
     }
     
 
     XmlNode refVariableFlag_eventOccValueNode = xmlNode.SelectSingleNode("refVariableFlag_eventOccValue");
     
     if (refVariableFlag_eventOccValueNode != null)
     {
         if (refVariableFlag_eventOccValueNode.Attributes["href"] != null || refVariableFlag_eventOccValueNode.Attributes["id"] != null) 
         {
             if (refVariableFlag_eventOccValueNode.Attributes["id"] != null) 
             {
                 refVariableFlag_eventOccValueIDRef_ = refVariableFlag_eventOccValueNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(refVariableFlag_eventOccValueNode);
                 IDManager.SetID(refVariableFlag_eventOccValueIDRef_, ob);
             }
             else if (refVariableFlag_eventOccValueNode.Attributes["href"] != null)
             {
                 refVariableFlag_eventOccValueIDRef_ = refVariableFlag_eventOccValueNode.Attributes["href"].Value;
             }
             else
             {
                 refVariableFlag_eventOccValue_ = new XsdTypeToken(refVariableFlag_eventOccValueNode);
             }
         }
         else
         {
             refVariableFlag_eventOccValue_ = new XsdTypeToken(refVariableFlag_eventOccValueNode);
         }
     }
     
 
 }
        public LowerBarrierEventCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList dateInformationNodeList = xmlNode.SelectNodes("dateInformation");

            if (dateInformationNodeList != null)
            {
                this.dateInformation_ = new List <DateInformation>();
                foreach (XmlNode item in dateInformationNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            dateInformationIDRef_ = item.Attributes["id"].Value;
                            dateInformation_.Add(new DateInformation(item));
                            IDManager.SetID(dateInformationIDRef_, dateInformation_[dateInformation_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            dateInformationIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            dateInformation_.Add(new DateInformation(item));
                        }
                    }
                    else
                    {
                        dateInformation_.Add(new DateInformation(item));
                    }
                }
            }


            XmlNodeList lowerTriggerNodeList = xmlNode.SelectNodes("lowerTrigger");

            if (lowerTriggerNodeList != null)
            {
                this.lowerTrigger_ = new List <XsdTypeDouble>();
                foreach (XmlNode item in lowerTriggerNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            lowerTriggerIDRef_ = item.Attributes["id"].Value;
                            lowerTrigger_.Add(new XsdTypeDouble(item));
                            IDManager.SetID(lowerTriggerIDRef_, lowerTrigger_[lowerTrigger_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            lowerTriggerIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            lowerTrigger_.Add(new XsdTypeDouble(item));
                        }
                    }
                    else
                    {
                        lowerTrigger_.Add(new XsdTypeDouble(item));
                    }
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }
        }
 public VariableCalculation(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode operator1DListNode = xmlNode.SelectSingleNode("operator1DList");
     
     if (operator1DListNode != null)
     {
         if (operator1DListNode.Attributes["href"] != null || operator1DListNode.Attributes["id"] != null) 
         {
             if (operator1DListNode.Attributes["id"] != null) 
             {
                 operator1DListIDRef_ = operator1DListNode.Attributes["id"].Value;
                 Operator1DList ob = new Operator1DList(operator1DListNode);
                 IDManager.SetID(operator1DListIDRef_, ob);
             }
             else if (operator1DListNode.Attributes["href"] != null)
             {
                 operator1DListIDRef_ = operator1DListNode.Attributes["href"].Value;
             }
             else
             {
                 operator1DList_ = new Operator1DList(operator1DListNode);
             }
         }
         else
         {
             operator1DList_ = new Operator1DList(operator1DListNode);
         }
     }
     
 
     XmlNode conditionOperatorNode = xmlNode.SelectSingleNode("conditionOperator");
     
     if (conditionOperatorNode != null)
     {
         if (conditionOperatorNode.Attributes["href"] != null || conditionOperatorNode.Attributes["id"] != null) 
         {
             if (conditionOperatorNode.Attributes["id"] != null) 
             {
                 conditionOperatorIDRef_ = conditionOperatorNode.Attributes["id"].Value;
                 ConditionOperator ob = new ConditionOperator(conditionOperatorNode);
                 IDManager.SetID(conditionOperatorIDRef_, ob);
             }
             else if (conditionOperatorNode.Attributes["href"] != null)
             {
                 conditionOperatorIDRef_ = conditionOperatorNode.Attributes["href"].Value;
             }
             else
             {
                 conditionOperator_ = new ConditionOperator(conditionOperatorNode);
             }
         }
         else
         {
             conditionOperator_ = new ConditionOperator(conditionOperatorNode);
         }
     }
     
 
 }
        public StopLossReturnCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode powerNode = xmlNode.SelectSingleNode("power");

            if (powerNode != null)
            {
                if (powerNode.Attributes["href"] != null || powerNode.Attributes["id"] != null)
                {
                    if (powerNode.Attributes["id"] != null)
                    {
                        powerIDRef_ = powerNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(powerNode);
                        IDManager.SetID(powerIDRef_, ob);
                    }
                    else if (powerNode.Attributes["href"] != null)
                    {
                        powerIDRef_ = powerNode.Attributes["href"].Value;
                    }
                    else
                    {
                        power_ = new XsdTypeToken(powerNode);
                    }
                }
                else
                {
                    power_ = new XsdTypeToken(powerNode);
                }
            }


            XmlNode lossTriggerNode = xmlNode.SelectSingleNode("lossTrigger");

            if (lossTriggerNode != null)
            {
                if (lossTriggerNode.Attributes["href"] != null || lossTriggerNode.Attributes["id"] != null)
                {
                    if (lossTriggerNode.Attributes["id"] != null)
                    {
                        lossTriggerIDRef_ = lossTriggerNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(lossTriggerNode);
                        IDManager.SetID(lossTriggerIDRef_, ob);
                    }
                    else if (lossTriggerNode.Attributes["href"] != null)
                    {
                        lossTriggerIDRef_ = lossTriggerNode.Attributes["href"].Value;
                    }
                    else
                    {
                        lossTrigger_ = new XsdTypeToken(lossTriggerNode);
                    }
                }
                else
                {
                    lossTrigger_ = new XsdTypeToken(lossTriggerNode);
                }
            }


            XmlNode maximumLossNode = xmlNode.SelectSingleNode("maximumLoss");

            if (maximumLossNode != null)
            {
                if (maximumLossNode.Attributes["href"] != null || maximumLossNode.Attributes["id"] != null)
                {
                    if (maximumLossNode.Attributes["id"] != null)
                    {
                        maximumLossIDRef_ = maximumLossNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(maximumLossNode);
                        IDManager.SetID(maximumLossIDRef_, ob);
                    }
                    else if (maximumLossNode.Attributes["href"] != null)
                    {
                        maximumLossIDRef_ = maximumLossNode.Attributes["href"].Value;
                    }
                    else
                    {
                        maximumLoss_ = new XsdTypeToken(maximumLossNode);
                    }
                }
                else
                {
                    maximumLoss_ = new XsdTypeToken(maximumLossNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode withNotionalNode = xmlNode.SelectSingleNode("withNotional");

            if (withNotionalNode != null)
            {
                if (withNotionalNode.Attributes["href"] != null || withNotionalNode.Attributes["id"] != null)
                {
                    if (withNotionalNode.Attributes["id"] != null)
                    {
                        withNotionalIDRef_ = withNotionalNode.Attributes["id"].Value;
                        XsdTypeBoolean ob = new XsdTypeBoolean(withNotionalNode);
                        IDManager.SetID(withNotionalIDRef_, ob);
                    }
                    else if (withNotionalNode.Attributes["href"] != null)
                    {
                        withNotionalIDRef_ = withNotionalNode.Attributes["href"].Value;
                    }
                    else
                    {
                        withNotional_ = new XsdTypeBoolean(withNotionalNode);
                    }
                }
                else
                {
                    withNotional_ = new XsdTypeBoolean(withNotionalNode);
                }
            }


            XmlNode isExpiredNode = xmlNode.SelectSingleNode("isExpired");

            if (isExpiredNode != null)
            {
                if (isExpiredNode.Attributes["href"] != null || isExpiredNode.Attributes["id"] != null)
                {
                    if (isExpiredNode.Attributes["id"] != null)
                    {
                        isExpiredIDRef_ = isExpiredNode.Attributes["id"].Value;
                        XsdTypeBoolean ob = new XsdTypeBoolean(isExpiredNode);
                        IDManager.SetID(isExpiredIDRef_, ob);
                    }
                    else if (isExpiredNode.Attributes["href"] != null)
                    {
                        isExpiredIDRef_ = isExpiredNode.Attributes["href"].Value;
                    }
                    else
                    {
                        isExpired_ = new XsdTypeBoolean(isExpiredNode);
                    }
                }
                else
                {
                    isExpired_ = new XsdTypeBoolean(isExpiredNode);
                }
            }
        }
 public SimpleRangeAccrualRateTrigger(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dayCounterNode = xmlNode.SelectSingleNode("dayCounter");
     
     if (dayCounterNode != null)
     {
         if (dayCounterNode.Attributes["href"] != null || dayCounterNode.Attributes["id"] != null) 
         {
             if (dayCounterNode.Attributes["id"] != null) 
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(dayCounterNode);
                 IDManager.SetID(dayCounterIDRef_, ob);
             }
             else if (dayCounterNode.Attributes["href"] != null)
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["href"].Value;
             }
             else
             {
                 dayCounter_ = new XsdTypeToken(dayCounterNode);
             }
         }
         else
         {
             dayCounter_ = new XsdTypeToken(dayCounterNode);
         }
     }
     
 
     XmlNode calculationStartDateNode = xmlNode.SelectSingleNode("calculationStartDate");
     
     if (calculationStartDateNode != null)
     {
         if (calculationStartDateNode.Attributes["href"] != null || calculationStartDateNode.Attributes["id"] != null) 
         {
             if (calculationStartDateNode.Attributes["id"] != null) 
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationStartDateNode);
                 IDManager.SetID(calculationStartDateIDRef_, ob);
             }
             else if (calculationStartDateNode.Attributes["href"] != null)
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
             }
         }
         else
         {
             calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
         }
     }
     
 
     XmlNode calculationEndDateNode = xmlNode.SelectSingleNode("calculationEndDate");
     
     if (calculationEndDateNode != null)
     {
         if (calculationEndDateNode.Attributes["href"] != null || calculationEndDateNode.Attributes["id"] != null) 
         {
             if (calculationEndDateNode.Attributes["id"] != null) 
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationEndDateNode);
                 IDManager.SetID(calculationEndDateIDRef_, ob);
             }
             else if (calculationEndDateNode.Attributes["href"] != null)
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
             }
         }
         else
         {
             calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode simpleRangeEventListNode = xmlNode.SelectSingleNode("simpleRangeEventList");
     
     if (simpleRangeEventListNode != null)
     {
         if (simpleRangeEventListNode.Attributes["href"] != null || simpleRangeEventListNode.Attributes["id"] != null) 
         {
             if (simpleRangeEventListNode.Attributes["id"] != null) 
             {
                 simpleRangeEventListIDRef_ = simpleRangeEventListNode.Attributes["id"].Value;
                 SimpleRangeEventList ob = new SimpleRangeEventList(simpleRangeEventListNode);
                 IDManager.SetID(simpleRangeEventListIDRef_, ob);
             }
             else if (simpleRangeEventListNode.Attributes["href"] != null)
             {
                 simpleRangeEventListIDRef_ = simpleRangeEventListNode.Attributes["href"].Value;
             }
             else
             {
                 simpleRangeEventList_ = new SimpleRangeEventList(simpleRangeEventListNode);
             }
         }
         else
         {
             simpleRangeEventList_ = new SimpleRangeEventList(simpleRangeEventListNode);
         }
     }
     
 
     XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");
     
     if (payoffDateInfoNode != null)
     {
         if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null) 
         {
             if (payoffDateInfoNode.Attributes["id"] != null) 
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                 PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                 IDManager.SetID(payoffDateInfoIDRef_, ob);
             }
             else if (payoffDateInfoNode.Attributes["href"] != null)
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
             }
         }
         else
         {
             payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
         }
     }
     
 
     XmlNode denumerDateNumNode = xmlNode.SelectSingleNode("denumerDateNum");
     
     if (denumerDateNumNode != null)
     {
         if (denumerDateNumNode.Attributes["href"] != null || denumerDateNumNode.Attributes["id"] != null) 
         {
             if (denumerDateNumNode.Attributes["id"] != null) 
             {
                 denumerDateNumIDRef_ = denumerDateNumNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(denumerDateNumNode);
                 IDManager.SetID(denumerDateNumIDRef_, ob);
             }
             else if (denumerDateNumNode.Attributes["href"] != null)
             {
                 denumerDateNumIDRef_ = denumerDateNumNode.Attributes["href"].Value;
             }
             else
             {
                 denumerDateNum_ = new XsdTypeToken(denumerDateNumNode);
             }
         }
         else
         {
             denumerDateNum_ = new XsdTypeToken(denumerDateNumNode);
         }
     }
     
 
 }
 public CallPutCompositeReturnCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList weightNodeList = xmlNode.SelectNodes("weight");
     
     if (weightNodeList != null)
     {
         this.weight_ = new List<XsdTypeDouble>();
         foreach (XmlNode item in weightNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     weightIDRef_ = item.Attributes["id"].Value;
                     weight_.Add(new XsdTypeDouble(item));
                     IDManager.SetID(weightIDRef_, weight_[weight_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     weightIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 weight_.Add(new XsdTypeDouble(item));
                 }
             }
             else
             {
                 weight_.Add(new XsdTypeDouble(item));
             }
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNodeList optionPayoffFunctionNodeList = xmlNode.SelectNodes("optionPayoffFunction");
     
     if (optionPayoffFunctionNodeList != null)
     {
         this.optionPayoffFunction_ = new List<OptionPayoffFunction>();
         foreach (XmlNode item in optionPayoffFunctionNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     optionPayoffFunctionIDRef_ = item.Attributes["id"].Value;
                     optionPayoffFunction_.Add(new OptionPayoffFunction(item));
                     IDManager.SetID(optionPayoffFunctionIDRef_, optionPayoffFunction_[optionPayoffFunction_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     optionPayoffFunctionIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 optionPayoffFunction_.Add(new OptionPayoffFunction(item));
                 }
             }
             else
             {
                 optionPayoffFunction_.Add(new OptionPayoffFunction(item));
             }
         }
     }
     
 
 }
 public VanillaCallOption(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode payoffDateInfoNode = xmlNode.SelectSingleNode("payoffDateInfo");
     
     if (payoffDateInfoNode != null)
     {
         if (payoffDateInfoNode.Attributes["href"] != null || payoffDateInfoNode.Attributes["id"] != null) 
         {
             if (payoffDateInfoNode.Attributes["id"] != null) 
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["id"].Value;
                 PayoffDateInfo ob = new PayoffDateInfo(payoffDateInfoNode);
                 IDManager.SetID(payoffDateInfoIDRef_, ob);
             }
             else if (payoffDateInfoNode.Attributes["href"] != null)
             {
                 payoffDateInfoIDRef_ = payoffDateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
             }
         }
         else
         {
             payoffDateInfo_ = new PayoffDateInfo(payoffDateInfoNode);
         }
     }
     
 
     XmlNode participateRateNode = xmlNode.SelectSingleNode("participateRate");
     
     if (participateRateNode != null)
     {
         if (participateRateNode.Attributes["href"] != null || participateRateNode.Attributes["id"] != null) 
         {
             if (participateRateNode.Attributes["id"] != null) 
             {
                 participateRateIDRef_ = participateRateNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(participateRateNode);
                 IDManager.SetID(participateRateIDRef_, ob);
             }
             else if (participateRateNode.Attributes["href"] != null)
             {
                 participateRateIDRef_ = participateRateNode.Attributes["href"].Value;
             }
             else
             {
                 participateRate_ = new XsdTypeDouble(participateRateNode);
             }
         }
         else
         {
             participateRate_ = new XsdTypeDouble(participateRateNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode strikeNode = xmlNode.SelectSingleNode("strike");
     
     if (strikeNode != null)
     {
         if (strikeNode.Attributes["href"] != null || strikeNode.Attributes["id"] != null) 
         {
             if (strikeNode.Attributes["id"] != null) 
             {
                 strikeIDRef_ = strikeNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(strikeNode);
                 IDManager.SetID(strikeIDRef_, ob);
             }
             else if (strikeNode.Attributes["href"] != null)
             {
                 strikeIDRef_ = strikeNode.Attributes["href"].Value;
             }
             else
             {
                 strike_ = new XsdTypeDouble(strikeNode);
             }
         }
         else
         {
             strike_ = new XsdTypeDouble(strikeNode);
         }
     }
     
 
     XmlNode lowerBoundNode = xmlNode.SelectSingleNode("lowerBound");
     
     if (lowerBoundNode != null)
     {
         if (lowerBoundNode.Attributes["href"] != null || lowerBoundNode.Attributes["id"] != null) 
         {
             if (lowerBoundNode.Attributes["id"] != null) 
             {
                 lowerBoundIDRef_ = lowerBoundNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(lowerBoundNode);
                 IDManager.SetID(lowerBoundIDRef_, ob);
             }
             else if (lowerBoundNode.Attributes["href"] != null)
             {
                 lowerBoundIDRef_ = lowerBoundNode.Attributes["href"].Value;
             }
             else
             {
                 lowerBound_ = new XsdTypeDouble(lowerBoundNode);
             }
         }
         else
         {
             lowerBound_ = new XsdTypeDouble(lowerBoundNode);
         }
     }
     
 
 }
Ejemplo n.º 21
0
        public CallPutCompositeReturnCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList weightNodeList = xmlNode.SelectNodes("weight");

            if (weightNodeList != null)
            {
                this.weight_ = new List <XsdTypeDouble>();
                foreach (XmlNode item in weightNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            weightIDRef_ = item.Attributes["id"].Value;
                            weight_.Add(new XsdTypeDouble(item));
                            IDManager.SetID(weightIDRef_, weight_[weight_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            weightIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            weight_.Add(new XsdTypeDouble(item));
                        }
                    }
                    else
                    {
                        weight_.Add(new XsdTypeDouble(item));
                    }
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNodeList optionPayoffFunctionNodeList = xmlNode.SelectNodes("optionPayoffFunction");

            if (optionPayoffFunctionNodeList != null)
            {
                this.optionPayoffFunction_ = new List <OptionPayoffFunction>();
                foreach (XmlNode item in optionPayoffFunctionNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            optionPayoffFunctionIDRef_ = item.Attributes["id"].Value;
                            optionPayoffFunction_.Add(new OptionPayoffFunction(item));
                            IDManager.SetID(optionPayoffFunctionIDRef_, optionPayoffFunction_[optionPayoffFunction_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            optionPayoffFunctionIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            optionPayoffFunction_.Add(new OptionPayoffFunction(item));
                        }
                    }
                    else
                    {
                        optionPayoffFunction_.Add(new OptionPayoffFunction(item));
                    }
                }
            }
        }