public EquityBermudaExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode bermudaExerciseDatesNode = xmlNode.SelectSingleNode("bermudaExerciseDates");

            if (bermudaExerciseDatesNode != null)
            {
                if (bermudaExerciseDatesNode.Attributes["href"] != null || bermudaExerciseDatesNode.Attributes["id"] != null)
                {
                    if (bermudaExerciseDatesNode.Attributes["id"] != null)
                    {
                        bermudaExerciseDatesIDRef_ = bermudaExerciseDatesNode.Attributes["id"].Value;
                        DateList ob = new DateList(bermudaExerciseDatesNode);
                        IDManager.SetID(bermudaExerciseDatesIDRef_, ob);
                    }
                    else if (bermudaExerciseDatesNode.Attributes["href"] != null)
                    {
                        bermudaExerciseDatesIDRef_ = bermudaExerciseDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        bermudaExerciseDates_ = new DateList(bermudaExerciseDatesNode);
                    }
                }
                else
                {
                    bermudaExerciseDates_ = new DateList(bermudaExerciseDatesNode);
                }
            }


            XmlNode latestExerciseTimeTypeNode = xmlNode.SelectSingleNode("latestExerciseTimeType");

            if (latestExerciseTimeTypeNode != null)
            {
                if (latestExerciseTimeTypeNode.Attributes["href"] != null || latestExerciseTimeTypeNode.Attributes["id"] != null)
                {
                    if (latestExerciseTimeTypeNode.Attributes["id"] != null)
                    {
                        latestExerciseTimeTypeIDRef_ = latestExerciseTimeTypeNode.Attributes["id"].Value;
                        TimeTypeEnum ob = new TimeTypeEnum(latestExerciseTimeTypeNode);
                        IDManager.SetID(latestExerciseTimeTypeIDRef_, ob);
                    }
                    else if (latestExerciseTimeTypeNode.Attributes["href"] != null)
                    {
                        latestExerciseTimeTypeIDRef_ = latestExerciseTimeTypeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        latestExerciseTimeType_ = new TimeTypeEnum(latestExerciseTimeTypeNode);
                    }
                }
                else
                {
                    latestExerciseTimeType_ = new TimeTypeEnum(latestExerciseTimeTypeNode);
                }
            }


            XmlNode equityExpirationTimeTypeNode = xmlNode.SelectSingleNode("equityExpirationTimeType");

            if (equityExpirationTimeTypeNode != null)
            {
                if (equityExpirationTimeTypeNode.Attributes["href"] != null || equityExpirationTimeTypeNode.Attributes["id"] != null)
                {
                    if (equityExpirationTimeTypeNode.Attributes["id"] != null)
                    {
                        equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["id"].Value;
                        TimeTypeEnum ob = new TimeTypeEnum(equityExpirationTimeTypeNode);
                        IDManager.SetID(equityExpirationTimeTypeIDRef_, ob);
                    }
                    else if (equityExpirationTimeTypeNode.Attributes["href"] != null)
                    {
                        equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
                    }
                }
                else
                {
                    equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
                }
            }


            XmlNode equityExpirationTimeNode = xmlNode.SelectSingleNode("equityExpirationTime");

            if (equityExpirationTimeNode != null)
            {
                if (equityExpirationTimeNode.Attributes["href"] != null || equityExpirationTimeNode.Attributes["id"] != null)
                {
                    if (equityExpirationTimeNode.Attributes["id"] != null)
                    {
                        equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["id"].Value;
                        BusinessCenterTime ob = new BusinessCenterTime(equityExpirationTimeNode);
                        IDManager.SetID(equityExpirationTimeIDRef_, ob);
                    }
                    else if (equityExpirationTimeNode.Attributes["href"] != null)
                    {
                        equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
                    }
                }
                else
                {
                    equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
                }
            }


            XmlNode expirationTimeDeterminationNode = xmlNode.SelectSingleNode("expirationTimeDetermination");

            if (expirationTimeDeterminationNode != null)
            {
                if (expirationTimeDeterminationNode.Attributes["href"] != null || expirationTimeDeterminationNode.Attributes["id"] != null)
                {
                    if (expirationTimeDeterminationNode.Attributes["id"] != null)
                    {
                        expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["id"].Value;
                        DeterminationMethod ob = new DeterminationMethod(expirationTimeDeterminationNode);
                        IDManager.SetID(expirationTimeDeterminationIDRef_, ob);
                    }
                    else if (expirationTimeDeterminationNode.Attributes["href"] != null)
                    {
                        expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
                    }
                }
                else
                {
                    expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
                }
            }


            XmlNode equityMultipleExerciseNode = xmlNode.SelectSingleNode("equityMultipleExercise");

            if (equityMultipleExerciseNode != null)
            {
                if (equityMultipleExerciseNode.Attributes["href"] != null || equityMultipleExerciseNode.Attributes["id"] != null)
                {
                    if (equityMultipleExerciseNode.Attributes["id"] != null)
                    {
                        equityMultipleExerciseIDRef_ = equityMultipleExerciseNode.Attributes["id"].Value;
                        EquityMultipleExercise ob = new EquityMultipleExercise(equityMultipleExerciseNode);
                        IDManager.SetID(equityMultipleExerciseIDRef_, ob);
                    }
                    else if (equityMultipleExerciseNode.Attributes["href"] != null)
                    {
                        equityMultipleExerciseIDRef_ = equityMultipleExerciseNode.Attributes["href"].Value;
                    }
                    else
                    {
                        equityMultipleExercise_ = new EquityMultipleExercise(equityMultipleExerciseNode);
                    }
                }
                else
                {
                    equityMultipleExercise_ = new EquityMultipleExercise(equityMultipleExerciseNode);
                }
            }
        }
Пример #2
0
        public FeaturePayment(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList payerPartyReferenceNodeList = xmlNode.SelectNodes("payerPartyReference");

            if (payerPartyReferenceNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in payerPartyReferenceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        payerPartyReferenceIDRef = item.Attributes["id"].Name;
                        PartyReference ob = PartyReference();
                        IDManager.SetID(payerPartyReferenceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        payerPartyReferenceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        payerPartyReference = new PartyReference(item);
                    }
                }
            }


            XmlNodeList payerAccountReferenceNodeList = xmlNode.SelectNodes("payerAccountReference");

            if (payerAccountReferenceNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in payerAccountReferenceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        payerAccountReferenceIDRef = item.Attributes["id"].Name;
                        AccountReference ob = AccountReference();
                        IDManager.SetID(payerAccountReferenceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        payerAccountReferenceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        payerAccountReference = new AccountReference(item);
                    }
                }
            }


            XmlNodeList receiverPartyReferenceNodeList = xmlNode.SelectNodes("receiverPartyReference");

            if (receiverPartyReferenceNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in receiverPartyReferenceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        receiverPartyReferenceIDRef = item.Attributes["id"].Name;
                        PartyReference ob = PartyReference();
                        IDManager.SetID(receiverPartyReferenceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        receiverPartyReferenceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        receiverPartyReference = new PartyReference(item);
                    }
                }
            }


            XmlNodeList receiverAccountReferenceNodeList = xmlNode.SelectNodes("receiverAccountReference");

            if (receiverAccountReferenceNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in receiverAccountReferenceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        receiverAccountReferenceIDRef = item.Attributes["id"].Name;
                        AccountReference ob = AccountReference();
                        IDManager.SetID(receiverAccountReferenceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        receiverAccountReferenceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        receiverAccountReference = new AccountReference(item);
                    }
                }
            }


            XmlNodeList levelPercentageNodeList = xmlNode.SelectNodes("levelPercentage");

            if (levelPercentageNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in levelPercentageNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        levelPercentageIDRef = item.Attributes["id"].Name;
                        XsdTypeDecimal ob = XsdTypeDecimal();
                        IDManager.SetID(levelPercentageIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        levelPercentageIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        levelPercentage = new XsdTypeDecimal(item);
                    }
                }
            }


            XmlNodeList amountNodeList = xmlNode.SelectNodes("amount");

            if (amountNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in amountNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        amountIDRef = item.Attributes["id"].Name;
                        NonNegativeDecimal ob = NonNegativeDecimal();
                        IDManager.SetID(amountIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        amountIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        amount = new NonNegativeDecimal(item);
                    }
                }
            }


            XmlNodeList timeNodeList = xmlNode.SelectNodes("time");

            if (timeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in timeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        timeIDRef = item.Attributes["id"].Name;
                        TimeTypeEnum ob = TimeTypeEnum();
                        IDManager.SetID(timeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        timeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        time = new TimeTypeEnum(item);
                    }
                }
            }


            XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency");

            if (currencyNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in currencyNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        currencyIDRef = item.Attributes["id"].Name;
                        Currency ob = Currency();
                        IDManager.SetID(currencyIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        currencyIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        currency = new Currency(item);
                    }
                }
            }


            XmlNodeList featurePaymentDateNodeList = xmlNode.SelectNodes("featurePaymentDate");

            if (featurePaymentDateNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in featurePaymentDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        featurePaymentDateIDRef = item.Attributes["id"].Name;
                        AdjustableOrRelativeDate ob = AdjustableOrRelativeDate();
                        IDManager.SetID(featurePaymentDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        featurePaymentDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        featurePaymentDate = new AdjustableOrRelativeDate(item);
                    }
                }
            }
        }
 public EquityAmericanExercise(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode latestExerciseTimeTypeNode = xmlNode.SelectSingleNode("latestExerciseTimeType");
     
     if (latestExerciseTimeTypeNode != null)
     {
         if (latestExerciseTimeTypeNode.Attributes["href"] != null || latestExerciseTimeTypeNode.Attributes["id"] != null) 
         {
             if (latestExerciseTimeTypeNode.Attributes["id"] != null) 
             {
                 latestExerciseTimeTypeIDRef_ = latestExerciseTimeTypeNode.Attributes["id"].Value;
                 TimeTypeEnum ob = new TimeTypeEnum(latestExerciseTimeTypeNode);
                 IDManager.SetID(latestExerciseTimeTypeIDRef_, ob);
             }
             else if (latestExerciseTimeTypeNode.Attributes["href"] != null)
             {
                 latestExerciseTimeTypeIDRef_ = latestExerciseTimeTypeNode.Attributes["href"].Value;
             }
             else
             {
                 latestExerciseTimeType_ = new TimeTypeEnum(latestExerciseTimeTypeNode);
             }
         }
         else
         {
             latestExerciseTimeType_ = new TimeTypeEnum(latestExerciseTimeTypeNode);
         }
     }
     
 
     XmlNode equityExpirationTimeTypeNode = xmlNode.SelectSingleNode("equityExpirationTimeType");
     
     if (equityExpirationTimeTypeNode != null)
     {
         if (equityExpirationTimeTypeNode.Attributes["href"] != null || equityExpirationTimeTypeNode.Attributes["id"] != null) 
         {
             if (equityExpirationTimeTypeNode.Attributes["id"] != null) 
             {
                 equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["id"].Value;
                 TimeTypeEnum ob = new TimeTypeEnum(equityExpirationTimeTypeNode);
                 IDManager.SetID(equityExpirationTimeTypeIDRef_, ob);
             }
             else if (equityExpirationTimeTypeNode.Attributes["href"] != null)
             {
                 equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["href"].Value;
             }
             else
             {
                 equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
             }
         }
         else
         {
             equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
         }
     }
     
 
     XmlNode equityExpirationTimeNode = xmlNode.SelectSingleNode("equityExpirationTime");
     
     if (equityExpirationTimeNode != null)
     {
         if (equityExpirationTimeNode.Attributes["href"] != null || equityExpirationTimeNode.Attributes["id"] != null) 
         {
             if (equityExpirationTimeNode.Attributes["id"] != null) 
             {
                 equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["id"].Value;
                 BusinessCenterTime ob = new BusinessCenterTime(equityExpirationTimeNode);
                 IDManager.SetID(equityExpirationTimeIDRef_, ob);
             }
             else if (equityExpirationTimeNode.Attributes["href"] != null)
             {
                 equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
             }
         }
         else
         {
             equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
         }
     }
     
 
     XmlNode expirationTimeDeterminationNode = xmlNode.SelectSingleNode("expirationTimeDetermination");
     
     if (expirationTimeDeterminationNode != null)
     {
         if (expirationTimeDeterminationNode.Attributes["href"] != null || expirationTimeDeterminationNode.Attributes["id"] != null) 
         {
             if (expirationTimeDeterminationNode.Attributes["id"] != null) 
             {
                 expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["id"].Value;
                 DeterminationMethod ob = new DeterminationMethod(expirationTimeDeterminationNode);
                 IDManager.SetID(expirationTimeDeterminationIDRef_, ob);
             }
             else if (expirationTimeDeterminationNode.Attributes["href"] != null)
             {
                 expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["href"].Value;
             }
             else
             {
                 expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
             }
         }
         else
         {
             expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
         }
     }
     
 
     XmlNode equityMultipleExerciseNode = xmlNode.SelectSingleNode("equityMultipleExercise");
     
     if (equityMultipleExerciseNode != null)
     {
         if (equityMultipleExerciseNode.Attributes["href"] != null || equityMultipleExerciseNode.Attributes["id"] != null) 
         {
             if (equityMultipleExerciseNode.Attributes["id"] != null) 
             {
                 equityMultipleExerciseIDRef_ = equityMultipleExerciseNode.Attributes["id"].Value;
                 EquityMultipleExercise ob = new EquityMultipleExercise(equityMultipleExerciseNode);
                 IDManager.SetID(equityMultipleExerciseIDRef_, ob);
             }
             else if (equityMultipleExerciseNode.Attributes["href"] != null)
             {
                 equityMultipleExerciseIDRef_ = equityMultipleExerciseNode.Attributes["href"].Value;
             }
             else
             {
                 equityMultipleExercise_ = new EquityMultipleExercise(equityMultipleExerciseNode);
             }
         }
         else
         {
             equityMultipleExercise_ = new EquityMultipleExercise(equityMultipleExerciseNode);
         }
     }
     
 
 }
        public EquityEuropeanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode expirationDateNode = xmlNode.SelectSingleNode("expirationDate");

            if (expirationDateNode != null)
            {
                if (expirationDateNode.Attributes["href"] != null || expirationDateNode.Attributes["id"] != null)
                {
                    if (expirationDateNode.Attributes["id"] != null)
                    {
                        expirationDateIDRef_ = expirationDateNode.Attributes["id"].Value;
                        AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(expirationDateNode);
                        IDManager.SetID(expirationDateIDRef_, ob);
                    }
                    else if (expirationDateNode.Attributes["href"] != null)
                    {
                        expirationDateIDRef_ = expirationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
                    }
                }
                else
                {
                    expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
                }
            }


            XmlNode equityExpirationTimeTypeNode = xmlNode.SelectSingleNode("equityExpirationTimeType");

            if (equityExpirationTimeTypeNode != null)
            {
                if (equityExpirationTimeTypeNode.Attributes["href"] != null || equityExpirationTimeTypeNode.Attributes["id"] != null)
                {
                    if (equityExpirationTimeTypeNode.Attributes["id"] != null)
                    {
                        equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["id"].Value;
                        TimeTypeEnum ob = new TimeTypeEnum(equityExpirationTimeTypeNode);
                        IDManager.SetID(equityExpirationTimeTypeIDRef_, ob);
                    }
                    else if (equityExpirationTimeTypeNode.Attributes["href"] != null)
                    {
                        equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
                    }
                }
                else
                {
                    equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
                }
            }


            XmlNode equityExpirationTimeNode = xmlNode.SelectSingleNode("equityExpirationTime");

            if (equityExpirationTimeNode != null)
            {
                if (equityExpirationTimeNode.Attributes["href"] != null || equityExpirationTimeNode.Attributes["id"] != null)
                {
                    if (equityExpirationTimeNode.Attributes["id"] != null)
                    {
                        equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["id"].Value;
                        BusinessCenterTime ob = new BusinessCenterTime(equityExpirationTimeNode);
                        IDManager.SetID(equityExpirationTimeIDRef_, ob);
                    }
                    else if (equityExpirationTimeNode.Attributes["href"] != null)
                    {
                        equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
                    }
                }
                else
                {
                    equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
                }
            }


            XmlNode expirationTimeDeterminationNode = xmlNode.SelectSingleNode("expirationTimeDetermination");

            if (expirationTimeDeterminationNode != null)
            {
                if (expirationTimeDeterminationNode.Attributes["href"] != null || expirationTimeDeterminationNode.Attributes["id"] != null)
                {
                    if (expirationTimeDeterminationNode.Attributes["id"] != null)
                    {
                        expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["id"].Value;
                        DeterminationMethod ob = new DeterminationMethod(expirationTimeDeterminationNode);
                        IDManager.SetID(expirationTimeDeterminationIDRef_, ob);
                    }
                    else if (expirationTimeDeterminationNode.Attributes["href"] != null)
                    {
                        expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
                    }
                }
                else
                {
                    expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
                }
            }
        }
 public EquityValuation(XmlNode xmlNode)
 {
     XmlNode valuationDateNode = xmlNode.SelectSingleNode("valuationDate");
     
     if (valuationDateNode != null)
     {
         if (valuationDateNode.Attributes["href"] != null || valuationDateNode.Attributes["id"] != null) 
         {
             if (valuationDateNode.Attributes["id"] != null) 
             {
                 valuationDateIDRef_ = valuationDateNode.Attributes["id"].Value;
                 AdjustableDateOrRelativeDateSequence ob = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
                 IDManager.SetID(valuationDateIDRef_, ob);
             }
             else if (valuationDateNode.Attributes["href"] != null)
             {
                 valuationDateIDRef_ = valuationDateNode.Attributes["href"].Value;
             }
             else
             {
                 valuationDate_ = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
             }
         }
         else
         {
             valuationDate_ = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
         }
     }
     
 
     XmlNode valuationDatesNode = xmlNode.SelectSingleNode("valuationDates");
     
     if (valuationDatesNode != null)
     {
         if (valuationDatesNode.Attributes["href"] != null || valuationDatesNode.Attributes["id"] != null) 
         {
             if (valuationDatesNode.Attributes["id"] != null) 
             {
                 valuationDatesIDRef_ = valuationDatesNode.Attributes["id"].Value;
                 AdjustableRelativeOrPeriodicDates ob = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
                 IDManager.SetID(valuationDatesIDRef_, ob);
             }
             else if (valuationDatesNode.Attributes["href"] != null)
             {
                 valuationDatesIDRef_ = valuationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 valuationDates_ = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
             }
         }
         else
         {
             valuationDates_ = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
         }
     }
     
 
     XmlNode valuationTimeTypeNode = xmlNode.SelectSingleNode("valuationTimeType");
     
     if (valuationTimeTypeNode != null)
     {
         if (valuationTimeTypeNode.Attributes["href"] != null || valuationTimeTypeNode.Attributes["id"] != null) 
         {
             if (valuationTimeTypeNode.Attributes["id"] != null) 
             {
                 valuationTimeTypeIDRef_ = valuationTimeTypeNode.Attributes["id"].Value;
                 TimeTypeEnum ob = new TimeTypeEnum(valuationTimeTypeNode);
                 IDManager.SetID(valuationTimeTypeIDRef_, ob);
             }
             else if (valuationTimeTypeNode.Attributes["href"] != null)
             {
                 valuationTimeTypeIDRef_ = valuationTimeTypeNode.Attributes["href"].Value;
             }
             else
             {
                 valuationTimeType_ = new TimeTypeEnum(valuationTimeTypeNode);
             }
         }
         else
         {
             valuationTimeType_ = new TimeTypeEnum(valuationTimeTypeNode);
         }
     }
     
 
     XmlNode valuationTimeNode = xmlNode.SelectSingleNode("valuationTime");
     
     if (valuationTimeNode != null)
     {
         if (valuationTimeNode.Attributes["href"] != null || valuationTimeNode.Attributes["id"] != null) 
         {
             if (valuationTimeNode.Attributes["id"] != null) 
             {
                 valuationTimeIDRef_ = valuationTimeNode.Attributes["id"].Value;
                 BusinessCenterTime ob = new BusinessCenterTime(valuationTimeNode);
                 IDManager.SetID(valuationTimeIDRef_, ob);
             }
             else if (valuationTimeNode.Attributes["href"] != null)
             {
                 valuationTimeIDRef_ = valuationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 valuationTime_ = new BusinessCenterTime(valuationTimeNode);
             }
         }
         else
         {
             valuationTime_ = new BusinessCenterTime(valuationTimeNode);
         }
     }
     
 
     XmlNode futuresPriceValuationNode = xmlNode.SelectSingleNode("futuresPriceValuation");
     
     if (futuresPriceValuationNode != null)
     {
         if (futuresPriceValuationNode.Attributes["href"] != null || futuresPriceValuationNode.Attributes["id"] != null) 
         {
             if (futuresPriceValuationNode.Attributes["id"] != null) 
             {
                 futuresPriceValuationIDRef_ = futuresPriceValuationNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(futuresPriceValuationNode);
                 IDManager.SetID(futuresPriceValuationIDRef_, ob);
             }
             else if (futuresPriceValuationNode.Attributes["href"] != null)
             {
                 futuresPriceValuationIDRef_ = futuresPriceValuationNode.Attributes["href"].Value;
             }
             else
             {
                 futuresPriceValuation_ = new XsdTypeBoolean(futuresPriceValuationNode);
             }
         }
         else
         {
             futuresPriceValuation_ = new XsdTypeBoolean(futuresPriceValuationNode);
         }
     }
     
 
     XmlNode optionsPriceValuationNode = xmlNode.SelectSingleNode("optionsPriceValuation");
     
     if (optionsPriceValuationNode != null)
     {
         if (optionsPriceValuationNode.Attributes["href"] != null || optionsPriceValuationNode.Attributes["id"] != null) 
         {
             if (optionsPriceValuationNode.Attributes["id"] != null) 
             {
                 optionsPriceValuationIDRef_ = optionsPriceValuationNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(optionsPriceValuationNode);
                 IDManager.SetID(optionsPriceValuationIDRef_, ob);
             }
             else if (optionsPriceValuationNode.Attributes["href"] != null)
             {
                 optionsPriceValuationIDRef_ = optionsPriceValuationNode.Attributes["href"].Value;
             }
             else
             {
                 optionsPriceValuation_ = new XsdTypeBoolean(optionsPriceValuationNode);
             }
         }
         else
         {
             optionsPriceValuation_ = new XsdTypeBoolean(optionsPriceValuationNode);
         }
     }
     
 
     XmlNode numberOfValuationDatesNode = xmlNode.SelectSingleNode("numberOfValuationDates");
     
     if (numberOfValuationDatesNode != null)
     {
         if (numberOfValuationDatesNode.Attributes["href"] != null || numberOfValuationDatesNode.Attributes["id"] != null) 
         {
             if (numberOfValuationDatesNode.Attributes["id"] != null) 
             {
                 numberOfValuationDatesIDRef_ = numberOfValuationDatesNode.Attributes["id"].Value;
                 XsdTypeNonNegativeInteger ob = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
                 IDManager.SetID(numberOfValuationDatesIDRef_, ob);
             }
             else if (numberOfValuationDatesNode.Attributes["href"] != null)
             {
                 numberOfValuationDatesIDRef_ = numberOfValuationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 numberOfValuationDates_ = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
             }
         }
         else
         {
             numberOfValuationDates_ = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
         }
     }
     
 
     XmlNode dividendValuationDatesNode = xmlNode.SelectSingleNode("dividendValuationDates");
     
     if (dividendValuationDatesNode != null)
     {
         if (dividendValuationDatesNode.Attributes["href"] != null || dividendValuationDatesNode.Attributes["id"] != null) 
         {
             if (dividendValuationDatesNode.Attributes["id"] != null) 
             {
                 dividendValuationDatesIDRef_ = dividendValuationDatesNode.Attributes["id"].Value;
                 AdjustableRelativeOrPeriodicDates ob = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
                 IDManager.SetID(dividendValuationDatesIDRef_, ob);
             }
             else if (dividendValuationDatesNode.Attributes["href"] != null)
             {
                 dividendValuationDatesIDRef_ = dividendValuationDatesNode.Attributes["href"].Value;
             }
             else
             {
                 dividendValuationDates_ = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
             }
         }
         else
         {
             dividendValuationDates_ = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
         }
     }
     
 
     XmlNode fPVFinalPriceElectionFallbackNode = xmlNode.SelectSingleNode("fPVFinalPriceElectionFallback");
     
     if (fPVFinalPriceElectionFallbackNode != null)
     {
         if (fPVFinalPriceElectionFallbackNode.Attributes["href"] != null || fPVFinalPriceElectionFallbackNode.Attributes["id"] != null) 
         {
             if (fPVFinalPriceElectionFallbackNode.Attributes["id"] != null) 
             {
                 fPVFinalPriceElectionFallbackIDRef_ = fPVFinalPriceElectionFallbackNode.Attributes["id"].Value;
                 FPVFinalPriceElectionFallbackEnum ob = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
                 IDManager.SetID(fPVFinalPriceElectionFallbackIDRef_, ob);
             }
             else if (fPVFinalPriceElectionFallbackNode.Attributes["href"] != null)
             {
                 fPVFinalPriceElectionFallbackIDRef_ = fPVFinalPriceElectionFallbackNode.Attributes["href"].Value;
             }
             else
             {
                 fPVFinalPriceElectionFallback_ = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
             }
         }
         else
         {
             fPVFinalPriceElectionFallback_ = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
         }
     }
     
 
 }
        public EquityAmericanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList latestExerciseTimeTypeNodeList = xmlNode.SelectNodes("latestExerciseTimeType");

            if (latestExerciseTimeTypeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in latestExerciseTimeTypeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        latestExerciseTimeTypeIDRef = item.Attributes["id"].Name;
                        TimeTypeEnum ob = TimeTypeEnum();
                        IDManager.SetID(latestExerciseTimeTypeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        latestExerciseTimeTypeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        latestExerciseTimeType = new TimeTypeEnum(item);
                    }
                }
            }


            XmlNodeList equityExpirationTimeTypeNodeList = xmlNode.SelectNodes("equityExpirationTimeType");

            if (equityExpirationTimeTypeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in equityExpirationTimeTypeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        equityExpirationTimeTypeIDRef = item.Attributes["id"].Name;
                        TimeTypeEnum ob = TimeTypeEnum();
                        IDManager.SetID(equityExpirationTimeTypeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        equityExpirationTimeTypeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        equityExpirationTimeType = new TimeTypeEnum(item);
                    }
                }
            }


            XmlNodeList equityExpirationTimeNodeList = xmlNode.SelectNodes("equityExpirationTime");

            if (equityExpirationTimeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in equityExpirationTimeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        equityExpirationTimeIDRef = item.Attributes["id"].Name;
                        BusinessCenterTime ob = BusinessCenterTime();
                        IDManager.SetID(equityExpirationTimeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        equityExpirationTimeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        equityExpirationTime = new BusinessCenterTime(item);
                    }
                }
            }


            XmlNodeList expirationTimeDeterminationNodeList = xmlNode.SelectNodes("expirationTimeDetermination");

            if (expirationTimeDeterminationNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in expirationTimeDeterminationNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        expirationTimeDeterminationIDRef = item.Attributes["id"].Name;
                        DeterminationMethod ob = DeterminationMethod();
                        IDManager.SetID(expirationTimeDeterminationIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        expirationTimeDeterminationIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        expirationTimeDetermination = new DeterminationMethod(item);
                    }
                }
            }


            XmlNodeList equityMultipleExerciseNodeList = xmlNode.SelectNodes("equityMultipleExercise");

            if (equityMultipleExerciseNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in equityMultipleExerciseNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        equityMultipleExerciseIDRef = item.Attributes["id"].Name;
                        EquityMultipleExercise ob = EquityMultipleExercise();
                        IDManager.SetID(equityMultipleExerciseIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        equityMultipleExerciseIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        equityMultipleExercise = new EquityMultipleExercise(item);
                    }
                }
            }
        }
        public EquityValuation(XmlNode xmlNode)
        {
            XmlNodeList valuationDateNodeList = xmlNode.SelectNodes("valuationDate");

            if (valuationDateNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in valuationDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        valuationDateIDRef = item.Attributes["id"].Name;
                        AdjustableDateOrRelativeDateSequence ob = AdjustableDateOrRelativeDateSequence();
                        IDManager.SetID(valuationDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        valuationDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        valuationDate = new AdjustableDateOrRelativeDateSequence(item);
                    }
                }
            }


            XmlNodeList valuationDatesNodeList = xmlNode.SelectNodes("valuationDates");

            if (valuationDatesNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in valuationDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        valuationDatesIDRef = item.Attributes["id"].Name;
                        AdjustableRelativeOrPeriodicDates ob = AdjustableRelativeOrPeriodicDates();
                        IDManager.SetID(valuationDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        valuationDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        valuationDates = new AdjustableRelativeOrPeriodicDates(item);
                    }
                }
            }


            XmlNodeList valuationTimeTypeNodeList = xmlNode.SelectNodes("valuationTimeType");

            if (valuationTimeTypeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in valuationTimeTypeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        valuationTimeTypeIDRef = item.Attributes["id"].Name;
                        TimeTypeEnum ob = TimeTypeEnum();
                        IDManager.SetID(valuationTimeTypeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        valuationTimeTypeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        valuationTimeType = new TimeTypeEnum(item);
                    }
                }
            }


            XmlNodeList valuationTimeNodeList = xmlNode.SelectNodes("valuationTime");

            if (valuationTimeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in valuationTimeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        valuationTimeIDRef = item.Attributes["id"].Name;
                        BusinessCenterTime ob = BusinessCenterTime();
                        IDManager.SetID(valuationTimeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        valuationTimeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        valuationTime = new BusinessCenterTime(item);
                    }
                }
            }


            XmlNodeList futuresPriceValuationNodeList = xmlNode.SelectNodes("futuresPriceValuation");

            if (futuresPriceValuationNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in futuresPriceValuationNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        futuresPriceValuationIDRef = item.Attributes["id"].Name;
                        XsdTypeBoolean ob = XsdTypeBoolean();
                        IDManager.SetID(futuresPriceValuationIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        futuresPriceValuationIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        futuresPriceValuation = new XsdTypeBoolean(item);
                    }
                }
            }


            XmlNodeList optionsPriceValuationNodeList = xmlNode.SelectNodes("optionsPriceValuation");

            if (optionsPriceValuationNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in optionsPriceValuationNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        optionsPriceValuationIDRef = item.Attributes["id"].Name;
                        XsdTypeBoolean ob = XsdTypeBoolean();
                        IDManager.SetID(optionsPriceValuationIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        optionsPriceValuationIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        optionsPriceValuation = new XsdTypeBoolean(item);
                    }
                }
            }


            XmlNodeList numberOfValuationDatesNodeList = xmlNode.SelectNodes("numberOfValuationDates");

            if (numberOfValuationDatesNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in numberOfValuationDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        numberOfValuationDatesIDRef = item.Attributes["id"].Name;
                        XsdTypeNonNegativeInteger ob = XsdTypeNonNegativeInteger();
                        IDManager.SetID(numberOfValuationDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        numberOfValuationDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        numberOfValuationDates = new XsdTypeNonNegativeInteger(item);
                    }
                }
            }


            XmlNodeList dividendValuationDatesNodeList = xmlNode.SelectNodes("dividendValuationDates");

            if (dividendValuationDatesNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in dividendValuationDatesNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dividendValuationDatesIDRef = item.Attributes["id"].Name;
                        AdjustableRelativeOrPeriodicDates ob = AdjustableRelativeOrPeriodicDates();
                        IDManager.SetID(dividendValuationDatesIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dividendValuationDatesIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        dividendValuationDates = new AdjustableRelativeOrPeriodicDates(item);
                    }
                }
            }


            XmlNodeList fPVFinalPriceElectionFallbackNodeList = xmlNode.SelectNodes("fPVFinalPriceElectionFallback");

            if (fPVFinalPriceElectionFallbackNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in fPVFinalPriceElectionFallbackNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        fPVFinalPriceElectionFallbackIDRef = item.Attributes["id"].Name;
                        FPVFinalPriceElectionFallbackEnum ob = FPVFinalPriceElectionFallbackEnum();
                        IDManager.SetID(fPVFinalPriceElectionFallbackIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        fPVFinalPriceElectionFallbackIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        fPVFinalPriceElectionFallback = new FPVFinalPriceElectionFallbackEnum(item);
                    }
                }
            }
        }
Пример #8
0
        public EquityEuropeanExercise(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList expirationDateNodeList = xmlNode.SelectNodes("expirationDate");

            if (expirationDateNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in expirationDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        expirationDateIDRef = item.Attributes["id"].Name;
                        AdjustableOrRelativeDate ob = AdjustableOrRelativeDate();
                        IDManager.SetID(expirationDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        expirationDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        expirationDate = new AdjustableOrRelativeDate(item);
                    }
                }
            }


            XmlNodeList equityExpirationTimeTypeNodeList = xmlNode.SelectNodes("equityExpirationTimeType");

            if (equityExpirationTimeTypeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in equityExpirationTimeTypeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        equityExpirationTimeTypeIDRef = item.Attributes["id"].Name;
                        TimeTypeEnum ob = TimeTypeEnum();
                        IDManager.SetID(equityExpirationTimeTypeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        equityExpirationTimeTypeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        equityExpirationTimeType = new TimeTypeEnum(item);
                    }
                }
            }


            XmlNodeList equityExpirationTimeNodeList = xmlNode.SelectNodes("equityExpirationTime");

            if (equityExpirationTimeNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in equityExpirationTimeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        equityExpirationTimeIDRef = item.Attributes["id"].Name;
                        BusinessCenterTime ob = BusinessCenterTime();
                        IDManager.SetID(equityExpirationTimeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        equityExpirationTimeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        equityExpirationTime = new BusinessCenterTime(item);
                    }
                }
            }


            XmlNodeList expirationTimeDeterminationNodeList = xmlNode.SelectNodes("expirationTimeDetermination");

            if (expirationTimeDeterminationNodeList.Count > 1)
            {
                throw new Exception();
            }

            foreach (XmlNode item in expirationTimeDeterminationNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        expirationTimeDeterminationIDRef = item.Attributes["id"].Name;
                        DeterminationMethod ob = DeterminationMethod();
                        IDManager.SetID(expirationTimeDeterminationIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        expirationTimeDeterminationIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        expirationTimeDetermination = new DeterminationMethod(item);
                    }
                }
            }
        }
Пример #9
0
        public FeaturePayment(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode payerPartyReferenceNode = xmlNode.SelectSingleNode("payerPartyReference");

            if (payerPartyReferenceNode != null)
            {
                if (payerPartyReferenceNode.Attributes["href"] != null || payerPartyReferenceNode.Attributes["id"] != null)
                {
                    if (payerPartyReferenceNode.Attributes["id"] != null)
                    {
                        payerPartyReferenceIDRef_ = payerPartyReferenceNode.Attributes["id"].Value;
                        PartyReference ob = new PartyReference(payerPartyReferenceNode);
                        IDManager.SetID(payerPartyReferenceIDRef_, ob);
                    }
                    else if (payerPartyReferenceNode.Attributes["href"] != null)
                    {
                        payerPartyReferenceIDRef_ = payerPartyReferenceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payerPartyReference_ = new PartyReference(payerPartyReferenceNode);
                    }
                }
                else
                {
                    payerPartyReference_ = new PartyReference(payerPartyReferenceNode);
                }
            }


            XmlNode payerAccountReferenceNode = xmlNode.SelectSingleNode("payerAccountReference");

            if (payerAccountReferenceNode != null)
            {
                if (payerAccountReferenceNode.Attributes["href"] != null || payerAccountReferenceNode.Attributes["id"] != null)
                {
                    if (payerAccountReferenceNode.Attributes["id"] != null)
                    {
                        payerAccountReferenceIDRef_ = payerAccountReferenceNode.Attributes["id"].Value;
                        AccountReference ob = new AccountReference(payerAccountReferenceNode);
                        IDManager.SetID(payerAccountReferenceIDRef_, ob);
                    }
                    else if (payerAccountReferenceNode.Attributes["href"] != null)
                    {
                        payerAccountReferenceIDRef_ = payerAccountReferenceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        payerAccountReference_ = new AccountReference(payerAccountReferenceNode);
                    }
                }
                else
                {
                    payerAccountReference_ = new AccountReference(payerAccountReferenceNode);
                }
            }


            XmlNode receiverPartyReferenceNode = xmlNode.SelectSingleNode("receiverPartyReference");

            if (receiverPartyReferenceNode != null)
            {
                if (receiverPartyReferenceNode.Attributes["href"] != null || receiverPartyReferenceNode.Attributes["id"] != null)
                {
                    if (receiverPartyReferenceNode.Attributes["id"] != null)
                    {
                        receiverPartyReferenceIDRef_ = receiverPartyReferenceNode.Attributes["id"].Value;
                        PartyReference ob = new PartyReference(receiverPartyReferenceNode);
                        IDManager.SetID(receiverPartyReferenceIDRef_, ob);
                    }
                    else if (receiverPartyReferenceNode.Attributes["href"] != null)
                    {
                        receiverPartyReferenceIDRef_ = receiverPartyReferenceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        receiverPartyReference_ = new PartyReference(receiverPartyReferenceNode);
                    }
                }
                else
                {
                    receiverPartyReference_ = new PartyReference(receiverPartyReferenceNode);
                }
            }


            XmlNode receiverAccountReferenceNode = xmlNode.SelectSingleNode("receiverAccountReference");

            if (receiverAccountReferenceNode != null)
            {
                if (receiverAccountReferenceNode.Attributes["href"] != null || receiverAccountReferenceNode.Attributes["id"] != null)
                {
                    if (receiverAccountReferenceNode.Attributes["id"] != null)
                    {
                        receiverAccountReferenceIDRef_ = receiverAccountReferenceNode.Attributes["id"].Value;
                        AccountReference ob = new AccountReference(receiverAccountReferenceNode);
                        IDManager.SetID(receiverAccountReferenceIDRef_, ob);
                    }
                    else if (receiverAccountReferenceNode.Attributes["href"] != null)
                    {
                        receiverAccountReferenceIDRef_ = receiverAccountReferenceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        receiverAccountReference_ = new AccountReference(receiverAccountReferenceNode);
                    }
                }
                else
                {
                    receiverAccountReference_ = new AccountReference(receiverAccountReferenceNode);
                }
            }


            XmlNode levelPercentageNode = xmlNode.SelectSingleNode("levelPercentage");

            if (levelPercentageNode != null)
            {
                if (levelPercentageNode.Attributes["href"] != null || levelPercentageNode.Attributes["id"] != null)
                {
                    if (levelPercentageNode.Attributes["id"] != null)
                    {
                        levelPercentageIDRef_ = levelPercentageNode.Attributes["id"].Value;
                        XsdTypeDecimal ob = new XsdTypeDecimal(levelPercentageNode);
                        IDManager.SetID(levelPercentageIDRef_, ob);
                    }
                    else if (levelPercentageNode.Attributes["href"] != null)
                    {
                        levelPercentageIDRef_ = levelPercentageNode.Attributes["href"].Value;
                    }
                    else
                    {
                        levelPercentage_ = new XsdTypeDecimal(levelPercentageNode);
                    }
                }
                else
                {
                    levelPercentage_ = new XsdTypeDecimal(levelPercentageNode);
                }
            }


            XmlNode amountNode = xmlNode.SelectSingleNode("amount");

            if (amountNode != null)
            {
                if (amountNode.Attributes["href"] != null || amountNode.Attributes["id"] != null)
                {
                    if (amountNode.Attributes["id"] != null)
                    {
                        amountIDRef_ = amountNode.Attributes["id"].Value;
                        NonNegativeDecimal ob = new NonNegativeDecimal(amountNode);
                        IDManager.SetID(amountIDRef_, ob);
                    }
                    else if (amountNode.Attributes["href"] != null)
                    {
                        amountIDRef_ = amountNode.Attributes["href"].Value;
                    }
                    else
                    {
                        amount_ = new NonNegativeDecimal(amountNode);
                    }
                }
                else
                {
                    amount_ = new NonNegativeDecimal(amountNode);
                }
            }


            XmlNode timeNode = xmlNode.SelectSingleNode("time");

            if (timeNode != null)
            {
                if (timeNode.Attributes["href"] != null || timeNode.Attributes["id"] != null)
                {
                    if (timeNode.Attributes["id"] != null)
                    {
                        timeIDRef_ = timeNode.Attributes["id"].Value;
                        TimeTypeEnum ob = new TimeTypeEnum(timeNode);
                        IDManager.SetID(timeIDRef_, ob);
                    }
                    else if (timeNode.Attributes["href"] != null)
                    {
                        timeIDRef_ = timeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        time_ = new TimeTypeEnum(timeNode);
                    }
                }
                else
                {
                    time_ = new TimeTypeEnum(timeNode);
                }
            }


            XmlNode currencyNode = xmlNode.SelectSingleNode("currency");

            if (currencyNode != null)
            {
                if (currencyNode.Attributes["href"] != null || currencyNode.Attributes["id"] != null)
                {
                    if (currencyNode.Attributes["id"] != null)
                    {
                        currencyIDRef_ = currencyNode.Attributes["id"].Value;
                        Currency ob = new Currency(currencyNode);
                        IDManager.SetID(currencyIDRef_, ob);
                    }
                    else if (currencyNode.Attributes["href"] != null)
                    {
                        currencyIDRef_ = currencyNode.Attributes["href"].Value;
                    }
                    else
                    {
                        currency_ = new Currency(currencyNode);
                    }
                }
                else
                {
                    currency_ = new Currency(currencyNode);
                }
            }


            XmlNode featurePaymentDateNode = xmlNode.SelectSingleNode("featurePaymentDate");

            if (featurePaymentDateNode != null)
            {
                if (featurePaymentDateNode.Attributes["href"] != null || featurePaymentDateNode.Attributes["id"] != null)
                {
                    if (featurePaymentDateNode.Attributes["id"] != null)
                    {
                        featurePaymentDateIDRef_ = featurePaymentDateNode.Attributes["id"].Value;
                        AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(featurePaymentDateNode);
                        IDManager.SetID(featurePaymentDateIDRef_, ob);
                    }
                    else if (featurePaymentDateNode.Attributes["href"] != null)
                    {
                        featurePaymentDateIDRef_ = featurePaymentDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        featurePaymentDate_ = new AdjustableOrRelativeDate(featurePaymentDateNode);
                    }
                }
                else
                {
                    featurePaymentDate_ = new AdjustableOrRelativeDate(featurePaymentDateNode);
                }
            }
        }
Пример #10
0
        public EquityValuation(XmlNode xmlNode)
        {
            XmlNode valuationDateNode = xmlNode.SelectSingleNode("valuationDate");

            if (valuationDateNode != null)
            {
                if (valuationDateNode.Attributes["href"] != null || valuationDateNode.Attributes["id"] != null)
                {
                    if (valuationDateNode.Attributes["id"] != null)
                    {
                        valuationDateIDRef_ = valuationDateNode.Attributes["id"].Value;
                        AdjustableDateOrRelativeDateSequence ob = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
                        IDManager.SetID(valuationDateIDRef_, ob);
                    }
                    else if (valuationDateNode.Attributes["href"] != null)
                    {
                        valuationDateIDRef_ = valuationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        valuationDate_ = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
                    }
                }
                else
                {
                    valuationDate_ = new AdjustableDateOrRelativeDateSequence(valuationDateNode);
                }
            }


            XmlNode valuationDatesNode = xmlNode.SelectSingleNode("valuationDates");

            if (valuationDatesNode != null)
            {
                if (valuationDatesNode.Attributes["href"] != null || valuationDatesNode.Attributes["id"] != null)
                {
                    if (valuationDatesNode.Attributes["id"] != null)
                    {
                        valuationDatesIDRef_ = valuationDatesNode.Attributes["id"].Value;
                        AdjustableRelativeOrPeriodicDates ob = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
                        IDManager.SetID(valuationDatesIDRef_, ob);
                    }
                    else if (valuationDatesNode.Attributes["href"] != null)
                    {
                        valuationDatesIDRef_ = valuationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        valuationDates_ = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
                    }
                }
                else
                {
                    valuationDates_ = new AdjustableRelativeOrPeriodicDates(valuationDatesNode);
                }
            }


            XmlNode valuationTimeTypeNode = xmlNode.SelectSingleNode("valuationTimeType");

            if (valuationTimeTypeNode != null)
            {
                if (valuationTimeTypeNode.Attributes["href"] != null || valuationTimeTypeNode.Attributes["id"] != null)
                {
                    if (valuationTimeTypeNode.Attributes["id"] != null)
                    {
                        valuationTimeTypeIDRef_ = valuationTimeTypeNode.Attributes["id"].Value;
                        TimeTypeEnum ob = new TimeTypeEnum(valuationTimeTypeNode);
                        IDManager.SetID(valuationTimeTypeIDRef_, ob);
                    }
                    else if (valuationTimeTypeNode.Attributes["href"] != null)
                    {
                        valuationTimeTypeIDRef_ = valuationTimeTypeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        valuationTimeType_ = new TimeTypeEnum(valuationTimeTypeNode);
                    }
                }
                else
                {
                    valuationTimeType_ = new TimeTypeEnum(valuationTimeTypeNode);
                }
            }


            XmlNode valuationTimeNode = xmlNode.SelectSingleNode("valuationTime");

            if (valuationTimeNode != null)
            {
                if (valuationTimeNode.Attributes["href"] != null || valuationTimeNode.Attributes["id"] != null)
                {
                    if (valuationTimeNode.Attributes["id"] != null)
                    {
                        valuationTimeIDRef_ = valuationTimeNode.Attributes["id"].Value;
                        BusinessCenterTime ob = new BusinessCenterTime(valuationTimeNode);
                        IDManager.SetID(valuationTimeIDRef_, ob);
                    }
                    else if (valuationTimeNode.Attributes["href"] != null)
                    {
                        valuationTimeIDRef_ = valuationTimeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        valuationTime_ = new BusinessCenterTime(valuationTimeNode);
                    }
                }
                else
                {
                    valuationTime_ = new BusinessCenterTime(valuationTimeNode);
                }
            }


            XmlNode futuresPriceValuationNode = xmlNode.SelectSingleNode("futuresPriceValuation");

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


            XmlNode optionsPriceValuationNode = xmlNode.SelectSingleNode("optionsPriceValuation");

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


            XmlNode numberOfValuationDatesNode = xmlNode.SelectSingleNode("numberOfValuationDates");

            if (numberOfValuationDatesNode != null)
            {
                if (numberOfValuationDatesNode.Attributes["href"] != null || numberOfValuationDatesNode.Attributes["id"] != null)
                {
                    if (numberOfValuationDatesNode.Attributes["id"] != null)
                    {
                        numberOfValuationDatesIDRef_ = numberOfValuationDatesNode.Attributes["id"].Value;
                        XsdTypeNonNegativeInteger ob = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
                        IDManager.SetID(numberOfValuationDatesIDRef_, ob);
                    }
                    else if (numberOfValuationDatesNode.Attributes["href"] != null)
                    {
                        numberOfValuationDatesIDRef_ = numberOfValuationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        numberOfValuationDates_ = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
                    }
                }
                else
                {
                    numberOfValuationDates_ = new XsdTypeNonNegativeInteger(numberOfValuationDatesNode);
                }
            }


            XmlNode dividendValuationDatesNode = xmlNode.SelectSingleNode("dividendValuationDates");

            if (dividendValuationDatesNode != null)
            {
                if (dividendValuationDatesNode.Attributes["href"] != null || dividendValuationDatesNode.Attributes["id"] != null)
                {
                    if (dividendValuationDatesNode.Attributes["id"] != null)
                    {
                        dividendValuationDatesIDRef_ = dividendValuationDatesNode.Attributes["id"].Value;
                        AdjustableRelativeOrPeriodicDates ob = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
                        IDManager.SetID(dividendValuationDatesIDRef_, ob);
                    }
                    else if (dividendValuationDatesNode.Attributes["href"] != null)
                    {
                        dividendValuationDatesIDRef_ = dividendValuationDatesNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dividendValuationDates_ = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
                    }
                }
                else
                {
                    dividendValuationDates_ = new AdjustableRelativeOrPeriodicDates(dividendValuationDatesNode);
                }
            }


            XmlNode fPVFinalPriceElectionFallbackNode = xmlNode.SelectSingleNode("fPVFinalPriceElectionFallback");

            if (fPVFinalPriceElectionFallbackNode != null)
            {
                if (fPVFinalPriceElectionFallbackNode.Attributes["href"] != null || fPVFinalPriceElectionFallbackNode.Attributes["id"] != null)
                {
                    if (fPVFinalPriceElectionFallbackNode.Attributes["id"] != null)
                    {
                        fPVFinalPriceElectionFallbackIDRef_ = fPVFinalPriceElectionFallbackNode.Attributes["id"].Value;
                        FPVFinalPriceElectionFallbackEnum ob = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
                        IDManager.SetID(fPVFinalPriceElectionFallbackIDRef_, ob);
                    }
                    else if (fPVFinalPriceElectionFallbackNode.Attributes["href"] != null)
                    {
                        fPVFinalPriceElectionFallbackIDRef_ = fPVFinalPriceElectionFallbackNode.Attributes["href"].Value;
                    }
                    else
                    {
                        fPVFinalPriceElectionFallback_ = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
                    }
                }
                else
                {
                    fPVFinalPriceElectionFallback_ = new FPVFinalPriceElectionFallbackEnum(fPVFinalPriceElectionFallbackNode);
                }
            }
        }
 public FeaturePayment(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode payerPartyReferenceNode = xmlNode.SelectSingleNode("payerPartyReference");
     
     if (payerPartyReferenceNode != null)
     {
         if (payerPartyReferenceNode.Attributes["href"] != null || payerPartyReferenceNode.Attributes["id"] != null) 
         {
             if (payerPartyReferenceNode.Attributes["id"] != null) 
             {
                 payerPartyReferenceIDRef_ = payerPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(payerPartyReferenceNode);
                 IDManager.SetID(payerPartyReferenceIDRef_, ob);
             }
             else if (payerPartyReferenceNode.Attributes["href"] != null)
             {
                 payerPartyReferenceIDRef_ = payerPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 payerPartyReference_ = new PartyReference(payerPartyReferenceNode);
             }
         }
         else
         {
             payerPartyReference_ = new PartyReference(payerPartyReferenceNode);
         }
     }
     
 
     XmlNode payerAccountReferenceNode = xmlNode.SelectSingleNode("payerAccountReference");
     
     if (payerAccountReferenceNode != null)
     {
         if (payerAccountReferenceNode.Attributes["href"] != null || payerAccountReferenceNode.Attributes["id"] != null) 
         {
             if (payerAccountReferenceNode.Attributes["id"] != null) 
             {
                 payerAccountReferenceIDRef_ = payerAccountReferenceNode.Attributes["id"].Value;
                 AccountReference ob = new AccountReference(payerAccountReferenceNode);
                 IDManager.SetID(payerAccountReferenceIDRef_, ob);
             }
             else if (payerAccountReferenceNode.Attributes["href"] != null)
             {
                 payerAccountReferenceIDRef_ = payerAccountReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 payerAccountReference_ = new AccountReference(payerAccountReferenceNode);
             }
         }
         else
         {
             payerAccountReference_ = new AccountReference(payerAccountReferenceNode);
         }
     }
     
 
     XmlNode receiverPartyReferenceNode = xmlNode.SelectSingleNode("receiverPartyReference");
     
     if (receiverPartyReferenceNode != null)
     {
         if (receiverPartyReferenceNode.Attributes["href"] != null || receiverPartyReferenceNode.Attributes["id"] != null) 
         {
             if (receiverPartyReferenceNode.Attributes["id"] != null) 
             {
                 receiverPartyReferenceIDRef_ = receiverPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(receiverPartyReferenceNode);
                 IDManager.SetID(receiverPartyReferenceIDRef_, ob);
             }
             else if (receiverPartyReferenceNode.Attributes["href"] != null)
             {
                 receiverPartyReferenceIDRef_ = receiverPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 receiverPartyReference_ = new PartyReference(receiverPartyReferenceNode);
             }
         }
         else
         {
             receiverPartyReference_ = new PartyReference(receiverPartyReferenceNode);
         }
     }
     
 
     XmlNode receiverAccountReferenceNode = xmlNode.SelectSingleNode("receiverAccountReference");
     
     if (receiverAccountReferenceNode != null)
     {
         if (receiverAccountReferenceNode.Attributes["href"] != null || receiverAccountReferenceNode.Attributes["id"] != null) 
         {
             if (receiverAccountReferenceNode.Attributes["id"] != null) 
             {
                 receiverAccountReferenceIDRef_ = receiverAccountReferenceNode.Attributes["id"].Value;
                 AccountReference ob = new AccountReference(receiverAccountReferenceNode);
                 IDManager.SetID(receiverAccountReferenceIDRef_, ob);
             }
             else if (receiverAccountReferenceNode.Attributes["href"] != null)
             {
                 receiverAccountReferenceIDRef_ = receiverAccountReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 receiverAccountReference_ = new AccountReference(receiverAccountReferenceNode);
             }
         }
         else
         {
             receiverAccountReference_ = new AccountReference(receiverAccountReferenceNode);
         }
     }
     
 
     XmlNode levelPercentageNode = xmlNode.SelectSingleNode("levelPercentage");
     
     if (levelPercentageNode != null)
     {
         if (levelPercentageNode.Attributes["href"] != null || levelPercentageNode.Attributes["id"] != null) 
         {
             if (levelPercentageNode.Attributes["id"] != null) 
             {
                 levelPercentageIDRef_ = levelPercentageNode.Attributes["id"].Value;
                 XsdTypeDecimal ob = new XsdTypeDecimal(levelPercentageNode);
                 IDManager.SetID(levelPercentageIDRef_, ob);
             }
             else if (levelPercentageNode.Attributes["href"] != null)
             {
                 levelPercentageIDRef_ = levelPercentageNode.Attributes["href"].Value;
             }
             else
             {
                 levelPercentage_ = new XsdTypeDecimal(levelPercentageNode);
             }
         }
         else
         {
             levelPercentage_ = new XsdTypeDecimal(levelPercentageNode);
         }
     }
     
 
     XmlNode amountNode = xmlNode.SelectSingleNode("amount");
     
     if (amountNode != null)
     {
         if (amountNode.Attributes["href"] != null || amountNode.Attributes["id"] != null) 
         {
             if (amountNode.Attributes["id"] != null) 
             {
                 amountIDRef_ = amountNode.Attributes["id"].Value;
                 NonNegativeDecimal ob = new NonNegativeDecimal(amountNode);
                 IDManager.SetID(amountIDRef_, ob);
             }
             else if (amountNode.Attributes["href"] != null)
             {
                 amountIDRef_ = amountNode.Attributes["href"].Value;
             }
             else
             {
                 amount_ = new NonNegativeDecimal(amountNode);
             }
         }
         else
         {
             amount_ = new NonNegativeDecimal(amountNode);
         }
     }
     
 
     XmlNode timeNode = xmlNode.SelectSingleNode("time");
     
     if (timeNode != null)
     {
         if (timeNode.Attributes["href"] != null || timeNode.Attributes["id"] != null) 
         {
             if (timeNode.Attributes["id"] != null) 
             {
                 timeIDRef_ = timeNode.Attributes["id"].Value;
                 TimeTypeEnum ob = new TimeTypeEnum(timeNode);
                 IDManager.SetID(timeIDRef_, ob);
             }
             else if (timeNode.Attributes["href"] != null)
             {
                 timeIDRef_ = timeNode.Attributes["href"].Value;
             }
             else
             {
                 time_ = new TimeTypeEnum(timeNode);
             }
         }
         else
         {
             time_ = new TimeTypeEnum(timeNode);
         }
     }
     
 
     XmlNode currencyNode = xmlNode.SelectSingleNode("currency");
     
     if (currencyNode != null)
     {
         if (currencyNode.Attributes["href"] != null || currencyNode.Attributes["id"] != null) 
         {
             if (currencyNode.Attributes["id"] != null) 
             {
                 currencyIDRef_ = currencyNode.Attributes["id"].Value;
                 Currency ob = new Currency(currencyNode);
                 IDManager.SetID(currencyIDRef_, ob);
             }
             else if (currencyNode.Attributes["href"] != null)
             {
                 currencyIDRef_ = currencyNode.Attributes["href"].Value;
             }
             else
             {
                 currency_ = new Currency(currencyNode);
             }
         }
         else
         {
             currency_ = new Currency(currencyNode);
         }
     }
     
 
     XmlNode featurePaymentDateNode = xmlNode.SelectSingleNode("featurePaymentDate");
     
     if (featurePaymentDateNode != null)
     {
         if (featurePaymentDateNode.Attributes["href"] != null || featurePaymentDateNode.Attributes["id"] != null) 
         {
             if (featurePaymentDateNode.Attributes["id"] != null) 
             {
                 featurePaymentDateIDRef_ = featurePaymentDateNode.Attributes["id"].Value;
                 AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(featurePaymentDateNode);
                 IDManager.SetID(featurePaymentDateIDRef_, ob);
             }
             else if (featurePaymentDateNode.Attributes["href"] != null)
             {
                 featurePaymentDateIDRef_ = featurePaymentDateNode.Attributes["href"].Value;
             }
             else
             {
                 featurePaymentDate_ = new AdjustableOrRelativeDate(featurePaymentDateNode);
             }
         }
         else
         {
             featurePaymentDate_ = new AdjustableOrRelativeDate(featurePaymentDateNode);
         }
     }
     
 
 }
 public EquityEuropeanExercise(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode expirationDateNode = xmlNode.SelectSingleNode("expirationDate");
     
     if (expirationDateNode != null)
     {
         if (expirationDateNode.Attributes["href"] != null || expirationDateNode.Attributes["id"] != null) 
         {
             if (expirationDateNode.Attributes["id"] != null) 
             {
                 expirationDateIDRef_ = expirationDateNode.Attributes["id"].Value;
                 AdjustableOrRelativeDate ob = new AdjustableOrRelativeDate(expirationDateNode);
                 IDManager.SetID(expirationDateIDRef_, ob);
             }
             else if (expirationDateNode.Attributes["href"] != null)
             {
                 expirationDateIDRef_ = expirationDateNode.Attributes["href"].Value;
             }
             else
             {
                 expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
             }
         }
         else
         {
             expirationDate_ = new AdjustableOrRelativeDate(expirationDateNode);
         }
     }
     
 
     XmlNode equityExpirationTimeTypeNode = xmlNode.SelectSingleNode("equityExpirationTimeType");
     
     if (equityExpirationTimeTypeNode != null)
     {
         if (equityExpirationTimeTypeNode.Attributes["href"] != null || equityExpirationTimeTypeNode.Attributes["id"] != null) 
         {
             if (equityExpirationTimeTypeNode.Attributes["id"] != null) 
             {
                 equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["id"].Value;
                 TimeTypeEnum ob = new TimeTypeEnum(equityExpirationTimeTypeNode);
                 IDManager.SetID(equityExpirationTimeTypeIDRef_, ob);
             }
             else if (equityExpirationTimeTypeNode.Attributes["href"] != null)
             {
                 equityExpirationTimeTypeIDRef_ = equityExpirationTimeTypeNode.Attributes["href"].Value;
             }
             else
             {
                 equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
             }
         }
         else
         {
             equityExpirationTimeType_ = new TimeTypeEnum(equityExpirationTimeTypeNode);
         }
     }
     
 
     XmlNode equityExpirationTimeNode = xmlNode.SelectSingleNode("equityExpirationTime");
     
     if (equityExpirationTimeNode != null)
     {
         if (equityExpirationTimeNode.Attributes["href"] != null || equityExpirationTimeNode.Attributes["id"] != null) 
         {
             if (equityExpirationTimeNode.Attributes["id"] != null) 
             {
                 equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["id"].Value;
                 BusinessCenterTime ob = new BusinessCenterTime(equityExpirationTimeNode);
                 IDManager.SetID(equityExpirationTimeIDRef_, ob);
             }
             else if (equityExpirationTimeNode.Attributes["href"] != null)
             {
                 equityExpirationTimeIDRef_ = equityExpirationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
             }
         }
         else
         {
             equityExpirationTime_ = new BusinessCenterTime(equityExpirationTimeNode);
         }
     }
     
 
     XmlNode expirationTimeDeterminationNode = xmlNode.SelectSingleNode("expirationTimeDetermination");
     
     if (expirationTimeDeterminationNode != null)
     {
         if (expirationTimeDeterminationNode.Attributes["href"] != null || expirationTimeDeterminationNode.Attributes["id"] != null) 
         {
             if (expirationTimeDeterminationNode.Attributes["id"] != null) 
             {
                 expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["id"].Value;
                 DeterminationMethod ob = new DeterminationMethod(expirationTimeDeterminationNode);
                 IDManager.SetID(expirationTimeDeterminationIDRef_, ob);
             }
             else if (expirationTimeDeterminationNode.Attributes["href"] != null)
             {
                 expirationTimeDeterminationIDRef_ = expirationTimeDeterminationNode.Attributes["href"].Value;
             }
             else
             {
                 expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
             }
         }
         else
         {
             expirationTimeDetermination_ = new DeterminationMethod(expirationTimeDeterminationNode);
         }
     }
     
 
 }