public FutureValueAmount(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode calculationPeriodNumberOfDaysNode = xmlNode.SelectSingleNode("calculationPeriodNumberOfDays");
     
     if (calculationPeriodNumberOfDaysNode != null)
     {
         if (calculationPeriodNumberOfDaysNode.Attributes["href"] != null || calculationPeriodNumberOfDaysNode.Attributes["id"] != null) 
         {
             if (calculationPeriodNumberOfDaysNode.Attributes["id"] != null) 
             {
                 calculationPeriodNumberOfDaysIDRef_ = calculationPeriodNumberOfDaysNode.Attributes["id"].Value;
                 XsdTypePositiveInteger ob = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
                 IDManager.SetID(calculationPeriodNumberOfDaysIDRef_, ob);
             }
             else if (calculationPeriodNumberOfDaysNode.Attributes["href"] != null)
             {
                 calculationPeriodNumberOfDaysIDRef_ = calculationPeriodNumberOfDaysNode.Attributes["href"].Value;
             }
             else
             {
                 calculationPeriodNumberOfDays_ = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
             }
         }
         else
         {
             calculationPeriodNumberOfDays_ = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
         }
     }
     
 
     XmlNode valueDateNode = xmlNode.SelectSingleNode("valueDate");
     
     if (valueDateNode != null)
     {
         if (valueDateNode.Attributes["href"] != null || valueDateNode.Attributes["id"] != null) 
         {
             if (valueDateNode.Attributes["id"] != null) 
             {
                 valueDateIDRef_ = valueDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(valueDateNode);
                 IDManager.SetID(valueDateIDRef_, ob);
             }
             else if (valueDateNode.Attributes["href"] != null)
             {
                 valueDateIDRef_ = valueDateNode.Attributes["href"].Value;
             }
             else
             {
                 valueDate_ = new XsdTypeDate(valueDateNode);
             }
         }
         else
         {
             valueDate_ = new XsdTypeDate(valueDateNode);
         }
     }
     
 
 }
 public EventDate(XmlNode xmlNode)
 {
     XmlNode dateSingleNode = xmlNode.SelectSingleNode("dateSingle");
     
     if (dateSingleNode != null)
     {
         if (dateSingleNode.Attributes["href"] != null || dateSingleNode.Attributes["id"] != null) 
         {
             if (dateSingleNode.Attributes["id"] != null) 
             {
                 dateSingleIDRef_ = dateSingleNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(dateSingleNode);
                 IDManager.SetID(dateSingleIDRef_, ob);
             }
             else if (dateSingleNode.Attributes["href"] != null)
             {
                 dateSingleIDRef_ = dateSingleNode.Attributes["href"].Value;
             }
             else
             {
                 dateSingle_ = new XsdTypeDate(dateSingleNode);
             }
         }
         else
         {
             dateSingle_ = new XsdTypeDate(dateSingleNode);
         }
     }
     
 
 }
        public AverPayoff(XmlNode xmlNode)
        {
            XmlNodeList dateNodeList = xmlNode.SelectNodes("date");

            foreach (XmlNode item in dateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = new XsdTypeDate();
                        ob.Add(new XsdTypeDate(item));
                        IDManager.SetID(dateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        date.Add(new XsdTypeDate(item));
                    }
                }
            }
        }
 public DataValue(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dateNode = xmlNode.SelectSingleNode("date");
     
     if (dateNode != null)
     {
         if (dateNode.Attributes["href"] != null || dateNode.Attributes["id"] != null) 
         {
             if (dateNode.Attributes["id"] != null) 
             {
                 dateIDRef_ = dateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(dateNode);
                 IDManager.SetID(dateIDRef_, ob);
             }
             else if (dateNode.Attributes["href"] != null)
             {
                 dateIDRef_ = dateNode.Attributes["href"].Value;
             }
             else
             {
                 date_ = new XsdTypeDate(dateNode);
             }
         }
         else
         {
             date_ = new XsdTypeDate(dateNode);
         }
     }
     
 
     XmlNode valueNode = xmlNode.SelectSingleNode("value");
     
     if (valueNode != null)
     {
         if (valueNode.Attributes["href"] != null || valueNode.Attributes["id"] != null) 
         {
             if (valueNode.Attributes["id"] != null) 
             {
                 valueIDRef_ = valueNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(valueNode);
                 IDManager.SetID(valueIDRef_, ob);
             }
             else if (valueNode.Attributes["href"] != null)
             {
                 valueIDRef_ = valueNode.Attributes["href"].Value;
             }
             else
             {
                 value_ = new XsdTypeDouble(valueNode);
             }
         }
         else
         {
             value_ = new XsdTypeDouble(valueNode);
         }
     }
     
 
 }
        public EventDate(XmlNode xmlNode)
        {
            XmlNodeList dateSingleNodeList = xmlNode.SelectNodes("dateSingle");

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

            foreach (XmlNode item in dateSingleNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dateSingleIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(dateSingleIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dateSingleIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        dateSingle = new XsdTypeDate(item);
                    }
                }
            }
        }
        public FutureValueAmount(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList calculationPeriodNumberOfDaysNodeList = xmlNode.SelectNodes("calculationPeriodNumberOfDays");

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

            foreach (XmlNode item in calculationPeriodNumberOfDaysNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        calculationPeriodNumberOfDaysIDRef = item.Attributes["id"].Name;
                        XsdTypePositiveInteger ob = XsdTypePositiveInteger();
                        IDManager.SetID(calculationPeriodNumberOfDaysIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        calculationPeriodNumberOfDaysIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        calculationPeriodNumberOfDays = new XsdTypePositiveInteger(item);
                    }
                }
            }


            XmlNodeList valueDateNodeList = xmlNode.SelectNodes("valueDate");

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

            foreach (XmlNode item in valueDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        valueDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(valueDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        valueDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        valueDate = new XsdTypeDate(item);
                    }
                }
            }
        }
 public Pricing(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode evaluationTimeNode = xmlNode.SelectSingleNode("evaluationTime");
     
     if (evaluationTimeNode != null)
     {
         if (evaluationTimeNode.Attributes["href"] != null || evaluationTimeNode.Attributes["id"] != null) 
         {
             if (evaluationTimeNode.Attributes["id"] != null) 
             {
                 evaluationTimeIDRef_ = evaluationTimeNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(evaluationTimeNode);
                 IDManager.SetID(evaluationTimeIDRef_, ob);
             }
             else if (evaluationTimeNode.Attributes["href"] != null)
             {
                 evaluationTimeIDRef_ = evaluationTimeNode.Attributes["href"].Value;
             }
             else
             {
                 evaluationTime_ = new XsdTypeDate(evaluationTimeNode);
             }
         }
         else
         {
             evaluationTime_ = new XsdTypeDate(evaluationTimeNode);
         }
     }
     
 
     XmlNode excel_parameterNode = xmlNode.SelectSingleNode("excel_parameter");
     
     if (excel_parameterNode != null)
     {
         if (excel_parameterNode.Attributes["href"] != null || excel_parameterNode.Attributes["id"] != null) 
         {
             if (excel_parameterNode.Attributes["id"] != null) 
             {
                 excel_parameterIDRef_ = excel_parameterNode.Attributes["id"].Value;
                 Excel_parameter ob = new Excel_parameter(excel_parameterNode);
                 IDManager.SetID(excel_parameterIDRef_, ob);
             }
             else if (excel_parameterNode.Attributes["href"] != null)
             {
                 excel_parameterIDRef_ = excel_parameterNode.Attributes["href"].Value;
             }
             else
             {
                 excel_parameter_ = new Excel_parameter(excel_parameterNode);
             }
         }
         else
         {
             excel_parameter_ = new Excel_parameter(excel_parameterNode);
         }
     }
     
 
 }
        public StepBase(XmlNode xmlNode)
        {
            XmlNode stepDateNode = xmlNode.SelectSingleNode("stepDate");

            if (stepDateNode != null)
            {
                if (stepDateNode.Attributes["href"] != null || stepDateNode.Attributes["id"] != null)
                {
                    if (stepDateNode.Attributes["id"] != null)
                    {
                        stepDateIDRef_ = stepDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(stepDateNode);
                        IDManager.SetID(stepDateIDRef_, ob);
                    }
                    else if (stepDateNode.Attributes["href"] != null)
                    {
                        stepDateIDRef_ = stepDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        stepDate_ = new XsdTypeDate(stepDateNode);
                    }
                }
                else
                {
                    stepDate_ = new XsdTypeDate(stepDateNode);
                }
            }
        }
示例#9
0
        public ConvertibleBond(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList underlyingEquityNodeList = xmlNode.SelectNodes("underlyingEquity");

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

            foreach (XmlNode item in underlyingEquityNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        underlyingEquityIDRef = item.Attributes["id"].Name;
                        EquityAsset ob = EquityAsset();
                        IDManager.SetID(underlyingEquityIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        underlyingEquityIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        underlyingEquity = new EquityAsset(item);
                    }
                }
            }


            XmlNodeList redemptionDateNodeList = xmlNode.SelectNodes("redemptionDate");

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

            foreach (XmlNode item in redemptionDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        redemptionDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(redemptionDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        redemptionDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        redemptionDate = new XsdTypeDate(item);
                    }
                }
            }
        }
 public ConvertibleBond(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode underlyingEquityNode = xmlNode.SelectSingleNode("underlyingEquity");
     
     if (underlyingEquityNode != null)
     {
         if (underlyingEquityNode.Attributes["href"] != null || underlyingEquityNode.Attributes["id"] != null) 
         {
             if (underlyingEquityNode.Attributes["id"] != null) 
             {
                 underlyingEquityIDRef_ = underlyingEquityNode.Attributes["id"].Value;
                 EquityAsset ob = new EquityAsset(underlyingEquityNode);
                 IDManager.SetID(underlyingEquityIDRef_, ob);
             }
             else if (underlyingEquityNode.Attributes["href"] != null)
             {
                 underlyingEquityIDRef_ = underlyingEquityNode.Attributes["href"].Value;
             }
             else
             {
                 underlyingEquity_ = new EquityAsset(underlyingEquityNode);
             }
         }
         else
         {
             underlyingEquity_ = new EquityAsset(underlyingEquityNode);
         }
     }
     
 
     XmlNode redemptionDateNode = xmlNode.SelectSingleNode("redemptionDate");
     
     if (redemptionDateNode != null)
     {
         if (redemptionDateNode.Attributes["href"] != null || redemptionDateNode.Attributes["id"] != null) 
         {
             if (redemptionDateNode.Attributes["id"] != null) 
             {
                 redemptionDateIDRef_ = redemptionDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(redemptionDateNode);
                 IDManager.SetID(redemptionDateIDRef_, ob);
             }
             else if (redemptionDateNode.Attributes["href"] != null)
             {
                 redemptionDateIDRef_ = redemptionDateNode.Attributes["href"].Value;
             }
             else
             {
                 redemptionDate_ = new XsdTypeDate(redemptionDateNode);
             }
         }
         else
         {
             redemptionDate_ = new XsdTypeDate(redemptionDateNode);
         }
     }
     
 
 }
 public DailyInterval(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode observationStartDateNode = xmlNode.SelectSingleNode("observationStartDate");
     
     if (observationStartDateNode != null)
     {
         if (observationStartDateNode.Attributes["href"] != null || observationStartDateNode.Attributes["id"] != null) 
         {
             if (observationStartDateNode.Attributes["id"] != null) 
             {
                 observationStartDateIDRef_ = observationStartDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(observationStartDateNode);
                 IDManager.SetID(observationStartDateIDRef_, ob);
             }
             else if (observationStartDateNode.Attributes["href"] != null)
             {
                 observationStartDateIDRef_ = observationStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 observationStartDate_ = new XsdTypeDate(observationStartDateNode);
             }
         }
         else
         {
             observationStartDate_ = new XsdTypeDate(observationStartDateNode);
         }
     }
     
 
     XmlNode observationEndDateNode = xmlNode.SelectSingleNode("observationEndDate");
     
     if (observationEndDateNode != null)
     {
         if (observationEndDateNode.Attributes["href"] != null || observationEndDateNode.Attributes["id"] != null) 
         {
             if (observationEndDateNode.Attributes["id"] != null) 
             {
                 observationEndDateIDRef_ = observationEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(observationEndDateNode);
                 IDManager.SetID(observationEndDateIDRef_, ob);
             }
             else if (observationEndDateNode.Attributes["href"] != null)
             {
                 observationEndDateIDRef_ = observationEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 observationEndDate_ = new XsdTypeDate(observationEndDateNode);
             }
         }
         else
         {
             observationEndDate_ = new XsdTypeDate(observationEndDateNode);
         }
     }
     
 
 }
        public StepBase(XmlNode xmlNode)
        {
            XmlNodeList stepDateNodeList = xmlNode.SelectNodes("stepDate");

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

            foreach (XmlNode item in stepDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        stepDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(stepDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        stepDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        stepDate = new XsdTypeDate(item);
                    }
                }
            }
        }
示例#13
0
        public EventDate(XmlNode xmlNode)
        {
            XmlNode dateSingleNode = xmlNode.SelectSingleNode("dateSingle");

            if (dateSingleNode != null)
            {
                if (dateSingleNode.Attributes["href"] != null || dateSingleNode.Attributes["id"] != null)
                {
                    if (dateSingleNode.Attributes["id"] != null)
                    {
                        dateSingleIDRef_ = dateSingleNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(dateSingleNode);
                        IDManager.SetID(dateSingleIDRef_, ob);
                    }
                    else if (dateSingleNode.Attributes["href"] != null)
                    {
                        dateSingleIDRef_ = dateSingleNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dateSingle_ = new XsdTypeDate(dateSingleNode);
                    }
                }
                else
                {
                    dateSingle_ = new XsdTypeDate(dateSingleNode);
                }
            }
        }
 public StepBase(XmlNode xmlNode)
 {
     XmlNode stepDateNode = xmlNode.SelectSingleNode("stepDate");
     
     if (stepDateNode != null)
     {
         if (stepDateNode.Attributes["href"] != null || stepDateNode.Attributes["id"] != null) 
         {
             if (stepDateNode.Attributes["id"] != null) 
             {
                 stepDateIDRef_ = stepDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(stepDateNode);
                 IDManager.SetID(stepDateIDRef_, ob);
             }
             else if (stepDateNode.Attributes["href"] != null)
             {
                 stepDateIDRef_ = stepDateNode.Attributes["href"].Value;
             }
             else
             {
                 stepDate_ = new XsdTypeDate(stepDateNode);
             }
         }
         else
         {
             stepDate_ = new XsdTypeDate(stepDateNode);
         }
     }
     
 
 }
 public MakeWholeProvisions(XmlNode xmlNode)
 {
     XmlNode makeWholeDateNode = xmlNode.SelectSingleNode("makeWholeDate");
     
     if (makeWholeDateNode != null)
     {
         if (makeWholeDateNode.Attributes["href"] != null || makeWholeDateNode.Attributes["id"] != null) 
         {
             if (makeWholeDateNode.Attributes["id"] != null) 
             {
                 makeWholeDateIDRef_ = makeWholeDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(makeWholeDateNode);
                 IDManager.SetID(makeWholeDateIDRef_, ob);
             }
             else if (makeWholeDateNode.Attributes["href"] != null)
             {
                 makeWholeDateIDRef_ = makeWholeDateNode.Attributes["href"].Value;
             }
             else
             {
                 makeWholeDate_ = new XsdTypeDate(makeWholeDateNode);
             }
         }
         else
         {
             makeWholeDate_ = new XsdTypeDate(makeWholeDateNode);
         }
     }
     
 
     XmlNode recallSpreadNode = xmlNode.SelectSingleNode("recallSpread");
     
     if (recallSpreadNode != null)
     {
         if (recallSpreadNode.Attributes["href"] != null || recallSpreadNode.Attributes["id"] != null) 
         {
             if (recallSpreadNode.Attributes["id"] != null) 
             {
                 recallSpreadIDRef_ = recallSpreadNode.Attributes["id"].Value;
                 XsdTypeDecimal ob = new XsdTypeDecimal(recallSpreadNode);
                 IDManager.SetID(recallSpreadIDRef_, ob);
             }
             else if (recallSpreadNode.Attributes["href"] != null)
             {
                 recallSpreadIDRef_ = recallSpreadNode.Attributes["href"].Value;
             }
             else
             {
                 recallSpread_ = new XsdTypeDecimal(recallSpreadNode);
             }
         }
         else
         {
             recallSpread_ = new XsdTypeDecimal(recallSpreadNode);
         }
     }
     
 
 }
        public ExtensionEvent(XmlNode xmlNode)
        {
            XmlNodeList adjustedExerciseDateNodeList = xmlNode.SelectNodes("adjustedExerciseDate");

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

            foreach (XmlNode item in adjustedExerciseDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        adjustedExerciseDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(adjustedExerciseDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        adjustedExerciseDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        adjustedExerciseDate = new XsdTypeDate(item);
                    }
                }
            }


            XmlNodeList adjustedExtendedTerminationDateNodeList = xmlNode.SelectNodes("adjustedExtendedTerminationDate");

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

            foreach (XmlNode item in adjustedExtendedTerminationDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        adjustedExtendedTerminationDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(adjustedExtendedTerminationDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        adjustedExtendedTerminationDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        adjustedExtendedTerminationDate = new XsdTypeDate(item);
                    }
                }
            }
        }
 public EEPRiskPeriod(XmlNode xmlNode)
 {
     XmlNode startDateNode = xmlNode.SelectSingleNode("startDate");
     
     if (startDateNode != null)
     {
         if (startDateNode.Attributes["href"] != null || startDateNode.Attributes["id"] != null) 
         {
             if (startDateNode.Attributes["id"] != null) 
             {
                 startDateIDRef_ = startDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(startDateNode);
                 IDManager.SetID(startDateIDRef_, ob);
             }
             else if (startDateNode.Attributes["href"] != null)
             {
                 startDateIDRef_ = startDateNode.Attributes["href"].Value;
             }
             else
             {
                 startDate_ = new XsdTypeDate(startDateNode);
             }
         }
         else
         {
             startDate_ = new XsdTypeDate(startDateNode);
         }
     }
     
 
     XmlNode endDateNode = xmlNode.SelectSingleNode("endDate");
     
     if (endDateNode != null)
     {
         if (endDateNode.Attributes["href"] != null || endDateNode.Attributes["id"] != null) 
         {
             if (endDateNode.Attributes["id"] != null) 
             {
                 endDateIDRef_ = endDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(endDateNode);
                 IDManager.SetID(endDateIDRef_, ob);
             }
             else if (endDateNode.Attributes["href"] != null)
             {
                 endDateIDRef_ = endDateNode.Attributes["href"].Value;
             }
             else
             {
                 endDate_ = new XsdTypeDate(endDateNode);
             }
         }
         else
         {
             endDate_ = new XsdTypeDate(endDateNode);
         }
     }
     
 
 }
 public SettledEntityMatrix(XmlNode xmlNode)
 {
     XmlNode matrixSourceNode = xmlNode.SelectSingleNode("matrixSource");
     
     if (matrixSourceNode != null)
     {
         if (matrixSourceNode.Attributes["href"] != null || matrixSourceNode.Attributes["id"] != null) 
         {
             if (matrixSourceNode.Attributes["id"] != null) 
             {
                 matrixSourceIDRef_ = matrixSourceNode.Attributes["id"].Value;
                 MatrixSource ob = new MatrixSource(matrixSourceNode);
                 IDManager.SetID(matrixSourceIDRef_, ob);
             }
             else if (matrixSourceNode.Attributes["href"] != null)
             {
                 matrixSourceIDRef_ = matrixSourceNode.Attributes["href"].Value;
             }
             else
             {
                 matrixSource_ = new MatrixSource(matrixSourceNode);
             }
         }
         else
         {
             matrixSource_ = new MatrixSource(matrixSourceNode);
         }
     }
     
 
     XmlNode publicationDateNode = xmlNode.SelectSingleNode("publicationDate");
     
     if (publicationDateNode != null)
     {
         if (publicationDateNode.Attributes["href"] != null || publicationDateNode.Attributes["id"] != null) 
         {
             if (publicationDateNode.Attributes["id"] != null) 
             {
                 publicationDateIDRef_ = publicationDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(publicationDateNode);
                 IDManager.SetID(publicationDateIDRef_, ob);
             }
             else if (publicationDateNode.Attributes["href"] != null)
             {
                 publicationDateIDRef_ = publicationDateNode.Attributes["href"].Value;
             }
             else
             {
                 publicationDate_ = new XsdTypeDate(publicationDateNode);
             }
         }
         else
         {
             publicationDate_ = new XsdTypeDate(publicationDateNode);
         }
     }
     
 
 }
        public ContractualTermsSupplement(XmlNode xmlNode)
        {
            XmlNodeList typeNodeList = xmlNode.SelectNodes("type");

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

            foreach (XmlNode item in typeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        typeIDRef = item.Attributes["id"].Name;
                        ContractualSupplement ob = ContractualSupplement();
                        IDManager.SetID(typeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        typeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        type = new ContractualSupplement(item);
                    }
                }
            }


            XmlNodeList publicationDateNodeList = xmlNode.SelectNodes("publicationDate");

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

            foreach (XmlNode item in publicationDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        publicationDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(publicationDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        publicationDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        publicationDate = new XsdTypeDate(item);
                    }
                }
            }
        }
        public MakeWholeProvisions(XmlNode xmlNode)
        {
            XmlNodeList makeWholeDateNodeList = xmlNode.SelectNodes("makeWholeDate");

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

            foreach (XmlNode item in makeWholeDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        makeWholeDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(makeWholeDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        makeWholeDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        makeWholeDate = new XsdTypeDate(item);
                    }
                }
            }


            XmlNodeList recallSpreadNodeList = xmlNode.SelectNodes("recallSpread");

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

            foreach (XmlNode item in recallSpreadNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        recallSpreadIDRef = item.Attributes["id"].Name;
                        XsdTypeDecimal ob = XsdTypeDecimal();
                        IDManager.SetID(recallSpreadIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        recallSpreadIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        recallSpread = new XsdTypeDecimal(item);
                    }
                }
            }
        }
示例#21
0
        public AdjustedPaymentDates(XmlNode xmlNode)
        {
            XmlNodeList adjustedPaymentDateNodeList = xmlNode.SelectNodes("adjustedPaymentDate");

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

            foreach (XmlNode item in adjustedPaymentDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        adjustedPaymentDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(adjustedPaymentDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        adjustedPaymentDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        adjustedPaymentDate = new XsdTypeDate(item);
                    }
                }
            }


            XmlNodeList paymentAmountNodeList = xmlNode.SelectNodes("paymentAmount");

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

            foreach (XmlNode item in paymentAmountNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        paymentAmountIDRef = item.Attributes["id"].Name;
                        Money ob = Money();
                        IDManager.SetID(paymentAmountIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        paymentAmountIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        paymentAmount = new Money(item);
                    }
                }
            }
        }
        public DateRange(XmlNode xmlNode)
        {
            XmlNodeList unadjustedFirstDateNodeList = xmlNode.SelectNodes("unadjustedFirstDate");

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

            foreach (XmlNode item in unadjustedFirstDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        unadjustedFirstDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(unadjustedFirstDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        unadjustedFirstDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        unadjustedFirstDate = new XsdTypeDate(item);
                    }
                }
            }


            XmlNodeList unadjustedLastDateNodeList = xmlNode.SelectNodes("unadjustedLastDate");

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

            foreach (XmlNode item in unadjustedLastDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        unadjustedLastDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(unadjustedLastDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        unadjustedLastDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        unadjustedLastDate = new XsdTypeDate(item);
                    }
                }
            }
        }
 public ContractualTermsSupplement(XmlNode xmlNode)
 {
     XmlNode typeNode = xmlNode.SelectSingleNode("type");
     
     if (typeNode != null)
     {
         if (typeNode.Attributes["href"] != null || typeNode.Attributes["id"] != null) 
         {
             if (typeNode.Attributes["id"] != null) 
             {
                 typeIDRef_ = typeNode.Attributes["id"].Value;
                 ContractualSupplement ob = new ContractualSupplement(typeNode);
                 IDManager.SetID(typeIDRef_, ob);
             }
             else if (typeNode.Attributes["href"] != null)
             {
                 typeIDRef_ = typeNode.Attributes["href"].Value;
             }
             else
             {
                 type_ = new ContractualSupplement(typeNode);
             }
         }
         else
         {
             type_ = new ContractualSupplement(typeNode);
         }
     }
     
 
     XmlNode publicationDateNode = xmlNode.SelectSingleNode("publicationDate");
     
     if (publicationDateNode != null)
     {
         if (publicationDateNode.Attributes["href"] != null || publicationDateNode.Attributes["id"] != null) 
         {
             if (publicationDateNode.Attributes["id"] != null) 
             {
                 publicationDateIDRef_ = publicationDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(publicationDateNode);
                 IDManager.SetID(publicationDateIDRef_, ob);
             }
             else if (publicationDateNode.Attributes["href"] != null)
             {
                 publicationDateIDRef_ = publicationDateNode.Attributes["href"].Value;
             }
             else
             {
                 publicationDate_ = new XsdTypeDate(publicationDateNode);
             }
         }
         else
         {
             publicationDate_ = new XsdTypeDate(publicationDateNode);
         }
     }
     
 
 }
示例#24
0
        public TimeDimension(XmlNode xmlNode)
        {
            XmlNodeList tenorNodeList = xmlNode.SelectNodes("tenor");

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

            foreach (XmlNode item in tenorNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        tenorIDRef = item.Attributes["id"].Name;
                        Period ob = Period();
                        IDManager.SetID(tenorIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        tenorIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        tenor = new Period(item);
                    }
                }
            }


            XmlNodeList dateNodeList = xmlNode.SelectNodes("date");

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

            foreach (XmlNode item in dateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(dateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        date = new XsdTypeDate(item);
                    }
                }
            }
        }
 public AdjustedPaymentDates(XmlNode xmlNode)
 {
     XmlNode adjustedPaymentDateNode = xmlNode.SelectSingleNode("adjustedPaymentDate");
     
     if (adjustedPaymentDateNode != null)
     {
         if (adjustedPaymentDateNode.Attributes["href"] != null || adjustedPaymentDateNode.Attributes["id"] != null) 
         {
             if (adjustedPaymentDateNode.Attributes["id"] != null) 
             {
                 adjustedPaymentDateIDRef_ = adjustedPaymentDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(adjustedPaymentDateNode);
                 IDManager.SetID(adjustedPaymentDateIDRef_, ob);
             }
             else if (adjustedPaymentDateNode.Attributes["href"] != null)
             {
                 adjustedPaymentDateIDRef_ = adjustedPaymentDateNode.Attributes["href"].Value;
             }
             else
             {
                 adjustedPaymentDate_ = new XsdTypeDate(adjustedPaymentDateNode);
             }
         }
         else
         {
             adjustedPaymentDate_ = new XsdTypeDate(adjustedPaymentDateNode);
         }
     }
     
 
     XmlNode paymentAmountNode = xmlNode.SelectSingleNode("paymentAmount");
     
     if (paymentAmountNode != null)
     {
         if (paymentAmountNode.Attributes["href"] != null || paymentAmountNode.Attributes["id"] != null) 
         {
             if (paymentAmountNode.Attributes["id"] != null) 
             {
                 paymentAmountIDRef_ = paymentAmountNode.Attributes["id"].Value;
                 Money ob = new Money(paymentAmountNode);
                 IDManager.SetID(paymentAmountIDRef_, ob);
             }
             else if (paymentAmountNode.Attributes["href"] != null)
             {
                 paymentAmountIDRef_ = paymentAmountNode.Attributes["href"].Value;
             }
             else
             {
                 paymentAmount_ = new Money(paymentAmountNode);
             }
         }
         else
         {
             paymentAmount_ = new Money(paymentAmountNode);
         }
     }
     
 
 }
 public DateRange(XmlNode xmlNode)
 {
     XmlNode unadjustedFirstDateNode = xmlNode.SelectSingleNode("unadjustedFirstDate");
     
     if (unadjustedFirstDateNode != null)
     {
         if (unadjustedFirstDateNode.Attributes["href"] != null || unadjustedFirstDateNode.Attributes["id"] != null) 
         {
             if (unadjustedFirstDateNode.Attributes["id"] != null) 
             {
                 unadjustedFirstDateIDRef_ = unadjustedFirstDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(unadjustedFirstDateNode);
                 IDManager.SetID(unadjustedFirstDateIDRef_, ob);
             }
             else if (unadjustedFirstDateNode.Attributes["href"] != null)
             {
                 unadjustedFirstDateIDRef_ = unadjustedFirstDateNode.Attributes["href"].Value;
             }
             else
             {
                 unadjustedFirstDate_ = new XsdTypeDate(unadjustedFirstDateNode);
             }
         }
         else
         {
             unadjustedFirstDate_ = new XsdTypeDate(unadjustedFirstDateNode);
         }
     }
     
 
     XmlNode unadjustedLastDateNode = xmlNode.SelectSingleNode("unadjustedLastDate");
     
     if (unadjustedLastDateNode != null)
     {
         if (unadjustedLastDateNode.Attributes["href"] != null || unadjustedLastDateNode.Attributes["id"] != null) 
         {
             if (unadjustedLastDateNode.Attributes["id"] != null) 
             {
                 unadjustedLastDateIDRef_ = unadjustedLastDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(unadjustedLastDateNode);
                 IDManager.SetID(unadjustedLastDateIDRef_, ob);
             }
             else if (unadjustedLastDateNode.Attributes["href"] != null)
             {
                 unadjustedLastDateIDRef_ = unadjustedLastDateNode.Attributes["href"].Value;
             }
             else
             {
                 unadjustedLastDate_ = new XsdTypeDate(unadjustedLastDateNode);
             }
         }
         else
         {
             unadjustedLastDate_ = new XsdTypeDate(unadjustedLastDateNode);
         }
     }
     
 
 }
        public SettledEntityMatrix(XmlNode xmlNode)
        {
            XmlNodeList matrixSourceNodeList = xmlNode.SelectNodes("matrixSource");

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

            foreach (XmlNode item in matrixSourceNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        matrixSourceIDRef = item.Attributes["id"].Name;
                        MatrixSource ob = MatrixSource();
                        IDManager.SetID(matrixSourceIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        matrixSourceIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        matrixSource = new MatrixSource(item);
                    }
                }
            }


            XmlNodeList publicationDateNodeList = xmlNode.SelectNodes("publicationDate");

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

            foreach (XmlNode item in publicationDateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        publicationDateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(publicationDateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        publicationDateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        publicationDate = new XsdTypeDate(item);
                    }
                }
            }
        }
 public CancellationEvent(XmlNode xmlNode)
 {
     XmlNode adjustedExerciseDateNode = xmlNode.SelectSingleNode("adjustedExerciseDate");
     
     if (adjustedExerciseDateNode != null)
     {
         if (adjustedExerciseDateNode.Attributes["href"] != null || adjustedExerciseDateNode.Attributes["id"] != null) 
         {
             if (adjustedExerciseDateNode.Attributes["id"] != null) 
             {
                 adjustedExerciseDateIDRef_ = adjustedExerciseDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(adjustedExerciseDateNode);
                 IDManager.SetID(adjustedExerciseDateIDRef_, ob);
             }
             else if (adjustedExerciseDateNode.Attributes["href"] != null)
             {
                 adjustedExerciseDateIDRef_ = adjustedExerciseDateNode.Attributes["href"].Value;
             }
             else
             {
                 adjustedExerciseDate_ = new XsdTypeDate(adjustedExerciseDateNode);
             }
         }
         else
         {
             adjustedExerciseDate_ = new XsdTypeDate(adjustedExerciseDateNode);
         }
     }
     
 
     XmlNode adjustedEarlyTerminationDateNode = xmlNode.SelectSingleNode("adjustedEarlyTerminationDate");
     
     if (adjustedEarlyTerminationDateNode != null)
     {
         if (adjustedEarlyTerminationDateNode.Attributes["href"] != null || adjustedEarlyTerminationDateNode.Attributes["id"] != null) 
         {
             if (adjustedEarlyTerminationDateNode.Attributes["id"] != null) 
             {
                 adjustedEarlyTerminationDateIDRef_ = adjustedEarlyTerminationDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(adjustedEarlyTerminationDateNode);
                 IDManager.SetID(adjustedEarlyTerminationDateIDRef_, ob);
             }
             else if (adjustedEarlyTerminationDateNode.Attributes["href"] != null)
             {
                 adjustedEarlyTerminationDateIDRef_ = adjustedEarlyTerminationDateNode.Attributes["href"].Value;
             }
             else
             {
                 adjustedEarlyTerminationDate_ = new XsdTypeDate(adjustedEarlyTerminationDateNode);
             }
         }
         else
         {
             adjustedEarlyTerminationDate_ = new XsdTypeDate(adjustedEarlyTerminationDateNode);
         }
     }
     
 
 }
 public TimeDimension(XmlNode xmlNode)
 {
     XmlNode tenorNode = xmlNode.SelectSingleNode("tenor");
     
     if (tenorNode != null)
     {
         if (tenorNode.Attributes["href"] != null || tenorNode.Attributes["id"] != null) 
         {
             if (tenorNode.Attributes["id"] != null) 
             {
                 tenorIDRef_ = tenorNode.Attributes["id"].Value;
                 Period ob = new Period(tenorNode);
                 IDManager.SetID(tenorIDRef_, ob);
             }
             else if (tenorNode.Attributes["href"] != null)
             {
                 tenorIDRef_ = tenorNode.Attributes["href"].Value;
             }
             else
             {
                 tenor_ = new Period(tenorNode);
             }
         }
         else
         {
             tenor_ = new Period(tenorNode);
         }
     }
     
 
     XmlNode dateNode = xmlNode.SelectSingleNode("date");
     
     if (dateNode != null)
     {
         if (dateNode.Attributes["href"] != null || dateNode.Attributes["id"] != null) 
         {
             if (dateNode.Attributes["id"] != null) 
             {
                 dateIDRef_ = dateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(dateNode);
                 IDManager.SetID(dateIDRef_, ob);
             }
             else if (dateNode.Attributes["href"] != null)
             {
                 dateIDRef_ = dateNode.Attributes["href"].Value;
             }
             else
             {
                 date_ = new XsdTypeDate(dateNode);
             }
         }
         else
         {
             date_ = new XsdTypeDate(dateNode);
         }
     }
     
 
 }
        public Pricing(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode evaluationTimeNode = xmlNode.SelectSingleNode("evaluationTime");

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


            XmlNode excel_parameterNode = xmlNode.SelectSingleNode("excel_parameter");

            if (excel_parameterNode != null)
            {
                if (excel_parameterNode.Attributes["href"] != null || excel_parameterNode.Attributes["id"] != null)
                {
                    if (excel_parameterNode.Attributes["id"] != null)
                    {
                        excel_parameterIDRef_ = excel_parameterNode.Attributes["id"].Value;
                        Excel_parameter ob = new Excel_parameter(excel_parameterNode);
                        IDManager.SetID(excel_parameterIDRef_, ob);
                    }
                    else if (excel_parameterNode.Attributes["href"] != null)
                    {
                        excel_parameterIDRef_ = excel_parameterNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_parameter_ = new Excel_parameter(excel_parameterNode);
                    }
                }
                else
                {
                    excel_parameter_ = new Excel_parameter(excel_parameterNode);
                }
            }
        }
示例#31
0
        public FutureValueAmount(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode calculationPeriodNumberOfDaysNode = xmlNode.SelectSingleNode("calculationPeriodNumberOfDays");

            if (calculationPeriodNumberOfDaysNode != null)
            {
                if (calculationPeriodNumberOfDaysNode.Attributes["href"] != null || calculationPeriodNumberOfDaysNode.Attributes["id"] != null)
                {
                    if (calculationPeriodNumberOfDaysNode.Attributes["id"] != null)
                    {
                        calculationPeriodNumberOfDaysIDRef_ = calculationPeriodNumberOfDaysNode.Attributes["id"].Value;
                        XsdTypePositiveInteger ob = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
                        IDManager.SetID(calculationPeriodNumberOfDaysIDRef_, ob);
                    }
                    else if (calculationPeriodNumberOfDaysNode.Attributes["href"] != null)
                    {
                        calculationPeriodNumberOfDaysIDRef_ = calculationPeriodNumberOfDaysNode.Attributes["href"].Value;
                    }
                    else
                    {
                        calculationPeriodNumberOfDays_ = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
                    }
                }
                else
                {
                    calculationPeriodNumberOfDays_ = new XsdTypePositiveInteger(calculationPeriodNumberOfDaysNode);
                }
            }


            XmlNode valueDateNode = xmlNode.SelectSingleNode("valueDate");

            if (valueDateNode != null)
            {
                if (valueDateNode.Attributes["href"] != null || valueDateNode.Attributes["id"] != null)
                {
                    if (valueDateNode.Attributes["id"] != null)
                    {
                        valueDateIDRef_ = valueDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(valueDateNode);
                        IDManager.SetID(valueDateIDRef_, ob);
                    }
                    else if (valueDateNode.Attributes["href"] != null)
                    {
                        valueDateIDRef_ = valueDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        valueDate_ = new XsdTypeDate(valueDateNode);
                    }
                }
                else
                {
                    valueDate_ = new XsdTypeDate(valueDateNode);
                }
            }
        }
        public ConvertibleBond(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode underlyingEquityNode = xmlNode.SelectSingleNode("underlyingEquity");

            if (underlyingEquityNode != null)
            {
                if (underlyingEquityNode.Attributes["href"] != null || underlyingEquityNode.Attributes["id"] != null)
                {
                    if (underlyingEquityNode.Attributes["id"] != null)
                    {
                        underlyingEquityIDRef_ = underlyingEquityNode.Attributes["id"].Value;
                        EquityAsset ob = new EquityAsset(underlyingEquityNode);
                        IDManager.SetID(underlyingEquityIDRef_, ob);
                    }
                    else if (underlyingEquityNode.Attributes["href"] != null)
                    {
                        underlyingEquityIDRef_ = underlyingEquityNode.Attributes["href"].Value;
                    }
                    else
                    {
                        underlyingEquity_ = new EquityAsset(underlyingEquityNode);
                    }
                }
                else
                {
                    underlyingEquity_ = new EquityAsset(underlyingEquityNode);
                }
            }


            XmlNode redemptionDateNode = xmlNode.SelectSingleNode("redemptionDate");

            if (redemptionDateNode != null)
            {
                if (redemptionDateNode.Attributes["href"] != null || redemptionDateNode.Attributes["id"] != null)
                {
                    if (redemptionDateNode.Attributes["id"] != null)
                    {
                        redemptionDateIDRef_ = redemptionDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(redemptionDateNode);
                        IDManager.SetID(redemptionDateIDRef_, ob);
                    }
                    else if (redemptionDateNode.Attributes["href"] != null)
                    {
                        redemptionDateIDRef_ = redemptionDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        redemptionDate_ = new XsdTypeDate(redemptionDateNode);
                    }
                }
                else
                {
                    redemptionDate_ = new XsdTypeDate(redemptionDateNode);
                }
            }
        }
示例#33
0
        public DataValue(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode dateNode = xmlNode.SelectSingleNode("date");

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


            XmlNode valueNode = xmlNode.SelectSingleNode("value");

            if (valueNode != null)
            {
                if (valueNode.Attributes["href"] != null || valueNode.Attributes["id"] != null)
                {
                    if (valueNode.Attributes["id"] != null)
                    {
                        valueIDRef_ = valueNode.Attributes["id"].Value;
                        XsdTypeDouble ob = new XsdTypeDouble(valueNode);
                        IDManager.SetID(valueIDRef_, ob);
                    }
                    else if (valueNode.Attributes["href"] != null)
                    {
                        valueIDRef_ = valueNode.Attributes["href"].Value;
                    }
                    else
                    {
                        value_ = new XsdTypeDouble(valueNode);
                    }
                }
                else
                {
                    value_ = new XsdTypeDouble(valueNode);
                }
            }
        }
示例#34
0
        public DailyInterval(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode observationStartDateNode = xmlNode.SelectSingleNode("observationStartDate");

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


            XmlNode observationEndDateNode = xmlNode.SelectSingleNode("observationEndDate");

            if (observationEndDateNode != null)
            {
                if (observationEndDateNode.Attributes["href"] != null || observationEndDateNode.Attributes["id"] != null)
                {
                    if (observationEndDateNode.Attributes["id"] != null)
                    {
                        observationEndDateIDRef_ = observationEndDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(observationEndDateNode);
                        IDManager.SetID(observationEndDateIDRef_, ob);
                    }
                    else if (observationEndDateNode.Attributes["href"] != null)
                    {
                        observationEndDateIDRef_ = observationEndDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        observationEndDate_ = new XsdTypeDate(observationEndDateNode);
                    }
                }
                else
                {
                    observationEndDate_ = new XsdTypeDate(observationEndDateNode);
                }
            }
        }
示例#35
0
        public MakeWholeProvisions(XmlNode xmlNode)
        {
            XmlNode makeWholeDateNode = xmlNode.SelectSingleNode("makeWholeDate");

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


            XmlNode recallSpreadNode = xmlNode.SelectSingleNode("recallSpread");

            if (recallSpreadNode != null)
            {
                if (recallSpreadNode.Attributes["href"] != null || recallSpreadNode.Attributes["id"] != null)
                {
                    if (recallSpreadNode.Attributes["id"] != null)
                    {
                        recallSpreadIDRef_ = recallSpreadNode.Attributes["id"].Value;
                        XsdTypeDecimal ob = new XsdTypeDecimal(recallSpreadNode);
                        IDManager.SetID(recallSpreadIDRef_, ob);
                    }
                    else if (recallSpreadNode.Attributes["href"] != null)
                    {
                        recallSpreadIDRef_ = recallSpreadNode.Attributes["href"].Value;
                    }
                    else
                    {
                        recallSpread_ = new XsdTypeDecimal(recallSpreadNode);
                    }
                }
                else
                {
                    recallSpread_ = new XsdTypeDecimal(recallSpreadNode);
                }
            }
        }
示例#36
0
        public TimeDimension(XmlNode xmlNode)
        {
            XmlNode tenorNode = xmlNode.SelectSingleNode("tenor");

            if (tenorNode != null)
            {
                if (tenorNode.Attributes["href"] != null || tenorNode.Attributes["id"] != null)
                {
                    if (tenorNode.Attributes["id"] != null)
                    {
                        tenorIDRef_ = tenorNode.Attributes["id"].Value;
                        Period ob = new Period(tenorNode);
                        IDManager.SetID(tenorIDRef_, ob);
                    }
                    else if (tenorNode.Attributes["href"] != null)
                    {
                        tenorIDRef_ = tenorNode.Attributes["href"].Value;
                    }
                    else
                    {
                        tenor_ = new Period(tenorNode);
                    }
                }
                else
                {
                    tenor_ = new Period(tenorNode);
                }
            }


            XmlNode dateNode = xmlNode.SelectSingleNode("date");

            if (dateNode != null)
            {
                if (dateNode.Attributes["href"] != null || dateNode.Attributes["id"] != null)
                {
                    if (dateNode.Attributes["id"] != null)
                    {
                        dateIDRef_ = dateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(dateNode);
                        IDManager.SetID(dateIDRef_, ob);
                    }
                    else if (dateNode.Attributes["href"] != null)
                    {
                        dateIDRef_ = dateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        date_ = new XsdTypeDate(dateNode);
                    }
                }
                else
                {
                    date_ = new XsdTypeDate(dateNode);
                }
            }
        }
        public SettledEntityMatrix(XmlNode xmlNode)
        {
            XmlNode matrixSourceNode = xmlNode.SelectSingleNode("matrixSource");

            if (matrixSourceNode != null)
            {
                if (matrixSourceNode.Attributes["href"] != null || matrixSourceNode.Attributes["id"] != null)
                {
                    if (matrixSourceNode.Attributes["id"] != null)
                    {
                        matrixSourceIDRef_ = matrixSourceNode.Attributes["id"].Value;
                        MatrixSource ob = new MatrixSource(matrixSourceNode);
                        IDManager.SetID(matrixSourceIDRef_, ob);
                    }
                    else if (matrixSourceNode.Attributes["href"] != null)
                    {
                        matrixSourceIDRef_ = matrixSourceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        matrixSource_ = new MatrixSource(matrixSourceNode);
                    }
                }
                else
                {
                    matrixSource_ = new MatrixSource(matrixSourceNode);
                }
            }


            XmlNode publicationDateNode = xmlNode.SelectSingleNode("publicationDate");

            if (publicationDateNode != null)
            {
                if (publicationDateNode.Attributes["href"] != null || publicationDateNode.Attributes["id"] != null)
                {
                    if (publicationDateNode.Attributes["id"] != null)
                    {
                        publicationDateIDRef_ = publicationDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(publicationDateNode);
                        IDManager.SetID(publicationDateIDRef_, ob);
                    }
                    else if (publicationDateNode.Attributes["href"] != null)
                    {
                        publicationDateIDRef_ = publicationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        publicationDate_ = new XsdTypeDate(publicationDateNode);
                    }
                }
                else
                {
                    publicationDate_ = new XsdTypeDate(publicationDateNode);
                }
            }
        }
示例#38
0
        public AdjustedPaymentDates(XmlNode xmlNode)
        {
            XmlNode adjustedPaymentDateNode = xmlNode.SelectSingleNode("adjustedPaymentDate");

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


            XmlNode paymentAmountNode = xmlNode.SelectSingleNode("paymentAmount");

            if (paymentAmountNode != null)
            {
                if (paymentAmountNode.Attributes["href"] != null || paymentAmountNode.Attributes["id"] != null)
                {
                    if (paymentAmountNode.Attributes["id"] != null)
                    {
                        paymentAmountIDRef_ = paymentAmountNode.Attributes["id"].Value;
                        Money ob = new Money(paymentAmountNode);
                        IDManager.SetID(paymentAmountIDRef_, ob);
                    }
                    else if (paymentAmountNode.Attributes["href"] != null)
                    {
                        paymentAmountIDRef_ = paymentAmountNode.Attributes["href"].Value;
                    }
                    else
                    {
                        paymentAmount_ = new Money(paymentAmountNode);
                    }
                }
                else
                {
                    paymentAmount_ = new Money(paymentAmountNode);
                }
            }
        }
示例#39
0
        public DateRange(XmlNode xmlNode)
        {
            XmlNode unadjustedFirstDateNode = xmlNode.SelectSingleNode("unadjustedFirstDate");

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


            XmlNode unadjustedLastDateNode = xmlNode.SelectSingleNode("unadjustedLastDate");

            if (unadjustedLastDateNode != null)
            {
                if (unadjustedLastDateNode.Attributes["href"] != null || unadjustedLastDateNode.Attributes["id"] != null)
                {
                    if (unadjustedLastDateNode.Attributes["id"] != null)
                    {
                        unadjustedLastDateIDRef_ = unadjustedLastDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(unadjustedLastDateNode);
                        IDManager.SetID(unadjustedLastDateIDRef_, ob);
                    }
                    else if (unadjustedLastDateNode.Attributes["href"] != null)
                    {
                        unadjustedLastDateIDRef_ = unadjustedLastDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        unadjustedLastDate_ = new XsdTypeDate(unadjustedLastDateNode);
                    }
                }
                else
                {
                    unadjustedLastDate_ = new XsdTypeDate(unadjustedLastDateNode);
                }
            }
        }
示例#40
0
        public EEPRiskPeriod(XmlNode xmlNode)
        {
            XmlNode startDateNode = xmlNode.SelectSingleNode("startDate");

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


            XmlNode endDateNode = xmlNode.SelectSingleNode("endDate");

            if (endDateNode != null)
            {
                if (endDateNode.Attributes["href"] != null || endDateNode.Attributes["id"] != null)
                {
                    if (endDateNode.Attributes["id"] != null)
                    {
                        endDateIDRef_ = endDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(endDateNode);
                        IDManager.SetID(endDateIDRef_, ob);
                    }
                    else if (endDateNode.Attributes["href"] != null)
                    {
                        endDateIDRef_ = endDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        endDate_ = new XsdTypeDate(endDateNode);
                    }
                }
                else
                {
                    endDate_ = new XsdTypeDate(endDateNode);
                }
            }
        }
        public CancellationEvent(XmlNode xmlNode)
        {
            XmlNode adjustedExerciseDateNode = xmlNode.SelectSingleNode("adjustedExerciseDate");

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


            XmlNode adjustedEarlyTerminationDateNode = xmlNode.SelectSingleNode("adjustedEarlyTerminationDate");

            if (adjustedEarlyTerminationDateNode != null)
            {
                if (adjustedEarlyTerminationDateNode.Attributes["href"] != null || adjustedEarlyTerminationDateNode.Attributes["id"] != null)
                {
                    if (adjustedEarlyTerminationDateNode.Attributes["id"] != null)
                    {
                        adjustedEarlyTerminationDateIDRef_ = adjustedEarlyTerminationDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(adjustedEarlyTerminationDateNode);
                        IDManager.SetID(adjustedEarlyTerminationDateIDRef_, ob);
                    }
                    else if (adjustedEarlyTerminationDateNode.Attributes["href"] != null)
                    {
                        adjustedEarlyTerminationDateIDRef_ = adjustedEarlyTerminationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        adjustedEarlyTerminationDate_ = new XsdTypeDate(adjustedEarlyTerminationDateNode);
                    }
                }
                else
                {
                    adjustedEarlyTerminationDate_ = new XsdTypeDate(adjustedEarlyTerminationDateNode);
                }
            }
        }
        public ContractualTermsSupplement(XmlNode xmlNode)
        {
            XmlNode typeNode = xmlNode.SelectSingleNode("type");

            if (typeNode != null)
            {
                if (typeNode.Attributes["href"] != null || typeNode.Attributes["id"] != null)
                {
                    if (typeNode.Attributes["id"] != null)
                    {
                        typeIDRef_ = typeNode.Attributes["id"].Value;
                        ContractualSupplement ob = new ContractualSupplement(typeNode);
                        IDManager.SetID(typeIDRef_, ob);
                    }
                    else if (typeNode.Attributes["href"] != null)
                    {
                        typeIDRef_ = typeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        type_ = new ContractualSupplement(typeNode);
                    }
                }
                else
                {
                    type_ = new ContractualSupplement(typeNode);
                }
            }


            XmlNode publicationDateNode = xmlNode.SelectSingleNode("publicationDate");

            if (publicationDateNode != null)
            {
                if (publicationDateNode.Attributes["href"] != null || publicationDateNode.Attributes["id"] != null)
                {
                    if (publicationDateNode.Attributes["id"] != null)
                    {
                        publicationDateIDRef_ = publicationDateNode.Attributes["id"].Value;
                        XsdTypeDate ob = new XsdTypeDate(publicationDateNode);
                        IDManager.SetID(publicationDateIDRef_, ob);
                    }
                    else if (publicationDateNode.Attributes["href"] != null)
                    {
                        publicationDateIDRef_ = publicationDateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        publicationDate_ = new XsdTypeDate(publicationDateNode);
                    }
                }
                else
                {
                    publicationDate_ = new XsdTypeDate(publicationDateNode);
                }
            }
        }
示例#43
0
        public TradeMaturity(XmlNode xmlNode)
        {
            XmlNodeList tradeIdentifierNodeList = xmlNode.SelectNodes("tradeIdentifier");

            foreach (XmlNode item in tradeIdentifierNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        tradeIdentifierIDRef = item.Attributes["id"].Name;
                        List <PartyTradeIdentifier> ob = new List <PartyTradeIdentifier>();
                        ob.Add(new PartyTradeIdentifier(item));
                        IDManager.SetID(tradeIdentifierIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        tradeIdentifierIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        tradeIdentifier.Add(new PartyTradeIdentifier(item));
                    }
                }
            }


            XmlNodeList dateNodeList = xmlNode.SelectNodes("date");

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

            foreach (XmlNode item in dateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(dateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        date = new XsdTypeDate(item);
                    }
                }
            }
        }
 public BasicQuotation(XmlNode xmlNode)
 {
     XmlNode valueNode = xmlNode.SelectSingleNode("value");
     
     if (valueNode != null)
     {
         if (valueNode.Attributes["href"] != null || valueNode.Attributes["id"] != null) 
         {
             if (valueNode.Attributes["id"] != null) 
             {
                 valueIDRef_ = valueNode.Attributes["id"].Value;
                 XsdTypeDecimal ob = new XsdTypeDecimal(valueNode);
                 IDManager.SetID(valueIDRef_, ob);
             }
             else if (valueNode.Attributes["href"] != null)
             {
                 valueIDRef_ = valueNode.Attributes["href"].Value;
             }
             else
             {
                 value_ = new XsdTypeDecimal(valueNode);
             }
         }
         else
         {
             value_ = new XsdTypeDecimal(valueNode);
         }
     }
     
 
     XmlNode measureTypeNode = xmlNode.SelectSingleNode("measureType");
     
     if (measureTypeNode != null)
     {
         if (measureTypeNode.Attributes["href"] != null || measureTypeNode.Attributes["id"] != null) 
         {
             if (measureTypeNode.Attributes["id"] != null) 
             {
                 measureTypeIDRef_ = measureTypeNode.Attributes["id"].Value;
                 AssetMeasureType ob = new AssetMeasureType(measureTypeNode);
                 IDManager.SetID(measureTypeIDRef_, ob);
             }
             else if (measureTypeNode.Attributes["href"] != null)
             {
                 measureTypeIDRef_ = measureTypeNode.Attributes["href"].Value;
             }
             else
             {
                 measureType_ = new AssetMeasureType(measureTypeNode);
             }
         }
         else
         {
             measureType_ = new AssetMeasureType(measureTypeNode);
         }
     }
     
 
     XmlNode quoteUnitsNode = xmlNode.SelectSingleNode("quoteUnits");
     
     if (quoteUnitsNode != null)
     {
         if (quoteUnitsNode.Attributes["href"] != null || quoteUnitsNode.Attributes["id"] != null) 
         {
             if (quoteUnitsNode.Attributes["id"] != null) 
             {
                 quoteUnitsIDRef_ = quoteUnitsNode.Attributes["id"].Value;
                 PriceQuoteUnits ob = new PriceQuoteUnits(quoteUnitsNode);
                 IDManager.SetID(quoteUnitsIDRef_, ob);
             }
             else if (quoteUnitsNode.Attributes["href"] != null)
             {
                 quoteUnitsIDRef_ = quoteUnitsNode.Attributes["href"].Value;
             }
             else
             {
                 quoteUnits_ = new PriceQuoteUnits(quoteUnitsNode);
             }
         }
         else
         {
             quoteUnits_ = new PriceQuoteUnits(quoteUnitsNode);
         }
     }
     
 
     XmlNode sideNode = xmlNode.SelectSingleNode("side");
     
     if (sideNode != null)
     {
         if (sideNode.Attributes["href"] != null || sideNode.Attributes["id"] != null) 
         {
             if (sideNode.Attributes["id"] != null) 
             {
                 sideIDRef_ = sideNode.Attributes["id"].Value;
                 QuotationSideEnum ob = new QuotationSideEnum(sideNode);
                 IDManager.SetID(sideIDRef_, ob);
             }
             else if (sideNode.Attributes["href"] != null)
             {
                 sideIDRef_ = sideNode.Attributes["href"].Value;
             }
             else
             {
                 side_ = new QuotationSideEnum(sideNode);
             }
         }
         else
         {
             side_ = new QuotationSideEnum(sideNode);
         }
     }
     
 
     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 currencyTypeNode = xmlNode.SelectSingleNode("currencyType");
     
     if (currencyTypeNode != null)
     {
         if (currencyTypeNode.Attributes["href"] != null || currencyTypeNode.Attributes["id"] != null) 
         {
             if (currencyTypeNode.Attributes["id"] != null) 
             {
                 currencyTypeIDRef_ = currencyTypeNode.Attributes["id"].Value;
                 ReportingCurrencyType ob = new ReportingCurrencyType(currencyTypeNode);
                 IDManager.SetID(currencyTypeIDRef_, ob);
             }
             else if (currencyTypeNode.Attributes["href"] != null)
             {
                 currencyTypeIDRef_ = currencyTypeNode.Attributes["href"].Value;
             }
             else
             {
                 currencyType_ = new ReportingCurrencyType(currencyTypeNode);
             }
         }
         else
         {
             currencyType_ = new ReportingCurrencyType(currencyTypeNode);
         }
     }
     
 
     XmlNode timingNode = xmlNode.SelectSingleNode("timing");
     
     if (timingNode != null)
     {
         if (timingNode.Attributes["href"] != null || timingNode.Attributes["id"] != null) 
         {
             if (timingNode.Attributes["id"] != null) 
             {
                 timingIDRef_ = timingNode.Attributes["id"].Value;
                 QuoteTiming ob = new QuoteTiming(timingNode);
                 IDManager.SetID(timingIDRef_, ob);
             }
             else if (timingNode.Attributes["href"] != null)
             {
                 timingIDRef_ = timingNode.Attributes["href"].Value;
             }
             else
             {
                 timing_ = new QuoteTiming(timingNode);
             }
         }
         else
         {
             timing_ = new QuoteTiming(timingNode);
         }
     }
     
 
     XmlNode businessCenterNode = xmlNode.SelectSingleNode("businessCenter");
     
     if (businessCenterNode != null)
     {
         if (businessCenterNode.Attributes["href"] != null || businessCenterNode.Attributes["id"] != null) 
         {
             if (businessCenterNode.Attributes["id"] != null) 
             {
                 businessCenterIDRef_ = businessCenterNode.Attributes["id"].Value;
                 BusinessCenter ob = new BusinessCenter(businessCenterNode);
                 IDManager.SetID(businessCenterIDRef_, ob);
             }
             else if (businessCenterNode.Attributes["href"] != null)
             {
                 businessCenterIDRef_ = businessCenterNode.Attributes["href"].Value;
             }
             else
             {
                 businessCenter_ = new BusinessCenter(businessCenterNode);
             }
         }
         else
         {
             businessCenter_ = new BusinessCenter(businessCenterNode);
         }
     }
     
 
     XmlNode exchangeIdNode = xmlNode.SelectSingleNode("exchangeId");
     
     if (exchangeIdNode != null)
     {
         if (exchangeIdNode.Attributes["href"] != null || exchangeIdNode.Attributes["id"] != null) 
         {
             if (exchangeIdNode.Attributes["id"] != null) 
             {
                 exchangeIdIDRef_ = exchangeIdNode.Attributes["id"].Value;
                 ExchangeId ob = new ExchangeId(exchangeIdNode);
                 IDManager.SetID(exchangeIdIDRef_, ob);
             }
             else if (exchangeIdNode.Attributes["href"] != null)
             {
                 exchangeIdIDRef_ = exchangeIdNode.Attributes["href"].Value;
             }
             else
             {
                 exchangeId_ = new ExchangeId(exchangeIdNode);
             }
         }
         else
         {
             exchangeId_ = new ExchangeId(exchangeIdNode);
         }
     }
     
 
     XmlNodeList informationSourceNodeList = xmlNode.SelectNodes("informationSource");
     
     if (informationSourceNodeList != null)
     {
         this.informationSource_ = new List<InformationSource>();
         foreach (XmlNode item in informationSourceNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     informationSourceIDRef_ = item.Attributes["id"].Value;
                     informationSource_.Add(new InformationSource(item));
                     IDManager.SetID(informationSourceIDRef_, informationSource_[informationSource_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     informationSourceIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 informationSource_.Add(new InformationSource(item));
                 }
             }
             else
             {
                 informationSource_.Add(new InformationSource(item));
             }
         }
     }
     
 
     XmlNode pricingModelNode = xmlNode.SelectSingleNode("pricingModel");
     
     if (pricingModelNode != null)
     {
         if (pricingModelNode.Attributes["href"] != null || pricingModelNode.Attributes["id"] != null) 
         {
             if (pricingModelNode.Attributes["id"] != null) 
             {
                 pricingModelIDRef_ = pricingModelNode.Attributes["id"].Value;
                 PricingModel ob = new PricingModel(pricingModelNode);
                 IDManager.SetID(pricingModelIDRef_, ob);
             }
             else if (pricingModelNode.Attributes["href"] != null)
             {
                 pricingModelIDRef_ = pricingModelNode.Attributes["href"].Value;
             }
             else
             {
                 pricingModel_ = new PricingModel(pricingModelNode);
             }
         }
         else
         {
             pricingModel_ = new PricingModel(pricingModelNode);
         }
     }
     
 
     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;
                 XsdTypeDateTime ob = new XsdTypeDateTime(timeNode);
                 IDManager.SetID(timeIDRef_, ob);
             }
             else if (timeNode.Attributes["href"] != null)
             {
                 timeIDRef_ = timeNode.Attributes["href"].Value;
             }
             else
             {
                 time_ = new XsdTypeDateTime(timeNode);
             }
         }
         else
         {
             time_ = new XsdTypeDateTime(timeNode);
         }
     }
     
 
     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;
                 XsdTypeDate ob = new XsdTypeDate(valuationDateNode);
                 IDManager.SetID(valuationDateIDRef_, ob);
             }
             else if (valuationDateNode.Attributes["href"] != null)
             {
                 valuationDateIDRef_ = valuationDateNode.Attributes["href"].Value;
             }
             else
             {
                 valuationDate_ = new XsdTypeDate(valuationDateNode);
             }
         }
         else
         {
             valuationDate_ = new XsdTypeDate(valuationDateNode);
         }
     }
     
 
     XmlNode expiryTimeNode = xmlNode.SelectSingleNode("expiryTime");
     
     if (expiryTimeNode != null)
     {
         if (expiryTimeNode.Attributes["href"] != null || expiryTimeNode.Attributes["id"] != null) 
         {
             if (expiryTimeNode.Attributes["id"] != null) 
             {
                 expiryTimeIDRef_ = expiryTimeNode.Attributes["id"].Value;
                 XsdTypeDateTime ob = new XsdTypeDateTime(expiryTimeNode);
                 IDManager.SetID(expiryTimeIDRef_, ob);
             }
             else if (expiryTimeNode.Attributes["href"] != null)
             {
                 expiryTimeIDRef_ = expiryTimeNode.Attributes["href"].Value;
             }
             else
             {
                 expiryTime_ = new XsdTypeDateTime(expiryTimeNode);
             }
         }
         else
         {
             expiryTime_ = new XsdTypeDateTime(expiryTimeNode);
         }
     }
     
 
     XmlNode cashflowTypeNode = xmlNode.SelectSingleNode("cashflowType");
     
     if (cashflowTypeNode != null)
     {
         if (cashflowTypeNode.Attributes["href"] != null || cashflowTypeNode.Attributes["id"] != null) 
         {
             if (cashflowTypeNode.Attributes["id"] != null) 
             {
                 cashflowTypeIDRef_ = cashflowTypeNode.Attributes["id"].Value;
                 CashflowType ob = new CashflowType(cashflowTypeNode);
                 IDManager.SetID(cashflowTypeIDRef_, ob);
             }
             else if (cashflowTypeNode.Attributes["href"] != null)
             {
                 cashflowTypeIDRef_ = cashflowTypeNode.Attributes["href"].Value;
             }
             else
             {
                 cashflowType_ = new CashflowType(cashflowTypeNode);
             }
         }
         else
         {
             cashflowType_ = new CashflowType(cashflowTypeNode);
         }
     }
     
 
 }
 public CreditEventNoticeDocument(XmlNode xmlNode)
 {
     XmlNode affectedTransactionsNode = xmlNode.SelectSingleNode("affectedTransactions");
     
     if (affectedTransactionsNode != null)
     {
         if (affectedTransactionsNode.Attributes["href"] != null || affectedTransactionsNode.Attributes["id"] != null) 
         {
             if (affectedTransactionsNode.Attributes["id"] != null) 
             {
                 affectedTransactionsIDRef_ = affectedTransactionsNode.Attributes["id"].Value;
                 AffectedTransactions ob = new AffectedTransactions(affectedTransactionsNode);
                 IDManager.SetID(affectedTransactionsIDRef_, ob);
             }
             else if (affectedTransactionsNode.Attributes["href"] != null)
             {
                 affectedTransactionsIDRef_ = affectedTransactionsNode.Attributes["href"].Value;
             }
             else
             {
                 affectedTransactions_ = new AffectedTransactions(affectedTransactionsNode);
             }
         }
         else
         {
             affectedTransactions_ = new AffectedTransactions(affectedTransactionsNode);
         }
     }
     
 
     XmlNode referenceEntityNode = xmlNode.SelectSingleNode("referenceEntity");
     
     if (referenceEntityNode != null)
     {
         if (referenceEntityNode.Attributes["href"] != null || referenceEntityNode.Attributes["id"] != null) 
         {
             if (referenceEntityNode.Attributes["id"] != null) 
             {
                 referenceEntityIDRef_ = referenceEntityNode.Attributes["id"].Value;
                 LegalEntity ob = new LegalEntity(referenceEntityNode);
                 IDManager.SetID(referenceEntityIDRef_, ob);
             }
             else if (referenceEntityNode.Attributes["href"] != null)
             {
                 referenceEntityIDRef_ = referenceEntityNode.Attributes["href"].Value;
             }
             else
             {
                 referenceEntity_ = new LegalEntity(referenceEntityNode);
             }
         }
         else
         {
             referenceEntity_ = new LegalEntity(referenceEntityNode);
         }
     }
     
 
     XmlNode creditEventNode = xmlNode.SelectSingleNode("creditEvent");
     
     if (creditEventNode != null)
     {
         if (creditEventNode.Attributes["href"] != null || creditEventNode.Attributes["id"] != null) 
         {
             if (creditEventNode.Attributes["id"] != null) 
             {
                 creditEventIDRef_ = creditEventNode.Attributes["id"].Value;
                 CreditEvent ob = new CreditEvent(creditEventNode);
                 IDManager.SetID(creditEventIDRef_, ob);
             }
             else if (creditEventNode.Attributes["href"] != null)
             {
                 creditEventIDRef_ = creditEventNode.Attributes["href"].Value;
             }
             else
             {
                 creditEvent_ = new CreditEvent(creditEventNode);
             }
         }
         else
         {
             creditEvent_ = new CreditEvent(creditEventNode);
         }
     }
     
 
     XmlNode bankruptcyNode = xmlNode.SelectSingleNode("bankruptcy");
     
     if (bankruptcyNode != null)
     {
         if (bankruptcyNode.Attributes["href"] != null || bankruptcyNode.Attributes["id"] != null) 
         {
             if (bankruptcyNode.Attributes["id"] != null) 
             {
                 bankruptcyIDRef_ = bankruptcyNode.Attributes["id"].Value;
                 BankruptcyEvent ob = new BankruptcyEvent(bankruptcyNode);
                 IDManager.SetID(bankruptcyIDRef_, ob);
             }
             else if (bankruptcyNode.Attributes["href"] != null)
             {
                 bankruptcyIDRef_ = bankruptcyNode.Attributes["href"].Value;
             }
             else
             {
                 bankruptcy_ = new BankruptcyEvent(bankruptcyNode);
             }
         }
         else
         {
             bankruptcy_ = new BankruptcyEvent(bankruptcyNode);
         }
     }
     
 
     XmlNode failureToPayNode = xmlNode.SelectSingleNode("failureToPay");
     
     if (failureToPayNode != null)
     {
         if (failureToPayNode.Attributes["href"] != null || failureToPayNode.Attributes["id"] != null) 
         {
             if (failureToPayNode.Attributes["id"] != null) 
             {
                 failureToPayIDRef_ = failureToPayNode.Attributes["id"].Value;
                 FailureToPayEvent ob = new FailureToPayEvent(failureToPayNode);
                 IDManager.SetID(failureToPayIDRef_, ob);
             }
             else if (failureToPayNode.Attributes["href"] != null)
             {
                 failureToPayIDRef_ = failureToPayNode.Attributes["href"].Value;
             }
             else
             {
                 failureToPay_ = new FailureToPayEvent(failureToPayNode);
             }
         }
         else
         {
             failureToPay_ = new FailureToPayEvent(failureToPayNode);
         }
     }
     
 
     XmlNode obligationAccelerationNode = xmlNode.SelectSingleNode("obligationAcceleration");
     
     if (obligationAccelerationNode != null)
     {
         if (obligationAccelerationNode.Attributes["href"] != null || obligationAccelerationNode.Attributes["id"] != null) 
         {
             if (obligationAccelerationNode.Attributes["id"] != null) 
             {
                 obligationAccelerationIDRef_ = obligationAccelerationNode.Attributes["id"].Value;
                 ObligationAccelerationEvent ob = new ObligationAccelerationEvent(obligationAccelerationNode);
                 IDManager.SetID(obligationAccelerationIDRef_, ob);
             }
             else if (obligationAccelerationNode.Attributes["href"] != null)
             {
                 obligationAccelerationIDRef_ = obligationAccelerationNode.Attributes["href"].Value;
             }
             else
             {
                 obligationAcceleration_ = new ObligationAccelerationEvent(obligationAccelerationNode);
             }
         }
         else
         {
             obligationAcceleration_ = new ObligationAccelerationEvent(obligationAccelerationNode);
         }
     }
     
 
     XmlNode obligationDefaultNode = xmlNode.SelectSingleNode("obligationDefault");
     
     if (obligationDefaultNode != null)
     {
         if (obligationDefaultNode.Attributes["href"] != null || obligationDefaultNode.Attributes["id"] != null) 
         {
             if (obligationDefaultNode.Attributes["id"] != null) 
             {
                 obligationDefaultIDRef_ = obligationDefaultNode.Attributes["id"].Value;
                 ObligationDefaultEvent ob = new ObligationDefaultEvent(obligationDefaultNode);
                 IDManager.SetID(obligationDefaultIDRef_, ob);
             }
             else if (obligationDefaultNode.Attributes["href"] != null)
             {
                 obligationDefaultIDRef_ = obligationDefaultNode.Attributes["href"].Value;
             }
             else
             {
                 obligationDefault_ = new ObligationDefaultEvent(obligationDefaultNode);
             }
         }
         else
         {
             obligationDefault_ = new ObligationDefaultEvent(obligationDefaultNode);
         }
     }
     
 
     XmlNode repudiationMoratoriumNode = xmlNode.SelectSingleNode("repudiationMoratorium");
     
     if (repudiationMoratoriumNode != null)
     {
         if (repudiationMoratoriumNode.Attributes["href"] != null || repudiationMoratoriumNode.Attributes["id"] != null) 
         {
             if (repudiationMoratoriumNode.Attributes["id"] != null) 
             {
                 repudiationMoratoriumIDRef_ = repudiationMoratoriumNode.Attributes["id"].Value;
                 RepudiationMoratoriumEvent ob = new RepudiationMoratoriumEvent(repudiationMoratoriumNode);
                 IDManager.SetID(repudiationMoratoriumIDRef_, ob);
             }
             else if (repudiationMoratoriumNode.Attributes["href"] != null)
             {
                 repudiationMoratoriumIDRef_ = repudiationMoratoriumNode.Attributes["href"].Value;
             }
             else
             {
                 repudiationMoratorium_ = new RepudiationMoratoriumEvent(repudiationMoratoriumNode);
             }
         }
         else
         {
             repudiationMoratorium_ = new RepudiationMoratoriumEvent(repudiationMoratoriumNode);
         }
     }
     
 
     XmlNode restructuringNode = xmlNode.SelectSingleNode("restructuring");
     
     if (restructuringNode != null)
     {
         if (restructuringNode.Attributes["href"] != null || restructuringNode.Attributes["id"] != null) 
         {
             if (restructuringNode.Attributes["id"] != null) 
             {
                 restructuringIDRef_ = restructuringNode.Attributes["id"].Value;
                 RestructuringEvent ob = new RestructuringEvent(restructuringNode);
                 IDManager.SetID(restructuringIDRef_, ob);
             }
             else if (restructuringNode.Attributes["href"] != null)
             {
                 restructuringIDRef_ = restructuringNode.Attributes["href"].Value;
             }
             else
             {
                 restructuring_ = new RestructuringEvent(restructuringNode);
             }
         }
         else
         {
             restructuring_ = new RestructuringEvent(restructuringNode);
         }
     }
     
 
     XmlNodeList publiclyAvailableInformationNodeList = xmlNode.SelectNodes("publiclyAvailableInformation");
     
     if (publiclyAvailableInformationNodeList != null)
     {
         this.publiclyAvailableInformation_ = new List<Resource>();
         foreach (XmlNode item in publiclyAvailableInformationNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     publiclyAvailableInformationIDRef_ = item.Attributes["id"].Value;
                     publiclyAvailableInformation_.Add(new Resource(item));
                     IDManager.SetID(publiclyAvailableInformationIDRef_, publiclyAvailableInformation_[publiclyAvailableInformation_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     publiclyAvailableInformationIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 publiclyAvailableInformation_.Add(new Resource(item));
                 }
             }
             else
             {
                 publiclyAvailableInformation_.Add(new Resource(item));
             }
         }
     }
     
 
     XmlNode notifyingPartyReferenceNode = xmlNode.SelectSingleNode("notifyingPartyReference");
     
     if (notifyingPartyReferenceNode != null)
     {
         if (notifyingPartyReferenceNode.Attributes["href"] != null || notifyingPartyReferenceNode.Attributes["id"] != null) 
         {
             if (notifyingPartyReferenceNode.Attributes["id"] != null) 
             {
                 notifyingPartyReferenceIDRef_ = notifyingPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(notifyingPartyReferenceNode);
                 IDManager.SetID(notifyingPartyReferenceIDRef_, ob);
             }
             else if (notifyingPartyReferenceNode.Attributes["href"] != null)
             {
                 notifyingPartyReferenceIDRef_ = notifyingPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 notifyingPartyReference_ = new PartyReference(notifyingPartyReferenceNode);
             }
         }
         else
         {
             notifyingPartyReference_ = new PartyReference(notifyingPartyReferenceNode);
         }
     }
     
 
     XmlNode notifiedPartyReferenceNode = xmlNode.SelectSingleNode("notifiedPartyReference");
     
     if (notifiedPartyReferenceNode != null)
     {
         if (notifiedPartyReferenceNode.Attributes["href"] != null || notifiedPartyReferenceNode.Attributes["id"] != null) 
         {
             if (notifiedPartyReferenceNode.Attributes["id"] != null) 
             {
                 notifiedPartyReferenceIDRef_ = notifiedPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(notifiedPartyReferenceNode);
                 IDManager.SetID(notifiedPartyReferenceIDRef_, ob);
             }
             else if (notifiedPartyReferenceNode.Attributes["href"] != null)
             {
                 notifiedPartyReferenceIDRef_ = notifiedPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 notifiedPartyReference_ = new PartyReference(notifiedPartyReferenceNode);
             }
         }
         else
         {
             notifiedPartyReference_ = new PartyReference(notifiedPartyReferenceNode);
         }
     }
     
 
     XmlNode creditEventNoticeDateNode = xmlNode.SelectSingleNode("creditEventNoticeDate");
     
     if (creditEventNoticeDateNode != null)
     {
         if (creditEventNoticeDateNode.Attributes["href"] != null || creditEventNoticeDateNode.Attributes["id"] != null) 
         {
             if (creditEventNoticeDateNode.Attributes["id"] != null) 
             {
                 creditEventNoticeDateIDRef_ = creditEventNoticeDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(creditEventNoticeDateNode);
                 IDManager.SetID(creditEventNoticeDateIDRef_, ob);
             }
             else if (creditEventNoticeDateNode.Attributes["href"] != null)
             {
                 creditEventNoticeDateIDRef_ = creditEventNoticeDateNode.Attributes["href"].Value;
             }
             else
             {
                 creditEventNoticeDate_ = new XsdTypeDate(creditEventNoticeDateNode);
             }
         }
         else
         {
             creditEventNoticeDate_ = new XsdTypeDate(creditEventNoticeDateNode);
         }
     }
     
 
     XmlNode creditEventDateNode = xmlNode.SelectSingleNode("creditEventDate");
     
     if (creditEventDateNode != null)
     {
         if (creditEventDateNode.Attributes["href"] != null || creditEventDateNode.Attributes["id"] != null) 
         {
             if (creditEventDateNode.Attributes["id"] != null) 
             {
                 creditEventDateIDRef_ = creditEventDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(creditEventDateNode);
                 IDManager.SetID(creditEventDateIDRef_, ob);
             }
             else if (creditEventDateNode.Attributes["href"] != null)
             {
                 creditEventDateIDRef_ = creditEventDateNode.Attributes["href"].Value;
             }
             else
             {
                 creditEventDate_ = new XsdTypeDate(creditEventDateNode);
             }
         }
         else
         {
             creditEventDate_ = new XsdTypeDate(creditEventDateNode);
         }
     }
     
 
 }
 public ImplementationSpecification(XmlNode xmlNode)
 {
     XmlNode nameNode = xmlNode.SelectSingleNode("name");
     
     if (nameNode != null)
     {
         if (nameNode.Attributes["href"] != null || nameNode.Attributes["id"] != null) 
         {
             if (nameNode.Attributes["id"] != null) 
             {
                 nameIDRef_ = nameNode.Attributes["id"].Value;
                 XsdTypeNormalizedString ob = new XsdTypeNormalizedString(nameNode);
                 IDManager.SetID(nameIDRef_, ob);
             }
             else if (nameNode.Attributes["href"] != null)
             {
                 nameIDRef_ = nameNode.Attributes["href"].Value;
             }
             else
             {
                 name_ = new XsdTypeNormalizedString(nameNode);
             }
         }
         else
         {
             name_ = new XsdTypeNormalizedString(nameNode);
         }
     }
     
 
     XmlNode versionNode = xmlNode.SelectSingleNode("version");
     
     if (versionNode != null)
     {
         if (versionNode.Attributes["href"] != null || versionNode.Attributes["id"] != null) 
         {
             if (versionNode.Attributes["id"] != null) 
             {
                 versionIDRef_ = versionNode.Attributes["id"].Value;
                 ImplementationSpecificationVersion ob = new ImplementationSpecificationVersion(versionNode);
                 IDManager.SetID(versionIDRef_, ob);
             }
             else if (versionNode.Attributes["href"] != null)
             {
                 versionIDRef_ = versionNode.Attributes["href"].Value;
             }
             else
             {
                 version_ = new ImplementationSpecificationVersion(versionNode);
             }
         }
         else
         {
             version_ = new ImplementationSpecificationVersion(versionNode);
         }
     }
     
 
     XmlNode dateNode = xmlNode.SelectSingleNode("date");
     
     if (dateNode != null)
     {
         if (dateNode.Attributes["href"] != null || dateNode.Attributes["id"] != null) 
         {
             if (dateNode.Attributes["id"] != null) 
             {
                 dateIDRef_ = dateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(dateNode);
                 IDManager.SetID(dateIDRef_, ob);
             }
             else if (dateNode.Attributes["href"] != null)
             {
                 dateIDRef_ = dateNode.Attributes["href"].Value;
             }
             else
             {
                 date_ = new XsdTypeDate(dateNode);
             }
         }
         else
         {
             date_ = new XsdTypeDate(dateNode);
         }
     }
     
 
 }
 public Excel_referenceObligation(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode instrumentIdNode = xmlNode.SelectSingleNode("instrumentId");
     
     if (instrumentIdNode != null)
     {
         if (instrumentIdNode.Attributes["href"] != null || instrumentIdNode.Attributes["id"] != null) 
         {
             if (instrumentIdNode.Attributes["id"] != null) 
             {
                 instrumentIdIDRef_ = instrumentIdNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(instrumentIdNode);
                 IDManager.SetID(instrumentIdIDRef_, ob);
             }
             else if (instrumentIdNode.Attributes["href"] != null)
             {
                 instrumentIdIDRef_ = instrumentIdNode.Attributes["href"].Value;
             }
             else
             {
                 instrumentId_ = new XsdTypeToken(instrumentIdNode);
             }
         }
         else
         {
             instrumentId_ = new XsdTypeToken(instrumentIdNode);
         }
     }
     
 
     XmlNode couponRateNode = xmlNode.SelectSingleNode("couponRate");
     
     if (couponRateNode != null)
     {
         if (couponRateNode.Attributes["href"] != null || couponRateNode.Attributes["id"] != null) 
         {
             if (couponRateNode.Attributes["id"] != null) 
             {
                 couponRateIDRef_ = couponRateNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(couponRateNode);
                 IDManager.SetID(couponRateIDRef_, ob);
             }
             else if (couponRateNode.Attributes["href"] != null)
             {
                 couponRateIDRef_ = couponRateNode.Attributes["href"].Value;
             }
             else
             {
                 couponRate_ = new XsdTypeDouble(couponRateNode);
             }
         }
         else
         {
             couponRate_ = new XsdTypeDouble(couponRateNode);
         }
     }
     
 
     XmlNode maturityNode = xmlNode.SelectSingleNode("maturity");
     
     if (maturityNode != null)
     {
         if (maturityNode.Attributes["href"] != null || maturityNode.Attributes["id"] != null) 
         {
             if (maturityNode.Attributes["id"] != null) 
             {
                 maturityIDRef_ = maturityNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(maturityNode);
                 IDManager.SetID(maturityIDRef_, ob);
             }
             else if (maturityNode.Attributes["href"] != null)
             {
                 maturityIDRef_ = maturityNode.Attributes["href"].Value;
             }
             else
             {
                 maturity_ = new XsdTypeDate(maturityNode);
             }
         }
         else
         {
             maturity_ = new XsdTypeDate(maturityNode);
         }
     }
     
 
     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;
                 XsdTypeToken ob = new XsdTypeToken(currencyNode);
                 IDManager.SetID(currencyIDRef_, ob);
             }
             else if (currencyNode.Attributes["href"] != null)
             {
                 currencyIDRef_ = currencyNode.Attributes["href"].Value;
             }
             else
             {
                 currency_ = new XsdTypeToken(currencyNode);
             }
         }
         else
         {
             currency_ = new XsdTypeToken(currencyNode);
         }
     }
     
 
 }
 public ForwardSale(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode buyerPartyReferenceNode = xmlNode.SelectSingleNode("buyerPartyReference");
     
     if (buyerPartyReferenceNode != null)
     {
         if (buyerPartyReferenceNode.Attributes["href"] != null || buyerPartyReferenceNode.Attributes["id"] != null) 
         {
             if (buyerPartyReferenceNode.Attributes["id"] != null) 
             {
                 buyerPartyReferenceIDRef_ = buyerPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(buyerPartyReferenceNode);
                 IDManager.SetID(buyerPartyReferenceIDRef_, ob);
             }
             else if (buyerPartyReferenceNode.Attributes["href"] != null)
             {
                 buyerPartyReferenceIDRef_ = buyerPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 buyerPartyReference_ = new PartyReference(buyerPartyReferenceNode);
             }
         }
         else
         {
             buyerPartyReference_ = new PartyReference(buyerPartyReferenceNode);
         }
     }
     
 
     XmlNode buyerAccountReferenceNode = xmlNode.SelectSingleNode("buyerAccountReference");
     
     if (buyerAccountReferenceNode != null)
     {
         if (buyerAccountReferenceNode.Attributes["href"] != null || buyerAccountReferenceNode.Attributes["id"] != null) 
         {
             if (buyerAccountReferenceNode.Attributes["id"] != null) 
             {
                 buyerAccountReferenceIDRef_ = buyerAccountReferenceNode.Attributes["id"].Value;
                 AccountReference ob = new AccountReference(buyerAccountReferenceNode);
                 IDManager.SetID(buyerAccountReferenceIDRef_, ob);
             }
             else if (buyerAccountReferenceNode.Attributes["href"] != null)
             {
                 buyerAccountReferenceIDRef_ = buyerAccountReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 buyerAccountReference_ = new AccountReference(buyerAccountReferenceNode);
             }
         }
         else
         {
             buyerAccountReference_ = new AccountReference(buyerAccountReferenceNode);
         }
     }
     
 
     XmlNode sellerPartyReferenceNode = xmlNode.SelectSingleNode("sellerPartyReference");
     
     if (sellerPartyReferenceNode != null)
     {
         if (sellerPartyReferenceNode.Attributes["href"] != null || sellerPartyReferenceNode.Attributes["id"] != null) 
         {
             if (sellerPartyReferenceNode.Attributes["id"] != null) 
             {
                 sellerPartyReferenceIDRef_ = sellerPartyReferenceNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(sellerPartyReferenceNode);
                 IDManager.SetID(sellerPartyReferenceIDRef_, ob);
             }
             else if (sellerPartyReferenceNode.Attributes["href"] != null)
             {
                 sellerPartyReferenceIDRef_ = sellerPartyReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 sellerPartyReference_ = new PartyReference(sellerPartyReferenceNode);
             }
         }
         else
         {
             sellerPartyReference_ = new PartyReference(sellerPartyReferenceNode);
         }
     }
     
 
     XmlNode sellerAccountReferenceNode = xmlNode.SelectSingleNode("sellerAccountReference");
     
     if (sellerAccountReferenceNode != null)
     {
         if (sellerAccountReferenceNode.Attributes["href"] != null || sellerAccountReferenceNode.Attributes["id"] != null) 
         {
             if (sellerAccountReferenceNode.Attributes["id"] != null) 
             {
                 sellerAccountReferenceIDRef_ = sellerAccountReferenceNode.Attributes["id"].Value;
                 AccountReference ob = new AccountReference(sellerAccountReferenceNode);
                 IDManager.SetID(sellerAccountReferenceIDRef_, ob);
             }
             else if (sellerAccountReferenceNode.Attributes["href"] != null)
             {
                 sellerAccountReferenceIDRef_ = sellerAccountReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 sellerAccountReference_ = new AccountReference(sellerAccountReferenceNode);
             }
         }
         else
         {
             sellerAccountReference_ = new AccountReference(sellerAccountReferenceNode);
         }
     }
     
 
     XmlNode underlyingAssetNode = xmlNode.SelectSingleNode("underlyingAsset");
     
     if (underlyingAssetNode != null)
     {
         if (underlyingAssetNode.Attributes["href"] != null || underlyingAssetNode.Attributes["id"] != null) 
         {
             if (underlyingAssetNode.Attributes["id"] != null) 
             {
                 underlyingAssetIDRef_ = underlyingAssetNode.Attributes["id"].Value;
                 Asset ob = new Asset(underlyingAssetNode);
                 IDManager.SetID(underlyingAssetIDRef_, ob);
             }
             else if (underlyingAssetNode.Attributes["href"] != null)
             {
                 underlyingAssetIDRef_ = underlyingAssetNode.Attributes["href"].Value;
             }
             else
             {
                 underlyingAsset_ = new Asset(underlyingAssetNode);
             }
         }
         else
         {
             underlyingAsset_ = new Asset(underlyingAssetNode);
         }
     }
     
 
     XmlNode basketNode = xmlNode.SelectSingleNode("basket");
     
     if (basketNode != null)
     {
         if (basketNode.Attributes["href"] != null || basketNode.Attributes["id"] != null) 
         {
             if (basketNode.Attributes["id"] != null) 
             {
                 basketIDRef_ = basketNode.Attributes["id"].Value;
                 Basket ob = new Basket(basketNode);
                 IDManager.SetID(basketIDRef_, ob);
             }
             else if (basketNode.Attributes["href"] != null)
             {
                 basketIDRef_ = basketNode.Attributes["href"].Value;
             }
             else
             {
                 basket_ = new Basket(basketNode);
             }
         }
         else
         {
             basket_ = new Basket(basketNode);
         }
     }
     
 
     XmlNode bondNode = xmlNode.SelectSingleNode("bond");
     
     if (bondNode != null)
     {
         if (bondNode.Attributes["href"] != null || bondNode.Attributes["id"] != null) 
         {
             if (bondNode.Attributes["id"] != null) 
             {
                 bondIDRef_ = bondNode.Attributes["id"].Value;
                 Bond ob = new Bond(bondNode);
                 IDManager.SetID(bondIDRef_, ob);
             }
             else if (bondNode.Attributes["href"] != null)
             {
                 bondIDRef_ = bondNode.Attributes["href"].Value;
             }
             else
             {
                 bond_ = new Bond(bondNode);
             }
         }
         else
         {
             bond_ = new Bond(bondNode);
         }
     }
     
 
     XmlNode cashNode = xmlNode.SelectSingleNode("cash");
     
     if (cashNode != null)
     {
         if (cashNode.Attributes["href"] != null || cashNode.Attributes["id"] != null) 
         {
             if (cashNode.Attributes["id"] != null) 
             {
                 cashIDRef_ = cashNode.Attributes["id"].Value;
                 Cash ob = new Cash(cashNode);
                 IDManager.SetID(cashIDRef_, ob);
             }
             else if (cashNode.Attributes["href"] != null)
             {
                 cashIDRef_ = cashNode.Attributes["href"].Value;
             }
             else
             {
                 cash_ = new Cash(cashNode);
             }
         }
         else
         {
             cash_ = new Cash(cashNode);
         }
     }
     
 
     XmlNode commodityNode = xmlNode.SelectSingleNode("commodity");
     
     if (commodityNode != null)
     {
         if (commodityNode.Attributes["href"] != null || commodityNode.Attributes["id"] != null) 
         {
             if (commodityNode.Attributes["id"] != null) 
             {
                 commodityIDRef_ = commodityNode.Attributes["id"].Value;
                 Commodity ob = new Commodity(commodityNode);
                 IDManager.SetID(commodityIDRef_, ob);
             }
             else if (commodityNode.Attributes["href"] != null)
             {
                 commodityIDRef_ = commodityNode.Attributes["href"].Value;
             }
             else
             {
                 commodity_ = new Commodity(commodityNode);
             }
         }
         else
         {
             commodity_ = new Commodity(commodityNode);
         }
     }
     
 
     XmlNode convertibleBondNode = xmlNode.SelectSingleNode("convertibleBond");
     
     if (convertibleBondNode != null)
     {
         if (convertibleBondNode.Attributes["href"] != null || convertibleBondNode.Attributes["id"] != null) 
         {
             if (convertibleBondNode.Attributes["id"] != null) 
             {
                 convertibleBondIDRef_ = convertibleBondNode.Attributes["id"].Value;
                 ConvertibleBond ob = new ConvertibleBond(convertibleBondNode);
                 IDManager.SetID(convertibleBondIDRef_, ob);
             }
             else if (convertibleBondNode.Attributes["href"] != null)
             {
                 convertibleBondIDRef_ = convertibleBondNode.Attributes["href"].Value;
             }
             else
             {
                 convertibleBond_ = new ConvertibleBond(convertibleBondNode);
             }
         }
         else
         {
             convertibleBond_ = new ConvertibleBond(convertibleBondNode);
         }
     }
     
 
     XmlNode equityNode = xmlNode.SelectSingleNode("equity");
     
     if (equityNode != null)
     {
         if (equityNode.Attributes["href"] != null || equityNode.Attributes["id"] != null) 
         {
             if (equityNode.Attributes["id"] != null) 
             {
                 equityIDRef_ = equityNode.Attributes["id"].Value;
                 EquityAsset ob = new EquityAsset(equityNode);
                 IDManager.SetID(equityIDRef_, ob);
             }
             else if (equityNode.Attributes["href"] != null)
             {
                 equityIDRef_ = equityNode.Attributes["href"].Value;
             }
             else
             {
                 equity_ = new EquityAsset(equityNode);
             }
         }
         else
         {
             equity_ = new EquityAsset(equityNode);
         }
     }
     
 
     XmlNode exchangeTradedFundNode = xmlNode.SelectSingleNode("exchangeTradedFund");
     
     if (exchangeTradedFundNode != null)
     {
         if (exchangeTradedFundNode.Attributes["href"] != null || exchangeTradedFundNode.Attributes["id"] != null) 
         {
             if (exchangeTradedFundNode.Attributes["id"] != null) 
             {
                 exchangeTradedFundIDRef_ = exchangeTradedFundNode.Attributes["id"].Value;
                 ExchangeTradedFund ob = new ExchangeTradedFund(exchangeTradedFundNode);
                 IDManager.SetID(exchangeTradedFundIDRef_, ob);
             }
             else if (exchangeTradedFundNode.Attributes["href"] != null)
             {
                 exchangeTradedFundIDRef_ = exchangeTradedFundNode.Attributes["href"].Value;
             }
             else
             {
                 exchangeTradedFund_ = new ExchangeTradedFund(exchangeTradedFundNode);
             }
         }
         else
         {
             exchangeTradedFund_ = new ExchangeTradedFund(exchangeTradedFundNode);
         }
     }
     
 
     XmlNode futureNode = xmlNode.SelectSingleNode("future");
     
     if (futureNode != null)
     {
         if (futureNode.Attributes["href"] != null || futureNode.Attributes["id"] != null) 
         {
             if (futureNode.Attributes["id"] != null) 
             {
                 futureIDRef_ = futureNode.Attributes["id"].Value;
                 Future ob = new Future(futureNode);
                 IDManager.SetID(futureIDRef_, ob);
             }
             else if (futureNode.Attributes["href"] != null)
             {
                 futureIDRef_ = futureNode.Attributes["href"].Value;
             }
             else
             {
                 future_ = new Future(futureNode);
             }
         }
         else
         {
             future_ = new Future(futureNode);
         }
     }
     
 
     XmlNode indexNode = xmlNode.SelectSingleNode("index");
     
     if (indexNode != null)
     {
         if (indexNode.Attributes["href"] != null || indexNode.Attributes["id"] != null) 
         {
             if (indexNode.Attributes["id"] != null) 
             {
                 indexIDRef_ = indexNode.Attributes["id"].Value;
                 Index ob = new Index(indexNode);
                 IDManager.SetID(indexIDRef_, ob);
             }
             else if (indexNode.Attributes["href"] != null)
             {
                 indexIDRef_ = indexNode.Attributes["href"].Value;
             }
             else
             {
                 index_ = new Index(indexNode);
             }
         }
         else
         {
             index_ = new Index(indexNode);
         }
     }
     
 
     XmlNode loanNode = xmlNode.SelectSingleNode("loan");
     
     if (loanNode != null)
     {
         if (loanNode.Attributes["href"] != null || loanNode.Attributes["id"] != null) 
         {
             if (loanNode.Attributes["id"] != null) 
             {
                 loanIDRef_ = loanNode.Attributes["id"].Value;
                 Loan ob = new Loan(loanNode);
                 IDManager.SetID(loanIDRef_, ob);
             }
             else if (loanNode.Attributes["href"] != null)
             {
                 loanIDRef_ = loanNode.Attributes["href"].Value;
             }
             else
             {
                 loan_ = new Loan(loanNode);
             }
         }
         else
         {
             loan_ = new Loan(loanNode);
         }
     }
     
 
     XmlNode mortgageNode = xmlNode.SelectSingleNode("mortgage");
     
     if (mortgageNode != null)
     {
         if (mortgageNode.Attributes["href"] != null || mortgageNode.Attributes["id"] != null) 
         {
             if (mortgageNode.Attributes["id"] != null) 
             {
                 mortgageIDRef_ = mortgageNode.Attributes["id"].Value;
                 Mortgage ob = new Mortgage(mortgageNode);
                 IDManager.SetID(mortgageIDRef_, ob);
             }
             else if (mortgageNode.Attributes["href"] != null)
             {
                 mortgageIDRef_ = mortgageNode.Attributes["href"].Value;
             }
             else
             {
                 mortgage_ = new Mortgage(mortgageNode);
             }
         }
         else
         {
             mortgage_ = new Mortgage(mortgageNode);
         }
     }
     
 
     XmlNode mutualFundNode = xmlNode.SelectSingleNode("mutualFund");
     
     if (mutualFundNode != null)
     {
         if (mutualFundNode.Attributes["href"] != null || mutualFundNode.Attributes["id"] != null) 
         {
             if (mutualFundNode.Attributes["id"] != null) 
             {
                 mutualFundIDRef_ = mutualFundNode.Attributes["id"].Value;
                 MutualFund ob = new MutualFund(mutualFundNode);
                 IDManager.SetID(mutualFundIDRef_, ob);
             }
             else if (mutualFundNode.Attributes["href"] != null)
             {
                 mutualFundIDRef_ = mutualFundNode.Attributes["href"].Value;
             }
             else
             {
                 mutualFund_ = new MutualFund(mutualFundNode);
             }
         }
         else
         {
             mutualFund_ = new MutualFund(mutualFundNode);
         }
     }
     
 
     XmlNode forwardSaleDateNode = xmlNode.SelectSingleNode("forwardSaleDate");
     
     if (forwardSaleDateNode != null)
     {
         if (forwardSaleDateNode.Attributes["href"] != null || forwardSaleDateNode.Attributes["id"] != null) 
         {
             if (forwardSaleDateNode.Attributes["id"] != null) 
             {
                 forwardSaleDateIDRef_ = forwardSaleDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(forwardSaleDateNode);
                 IDManager.SetID(forwardSaleDateIDRef_, ob);
             }
             else if (forwardSaleDateNode.Attributes["href"] != null)
             {
                 forwardSaleDateIDRef_ = forwardSaleDateNode.Attributes["href"].Value;
             }
             else
             {
                 forwardSaleDate_ = new XsdTypeDate(forwardSaleDateNode);
             }
         }
         else
         {
             forwardSaleDate_ = new XsdTypeDate(forwardSaleDateNode);
         }
     }
     
 
     XmlNode settlementNode = xmlNode.SelectSingleNode("settlement");
     
     if (settlementNode != null)
     {
         if (settlementNode.Attributes["href"] != null || settlementNode.Attributes["id"] != null) 
         {
             if (settlementNode.Attributes["id"] != null) 
             {
                 settlementIDRef_ = settlementNode.Attributes["id"].Value;
                 Payment ob = new Payment(settlementNode);
                 IDManager.SetID(settlementIDRef_, ob);
             }
             else if (settlementNode.Attributes["href"] != null)
             {
                 settlementIDRef_ = settlementNode.Attributes["href"].Value;
             }
             else
             {
                 settlement_ = new Payment(settlementNode);
             }
         }
         else
         {
             settlement_ = new Payment(settlementNode);
         }
     }
     
 
     XmlNode priceNode = xmlNode.SelectSingleNode("price");
     
     if (priceNode != null)
     {
         if (priceNode.Attributes["href"] != null || priceNode.Attributes["id"] != null) 
         {
             if (priceNode.Attributes["id"] != null) 
             {
                 priceIDRef_ = priceNode.Attributes["id"].Value;
                 Price ob = new Price(priceNode);
                 IDManager.SetID(priceIDRef_, ob);
             }
             else if (priceNode.Attributes["href"] != null)
             {
                 priceIDRef_ = priceNode.Attributes["href"].Value;
             }
             else
             {
                 price_ = new Price(priceNode);
             }
         }
         else
         {
             price_ = new Price(priceNode);
         }
     }
     
 
 }
 public FxAverageRateObservationSchedule(XmlNode xmlNode)
 {
     XmlNode startDateNode = xmlNode.SelectSingleNode("startDate");
     
     if (startDateNode != null)
     {
         if (startDateNode.Attributes["href"] != null || startDateNode.Attributes["id"] != null) 
         {
             if (startDateNode.Attributes["id"] != null) 
             {
                 startDateIDRef_ = startDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(startDateNode);
                 IDManager.SetID(startDateIDRef_, ob);
             }
             else if (startDateNode.Attributes["href"] != null)
             {
                 startDateIDRef_ = startDateNode.Attributes["href"].Value;
             }
             else
             {
                 startDate_ = new XsdTypeDate(startDateNode);
             }
         }
         else
         {
             startDate_ = new XsdTypeDate(startDateNode);
         }
     }
     
 
     XmlNode endDateNode = xmlNode.SelectSingleNode("endDate");
     
     if (endDateNode != null)
     {
         if (endDateNode.Attributes["href"] != null || endDateNode.Attributes["id"] != null) 
         {
             if (endDateNode.Attributes["id"] != null) 
             {
                 endDateIDRef_ = endDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(endDateNode);
                 IDManager.SetID(endDateIDRef_, ob);
             }
             else if (endDateNode.Attributes["href"] != null)
             {
                 endDateIDRef_ = endDateNode.Attributes["href"].Value;
             }
             else
             {
                 endDate_ = new XsdTypeDate(endDateNode);
             }
         }
         else
         {
             endDate_ = new XsdTypeDate(endDateNode);
         }
     }
     
 
     XmlNode calculationPeriodFrequencyNode = xmlNode.SelectSingleNode("calculationPeriodFrequency");
     
     if (calculationPeriodFrequencyNode != null)
     {
         if (calculationPeriodFrequencyNode.Attributes["href"] != null || calculationPeriodFrequencyNode.Attributes["id"] != null) 
         {
             if (calculationPeriodFrequencyNode.Attributes["id"] != null) 
             {
                 calculationPeriodFrequencyIDRef_ = calculationPeriodFrequencyNode.Attributes["id"].Value;
                 CalculationPeriodFrequency ob = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
                 IDManager.SetID(calculationPeriodFrequencyIDRef_, ob);
             }
             else if (calculationPeriodFrequencyNode.Attributes["href"] != null)
             {
                 calculationPeriodFrequencyIDRef_ = calculationPeriodFrequencyNode.Attributes["href"].Value;
             }
             else
             {
                 calculationPeriodFrequency_ = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
             }
         }
         else
         {
             calculationPeriodFrequency_ = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
         }
     }
     
 
 }
 public Loan(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode borrowerNode = xmlNode.SelectSingleNode("borrower");
     
     if (borrowerNode != null)
     {
         if (borrowerNode.Attributes["href"] != null || borrowerNode.Attributes["id"] != null) 
         {
             if (borrowerNode.Attributes["id"] != null) 
             {
                 borrowerIDRef_ = borrowerNode.Attributes["id"].Value;
                 LegalEntity ob = new LegalEntity(borrowerNode);
                 IDManager.SetID(borrowerIDRef_, ob);
             }
             else if (borrowerNode.Attributes["href"] != null)
             {
                 borrowerIDRef_ = borrowerNode.Attributes["href"].Value;
             }
             else
             {
                 borrower_ = new LegalEntity(borrowerNode);
             }
         }
         else
         {
             borrower_ = new LegalEntity(borrowerNode);
         }
     }
     
 
     XmlNode borrowerReferenceNode = xmlNode.SelectSingleNode("borrowerReference");
     
     if (borrowerReferenceNode != null)
     {
         if (borrowerReferenceNode.Attributes["href"] != null || borrowerReferenceNode.Attributes["id"] != null) 
         {
             if (borrowerReferenceNode.Attributes["id"] != null) 
             {
                 borrowerReferenceIDRef_ = borrowerReferenceNode.Attributes["id"].Value;
                 LegalEntityReference ob = new LegalEntityReference(borrowerReferenceNode);
                 IDManager.SetID(borrowerReferenceIDRef_, ob);
             }
             else if (borrowerReferenceNode.Attributes["href"] != null)
             {
                 borrowerReferenceIDRef_ = borrowerReferenceNode.Attributes["href"].Value;
             }
             else
             {
                 borrowerReference_ = new LegalEntityReference(borrowerReferenceNode);
             }
         }
         else
         {
             borrowerReference_ = new LegalEntityReference(borrowerReferenceNode);
         }
     }
     
 
     XmlNode lienNode = xmlNode.SelectSingleNode("lien");
     
     if (lienNode != null)
     {
         if (lienNode.Attributes["href"] != null || lienNode.Attributes["id"] != null) 
         {
             if (lienNode.Attributes["id"] != null) 
             {
                 lienIDRef_ = lienNode.Attributes["id"].Value;
                 Lien ob = new Lien(lienNode);
                 IDManager.SetID(lienIDRef_, ob);
             }
             else if (lienNode.Attributes["href"] != null)
             {
                 lienIDRef_ = lienNode.Attributes["href"].Value;
             }
             else
             {
                 lien_ = new Lien(lienNode);
             }
         }
         else
         {
             lien_ = new Lien(lienNode);
         }
     }
     
 
     XmlNode facilityTypeNode = xmlNode.SelectSingleNode("facilityType");
     
     if (facilityTypeNode != null)
     {
         if (facilityTypeNode.Attributes["href"] != null || facilityTypeNode.Attributes["id"] != null) 
         {
             if (facilityTypeNode.Attributes["id"] != null) 
             {
                 facilityTypeIDRef_ = facilityTypeNode.Attributes["id"].Value;
                 FacilityType ob = new FacilityType(facilityTypeNode);
                 IDManager.SetID(facilityTypeIDRef_, ob);
             }
             else if (facilityTypeNode.Attributes["href"] != null)
             {
                 facilityTypeIDRef_ = facilityTypeNode.Attributes["href"].Value;
             }
             else
             {
                 facilityType_ = new FacilityType(facilityTypeNode);
             }
         }
         else
         {
             facilityType_ = new FacilityType(facilityTypeNode);
         }
     }
     
 
     XmlNode maturityNode = xmlNode.SelectSingleNode("maturity");
     
     if (maturityNode != null)
     {
         if (maturityNode.Attributes["href"] != null || maturityNode.Attributes["id"] != null) 
         {
             if (maturityNode.Attributes["id"] != null) 
             {
                 maturityIDRef_ = maturityNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(maturityNode);
                 IDManager.SetID(maturityIDRef_, ob);
             }
             else if (maturityNode.Attributes["href"] != null)
             {
                 maturityIDRef_ = maturityNode.Attributes["href"].Value;
             }
             else
             {
                 maturity_ = new XsdTypeDate(maturityNode);
             }
         }
         else
         {
             maturity_ = new XsdTypeDate(maturityNode);
         }
     }
     
 
     XmlNode creditAgreementDateNode = xmlNode.SelectSingleNode("creditAgreementDate");
     
     if (creditAgreementDateNode != null)
     {
         if (creditAgreementDateNode.Attributes["href"] != null || creditAgreementDateNode.Attributes["id"] != null) 
         {
             if (creditAgreementDateNode.Attributes["id"] != null) 
             {
                 creditAgreementDateIDRef_ = creditAgreementDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(creditAgreementDateNode);
                 IDManager.SetID(creditAgreementDateIDRef_, ob);
             }
             else if (creditAgreementDateNode.Attributes["href"] != null)
             {
                 creditAgreementDateIDRef_ = creditAgreementDateNode.Attributes["href"].Value;
             }
             else
             {
                 creditAgreementDate_ = new XsdTypeDate(creditAgreementDateNode);
             }
         }
         else
         {
             creditAgreementDate_ = new XsdTypeDate(creditAgreementDateNode);
         }
     }
     
 
     XmlNode trancheNode = xmlNode.SelectSingleNode("tranche");
     
     if (trancheNode != null)
     {
         if (trancheNode.Attributes["href"] != null || trancheNode.Attributes["id"] != null) 
         {
             if (trancheNode.Attributes["id"] != null) 
             {
                 trancheIDRef_ = trancheNode.Attributes["id"].Value;
                 UnderlyingAssetTranche ob = new UnderlyingAssetTranche(trancheNode);
                 IDManager.SetID(trancheIDRef_, ob);
             }
             else if (trancheNode.Attributes["href"] != null)
             {
                 trancheIDRef_ = trancheNode.Attributes["href"].Value;
             }
             else
             {
                 tranche_ = new UnderlyingAssetTranche(trancheNode);
             }
         }
         else
         {
             tranche_ = new UnderlyingAssetTranche(trancheNode);
         }
     }
     
 
 }
 public InitialPayment(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 adjustablePaymentDateNode = xmlNode.SelectSingleNode("adjustablePaymentDate");
     
     if (adjustablePaymentDateNode != null)
     {
         if (adjustablePaymentDateNode.Attributes["href"] != null || adjustablePaymentDateNode.Attributes["id"] != null) 
         {
             if (adjustablePaymentDateNode.Attributes["id"] != null) 
             {
                 adjustablePaymentDateIDRef_ = adjustablePaymentDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(adjustablePaymentDateNode);
                 IDManager.SetID(adjustablePaymentDateIDRef_, ob);
             }
             else if (adjustablePaymentDateNode.Attributes["href"] != null)
             {
                 adjustablePaymentDateIDRef_ = adjustablePaymentDateNode.Attributes["href"].Value;
             }
             else
             {
                 adjustablePaymentDate_ = new XsdTypeDate(adjustablePaymentDateNode);
             }
         }
         else
         {
             adjustablePaymentDate_ = new XsdTypeDate(adjustablePaymentDateNode);
         }
     }
     
 
     XmlNode adjustedPaymentDateNode = xmlNode.SelectSingleNode("adjustedPaymentDate");
     
     if (adjustedPaymentDateNode != null)
     {
         if (adjustedPaymentDateNode.Attributes["href"] != null || adjustedPaymentDateNode.Attributes["id"] != null) 
         {
             if (adjustedPaymentDateNode.Attributes["id"] != null) 
             {
                 adjustedPaymentDateIDRef_ = adjustedPaymentDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(adjustedPaymentDateNode);
                 IDManager.SetID(adjustedPaymentDateIDRef_, ob);
             }
             else if (adjustedPaymentDateNode.Attributes["href"] != null)
             {
                 adjustedPaymentDateIDRef_ = adjustedPaymentDateNode.Attributes["href"].Value;
             }
             else
             {
                 adjustedPaymentDate_ = new XsdTypeDate(adjustedPaymentDateNode);
             }
         }
         else
         {
             adjustedPaymentDate_ = new XsdTypeDate(adjustedPaymentDateNode);
         }
     }
     
 
     XmlNode paymentAmountNode = xmlNode.SelectSingleNode("paymentAmount");
     
     if (paymentAmountNode != null)
     {
         if (paymentAmountNode.Attributes["href"] != null || paymentAmountNode.Attributes["id"] != null) 
         {
             if (paymentAmountNode.Attributes["id"] != null) 
             {
                 paymentAmountIDRef_ = paymentAmountNode.Attributes["id"].Value;
                 Money ob = new Money(paymentAmountNode);
                 IDManager.SetID(paymentAmountIDRef_, ob);
             }
             else if (paymentAmountNode.Attributes["href"] != null)
             {
                 paymentAmountIDRef_ = paymentAmountNode.Attributes["href"].Value;
             }
             else
             {
                 paymentAmount_ = new Money(paymentAmountNode);
             }
         }
         else
         {
             paymentAmount_ = new Money(paymentAmountNode);
         }
     }
     
 
 }
        public CreditSupportAgreement(XmlNode xmlNode)
        {
            XmlNodeList typeNodeList = xmlNode.SelectNodes("type");

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

            foreach (XmlNode item in typeNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        typeIDRef = item.Attributes["id"].Name;
                        CreditSupportAgreementType ob = CreditSupportAgreementType();
                        IDManager.SetID(typeIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        typeIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        type = new CreditSupportAgreementType(item);
                    }
                }
            }


            XmlNodeList dateNodeList = xmlNode.SelectNodes("date");

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

            foreach (XmlNode item in dateNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        dateIDRef = item.Attributes["id"].Name;
                        XsdTypeDate ob = XsdTypeDate();
                        IDManager.SetID(dateIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        dateIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        date = new XsdTypeDate(item);
                    }
                }
            }


            XmlNodeList identifierNodeList = xmlNode.SelectNodes("identifier");

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

            foreach (XmlNode item in identifierNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        identifierIDRef = item.Attributes["id"].Name;
                        CreditSupportAgreementIdentifier ob = CreditSupportAgreementIdentifier();
                        IDManager.SetID(identifierIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        identifierIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        identifier = new CreditSupportAgreementIdentifier(item);
                    }
                }
            }
        }
 public FixedFixingDateInfo(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dateNode = xmlNode.SelectSingleNode("date");
     
     if (dateNode != null)
     {
         if (dateNode.Attributes["href"] != null || dateNode.Attributes["id"] != null) 
         {
             if (dateNode.Attributes["id"] != null) 
             {
                 dateIDRef_ = dateNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(dateNode);
                 IDManager.SetID(dateIDRef_, ob);
             }
             else if (dateNode.Attributes["href"] != null)
             {
                 dateIDRef_ = dateNode.Attributes["href"].Value;
             }
             else
             {
                 date_ = new XsdTypeToken(dateNode);
             }
         }
         else
         {
             date_ = new XsdTypeToken(dateNode);
         }
     }
     
 
     XmlNode autoCallFlagNode = xmlNode.SelectSingleNode("autoCallFlag");
     
     if (autoCallFlagNode != null)
     {
         if (autoCallFlagNode.Attributes["href"] != null || autoCallFlagNode.Attributes["id"] != null) 
         {
             if (autoCallFlagNode.Attributes["id"] != null) 
             {
                 autoCallFlagIDRef_ = autoCallFlagNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(autoCallFlagNode);
                 IDManager.SetID(autoCallFlagIDRef_, ob);
             }
             else if (autoCallFlagNode.Attributes["href"] != null)
             {
                 autoCallFlagIDRef_ = autoCallFlagNode.Attributes["href"].Value;
             }
             else
             {
                 autoCallFlag_ = new XsdTypeBoolean(autoCallFlagNode);
             }
         }
         else
         {
             autoCallFlag_ = new XsdTypeBoolean(autoCallFlagNode);
         }
     }
     
 
     XmlNode autoCallFixingDateNode = xmlNode.SelectSingleNode("autoCallFixingDate");
     
     if (autoCallFixingDateNode != null)
     {
         if (autoCallFixingDateNode.Attributes["href"] != null || autoCallFixingDateNode.Attributes["id"] != null) 
         {
             if (autoCallFixingDateNode.Attributes["id"] != null) 
             {
                 autoCallFixingDateIDRef_ = autoCallFixingDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(autoCallFixingDateNode);
                 IDManager.SetID(autoCallFixingDateIDRef_, ob);
             }
             else if (autoCallFixingDateNode.Attributes["href"] != null)
             {
                 autoCallFixingDateIDRef_ = autoCallFixingDateNode.Attributes["href"].Value;
             }
             else
             {
                 autoCallFixingDate_ = new XsdTypeDate(autoCallFixingDateNode);
             }
         }
         else
         {
             autoCallFixingDate_ = new XsdTypeDate(autoCallFixingDateNode);
         }
     }
     
 
 }
 public VanillaFloatingRatePayoff_A(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode dayCounterNode = xmlNode.SelectSingleNode("dayCounter");
     
     if (dayCounterNode != null)
     {
         if (dayCounterNode.Attributes["href"] != null || dayCounterNode.Attributes["id"] != null) 
         {
             if (dayCounterNode.Attributes["id"] != null) 
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(dayCounterNode);
                 IDManager.SetID(dayCounterIDRef_, ob);
             }
             else if (dayCounterNode.Attributes["href"] != null)
             {
                 dayCounterIDRef_ = dayCounterNode.Attributes["href"].Value;
             }
             else
             {
                 dayCounter_ = new XsdTypeToken(dayCounterNode);
             }
         }
         else
         {
             dayCounter_ = new XsdTypeToken(dayCounterNode);
         }
     }
     
 
     XmlNode calculationStartDateNode = xmlNode.SelectSingleNode("calculationStartDate");
     
     if (calculationStartDateNode != null)
     {
         if (calculationStartDateNode.Attributes["href"] != null || calculationStartDateNode.Attributes["id"] != null) 
         {
             if (calculationStartDateNode.Attributes["id"] != null) 
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationStartDateNode);
                 IDManager.SetID(calculationStartDateIDRef_, ob);
             }
             else if (calculationStartDateNode.Attributes["href"] != null)
             {
                 calculationStartDateIDRef_ = calculationStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
             }
         }
         else
         {
             calculationStartDate_ = new XsdTypeDate(calculationStartDateNode);
         }
     }
     
 
     XmlNode calculationEndDateNode = xmlNode.SelectSingleNode("calculationEndDate");
     
     if (calculationEndDateNode != null)
     {
         if (calculationEndDateNode.Attributes["href"] != null || calculationEndDateNode.Attributes["id"] != null) 
         {
             if (calculationEndDateNode.Attributes["id"] != null) 
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationEndDateNode);
                 IDManager.SetID(calculationEndDateIDRef_, ob);
             }
             else if (calculationEndDateNode.Attributes["href"] != null)
             {
                 calculationEndDateIDRef_ = calculationEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
             }
         }
         else
         {
             calculationEndDate_ = new XsdTypeDate(calculationEndDateNode);
         }
     }
     
 
     XmlNode gearingNode = xmlNode.SelectSingleNode("gearing");
     
     if (gearingNode != null)
     {
         if (gearingNode.Attributes["href"] != null || gearingNode.Attributes["id"] != null) 
         {
             if (gearingNode.Attributes["id"] != null) 
             {
                 gearingIDRef_ = gearingNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(gearingNode);
                 IDManager.SetID(gearingIDRef_, ob);
             }
             else if (gearingNode.Attributes["href"] != null)
             {
                 gearingIDRef_ = gearingNode.Attributes["href"].Value;
             }
             else
             {
                 gearing_ = new XsdTypeDouble(gearingNode);
             }
         }
         else
         {
             gearing_ = new XsdTypeDouble(gearingNode);
         }
     }
     
 
     XmlNode spreadNode = xmlNode.SelectSingleNode("spread");
     
     if (spreadNode != null)
     {
         if (spreadNode.Attributes["href"] != null || spreadNode.Attributes["id"] != null) 
         {
             if (spreadNode.Attributes["id"] != null) 
             {
                 spreadIDRef_ = spreadNode.Attributes["id"].Value;
                 XsdTypeDouble ob = new XsdTypeDouble(spreadNode);
                 IDManager.SetID(spreadIDRef_, ob);
             }
             else if (spreadNode.Attributes["href"] != null)
             {
                 spreadIDRef_ = spreadNode.Attributes["href"].Value;
             }
             else
             {
                 spread_ = new XsdTypeDouble(spreadNode);
             }
         }
         else
         {
             spread_ = new XsdTypeDouble(spreadNode);
         }
     }
     
 
     XmlNode referenceStrNode = xmlNode.SelectSingleNode("referenceStr");
     
     if (referenceStrNode != null)
     {
         if (referenceStrNode.Attributes["href"] != null || referenceStrNode.Attributes["id"] != null) 
         {
             if (referenceStrNode.Attributes["id"] != null) 
             {
                 referenceStrIDRef_ = referenceStrNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(referenceStrNode);
                 IDManager.SetID(referenceStrIDRef_, ob);
             }
             else if (referenceStrNode.Attributes["href"] != null)
             {
                 referenceStrIDRef_ = referenceStrNode.Attributes["href"].Value;
             }
             else
             {
                 referenceStr_ = new XsdTypeToken(referenceStrNode);
             }
         }
         else
         {
             referenceStr_ = new XsdTypeToken(referenceStrNode);
         }
     }
     
 
     XmlNode payoffDateNode = xmlNode.SelectSingleNode("payoffDate");
     
     if (payoffDateNode != null)
     {
         if (payoffDateNode.Attributes["href"] != null || payoffDateNode.Attributes["id"] != null) 
         {
             if (payoffDateNode.Attributes["id"] != null) 
             {
                 payoffDateIDRef_ = payoffDateNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(payoffDateNode);
                 IDManager.SetID(payoffDateIDRef_, ob);
             }
             else if (payoffDateNode.Attributes["href"] != null)
             {
                 payoffDateIDRef_ = payoffDateNode.Attributes["href"].Value;
             }
             else
             {
                 payoffDate_ = new XsdTypeToken(payoffDateNode);
             }
         }
         else
         {
             payoffDate_ = new XsdTypeToken(payoffDateNode);
         }
     }
     
 
     XmlNode capFloorOptionNode = xmlNode.SelectSingleNode("capFloorOption");
     
     if (capFloorOptionNode != null)
     {
         if (capFloorOptionNode.Attributes["href"] != null || capFloorOptionNode.Attributes["id"] != null) 
         {
             if (capFloorOptionNode.Attributes["id"] != null) 
             {
                 capFloorOptionIDRef_ = capFloorOptionNode.Attributes["id"].Value;
                 CapFloorOption ob = new CapFloorOption(capFloorOptionNode);
                 IDManager.SetID(capFloorOptionIDRef_, ob);
             }
             else if (capFloorOptionNode.Attributes["href"] != null)
             {
                 capFloorOptionIDRef_ = capFloorOptionNode.Attributes["href"].Value;
             }
             else
             {
                 capFloorOption_ = new CapFloorOption(capFloorOptionNode);
             }
         }
         else
         {
             capFloorOption_ = new CapFloorOption(capFloorOptionNode);
         }
     }
     
 
 }
 public Excel_result(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode calculationDateNode = xmlNode.SelectSingleNode("calculationDate");
     
     if (calculationDateNode != null)
     {
         if (calculationDateNode.Attributes["href"] != null || calculationDateNode.Attributes["id"] != null) 
         {
             if (calculationDateNode.Attributes["id"] != null) 
             {
                 calculationDateIDRef_ = calculationDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(calculationDateNode);
                 IDManager.SetID(calculationDateIDRef_, ob);
             }
             else if (calculationDateNode.Attributes["href"] != null)
             {
                 calculationDateIDRef_ = calculationDateNode.Attributes["href"].Value;
             }
             else
             {
                 calculationDate_ = new XsdTypeDate(calculationDateNode);
             }
         }
         else
         {
             calculationDate_ = new XsdTypeDate(calculationDateNode);
         }
     }
     
 
     XmlNode excel_valueResultNode = xmlNode.SelectSingleNode("excel_valueResult");
     
     if (excel_valueResultNode != null)
     {
         if (excel_valueResultNode.Attributes["href"] != null || excel_valueResultNode.Attributes["id"] != null) 
         {
             if (excel_valueResultNode.Attributes["id"] != null) 
             {
                 excel_valueResultIDRef_ = excel_valueResultNode.Attributes["id"].Value;
                 Excel_valueResult ob = new Excel_valueResult(excel_valueResultNode);
                 IDManager.SetID(excel_valueResultIDRef_, ob);
             }
             else if (excel_valueResultNode.Attributes["href"] != null)
             {
                 excel_valueResultIDRef_ = excel_valueResultNode.Attributes["href"].Value;
             }
             else
             {
                 excel_valueResult_ = new Excel_valueResult(excel_valueResultNode);
             }
         }
         else
         {
             excel_valueResult_ = new Excel_valueResult(excel_valueResultNode);
         }
     }
     
 
     XmlNode excel_greekResultNode = xmlNode.SelectSingleNode("excel_greekResult");
     
     if (excel_greekResultNode != null)
     {
         if (excel_greekResultNode.Attributes["href"] != null || excel_greekResultNode.Attributes["id"] != null) 
         {
             if (excel_greekResultNode.Attributes["id"] != null) 
             {
                 excel_greekResultIDRef_ = excel_greekResultNode.Attributes["id"].Value;
                 Excel_greekResult ob = new Excel_greekResult(excel_greekResultNode);
                 IDManager.SetID(excel_greekResultIDRef_, ob);
             }
             else if (excel_greekResultNode.Attributes["href"] != null)
             {
                 excel_greekResultIDRef_ = excel_greekResultNode.Attributes["href"].Value;
             }
             else
             {
                 excel_greekResult_ = new Excel_greekResult(excel_greekResultNode);
             }
         }
         else
         {
             excel_greekResult_ = new Excel_greekResult(excel_greekResultNode);
         }
     }
     
 
     XmlNode excel_cashFlowsResultNode = xmlNode.SelectSingleNode("excel_cashFlowsResult");
     
     if (excel_cashFlowsResultNode != null)
     {
         if (excel_cashFlowsResultNode.Attributes["href"] != null || excel_cashFlowsResultNode.Attributes["id"] != null) 
         {
             if (excel_cashFlowsResultNode.Attributes["id"] != null) 
             {
                 excel_cashFlowsResultIDRef_ = excel_cashFlowsResultNode.Attributes["id"].Value;
                 Excel_cashFlowsResult ob = new Excel_cashFlowsResult(excel_cashFlowsResultNode);
                 IDManager.SetID(excel_cashFlowsResultIDRef_, ob);
             }
             else if (excel_cashFlowsResultNode.Attributes["href"] != null)
             {
                 excel_cashFlowsResultIDRef_ = excel_cashFlowsResultNode.Attributes["href"].Value;
             }
             else
             {
                 excel_cashFlowsResult_ = new Excel_cashFlowsResult(excel_cashFlowsResultNode);
             }
         }
         else
         {
             excel_cashFlowsResult_ = new Excel_cashFlowsResult(excel_cashFlowsResultNode);
         }
     }
     
 
 }
 public TermDeposit(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 startDateNode = xmlNode.SelectSingleNode("startDate");
     
     if (startDateNode != null)
     {
         if (startDateNode.Attributes["href"] != null || startDateNode.Attributes["id"] != null) 
         {
             if (startDateNode.Attributes["id"] != null) 
             {
                 startDateIDRef_ = startDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(startDateNode);
                 IDManager.SetID(startDateIDRef_, ob);
             }
             else if (startDateNode.Attributes["href"] != null)
             {
                 startDateIDRef_ = startDateNode.Attributes["href"].Value;
             }
             else
             {
                 startDate_ = new XsdTypeDate(startDateNode);
             }
         }
         else
         {
             startDate_ = new XsdTypeDate(startDateNode);
         }
     }
     
 
     XmlNode maturityDateNode = xmlNode.SelectSingleNode("maturityDate");
     
     if (maturityDateNode != null)
     {
         if (maturityDateNode.Attributes["href"] != null || maturityDateNode.Attributes["id"] != null) 
         {
             if (maturityDateNode.Attributes["id"] != null) 
             {
                 maturityDateIDRef_ = maturityDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(maturityDateNode);
                 IDManager.SetID(maturityDateIDRef_, ob);
             }
             else if (maturityDateNode.Attributes["href"] != null)
             {
                 maturityDateIDRef_ = maturityDateNode.Attributes["href"].Value;
             }
             else
             {
                 maturityDate_ = new XsdTypeDate(maturityDateNode);
             }
         }
         else
         {
             maturityDate_ = new XsdTypeDate(maturityDateNode);
         }
     }
     
 
     XmlNode tenorNameNode = xmlNode.SelectSingleNode("tenorName");
     
     if (tenorNameNode != null)
     {
         if (tenorNameNode.Attributes["href"] != null || tenorNameNode.Attributes["id"] != null) 
         {
             if (tenorNameNode.Attributes["id"] != null) 
             {
                 tenorNameIDRef_ = tenorNameNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(tenorNameNode);
                 IDManager.SetID(tenorNameIDRef_, ob);
             }
             else if (tenorNameNode.Attributes["href"] != null)
             {
                 tenorNameIDRef_ = tenorNameNode.Attributes["href"].Value;
             }
             else
             {
                 tenorName_ = new XsdTypeBoolean(tenorNameNode);
             }
         }
         else
         {
             tenorName_ = new XsdTypeBoolean(tenorNameNode);
         }
     }
     
 
     XmlNode tenorPeriodNode = xmlNode.SelectSingleNode("tenorPeriod");
     
     if (tenorPeriodNode != null)
     {
         if (tenorPeriodNode.Attributes["href"] != null || tenorPeriodNode.Attributes["id"] != null) 
         {
             if (tenorPeriodNode.Attributes["id"] != null) 
             {
                 tenorPeriodIDRef_ = tenorPeriodNode.Attributes["id"].Value;
                 Period ob = new Period(tenorPeriodNode);
                 IDManager.SetID(tenorPeriodIDRef_, ob);
             }
             else if (tenorPeriodNode.Attributes["href"] != null)
             {
                 tenorPeriodIDRef_ = tenorPeriodNode.Attributes["href"].Value;
             }
             else
             {
                 tenorPeriod_ = new Period(tenorPeriodNode);
             }
         }
         else
         {
             tenorPeriod_ = new Period(tenorPeriodNode);
         }
     }
     
 
     XmlNode principalNode = xmlNode.SelectSingleNode("principal");
     
     if (principalNode != null)
     {
         if (principalNode.Attributes["href"] != null || principalNode.Attributes["id"] != null) 
         {
             if (principalNode.Attributes["id"] != null) 
             {
                 principalIDRef_ = principalNode.Attributes["id"].Value;
                 PositiveMoney ob = new PositiveMoney(principalNode);
                 IDManager.SetID(principalIDRef_, ob);
             }
             else if (principalNode.Attributes["href"] != null)
             {
                 principalIDRef_ = principalNode.Attributes["href"].Value;
             }
             else
             {
                 principal_ = new PositiveMoney(principalNode);
             }
         }
         else
         {
             principal_ = new PositiveMoney(principalNode);
         }
     }
     
 
     XmlNode fixedRateNode = xmlNode.SelectSingleNode("fixedRate");
     
     if (fixedRateNode != null)
     {
         if (fixedRateNode.Attributes["href"] != null || fixedRateNode.Attributes["id"] != null) 
         {
             if (fixedRateNode.Attributes["id"] != null) 
             {
                 fixedRateIDRef_ = fixedRateNode.Attributes["id"].Value;
                 PositiveDecimal ob = new PositiveDecimal(fixedRateNode);
                 IDManager.SetID(fixedRateIDRef_, ob);
             }
             else if (fixedRateNode.Attributes["href"] != null)
             {
                 fixedRateIDRef_ = fixedRateNode.Attributes["href"].Value;
             }
             else
             {
                 fixedRate_ = new PositiveDecimal(fixedRateNode);
             }
         }
         else
         {
             fixedRate_ = new PositiveDecimal(fixedRateNode);
         }
     }
     
 
     XmlNode dayCountFractionNode = xmlNode.SelectSingleNode("dayCountFraction");
     
     if (dayCountFractionNode != null)
     {
         if (dayCountFractionNode.Attributes["href"] != null || dayCountFractionNode.Attributes["id"] != null) 
         {
             if (dayCountFractionNode.Attributes["id"] != null) 
             {
                 dayCountFractionIDRef_ = dayCountFractionNode.Attributes["id"].Value;
                 DayCountFraction ob = new DayCountFraction(dayCountFractionNode);
                 IDManager.SetID(dayCountFractionIDRef_, ob);
             }
             else if (dayCountFractionNode.Attributes["href"] != null)
             {
                 dayCountFractionIDRef_ = dayCountFractionNode.Attributes["href"].Value;
             }
             else
             {
                 dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
             }
         }
         else
         {
             dayCountFraction_ = new DayCountFraction(dayCountFractionNode);
         }
     }
     
 
     XmlNode featuresNode = xmlNode.SelectSingleNode("features");
     
     if (featuresNode != null)
     {
         if (featuresNode.Attributes["href"] != null || featuresNode.Attributes["id"] != null) 
         {
             if (featuresNode.Attributes["id"] != null) 
             {
                 featuresIDRef_ = featuresNode.Attributes["id"].Value;
                 TermDepositFeatures ob = new TermDepositFeatures(featuresNode);
                 IDManager.SetID(featuresIDRef_, ob);
             }
             else if (featuresNode.Attributes["href"] != null)
             {
                 featuresIDRef_ = featuresNode.Attributes["href"].Value;
             }
             else
             {
                 features_ = new TermDepositFeatures(featuresNode);
             }
         }
         else
         {
             features_ = new TermDepositFeatures(featuresNode);
         }
     }
     
 
     XmlNode interestNode = xmlNode.SelectSingleNode("interest");
     
     if (interestNode != null)
     {
         if (interestNode.Attributes["href"] != null || interestNode.Attributes["id"] != null) 
         {
             if (interestNode.Attributes["id"] != null) 
             {
                 interestIDRef_ = interestNode.Attributes["id"].Value;
                 Money ob = new Money(interestNode);
                 IDManager.SetID(interestIDRef_, ob);
             }
             else if (interestNode.Attributes["href"] != null)
             {
                 interestIDRef_ = interestNode.Attributes["href"].Value;
             }
             else
             {
                 interest_ = new Money(interestNode);
             }
         }
         else
         {
             interest_ = new Money(interestNode);
         }
     }
     
 
     XmlNodeList paymentNodeList = xmlNode.SelectNodes("payment");
     
     if (paymentNodeList != null)
     {
         this.payment_ = new List<Payment>();
         foreach (XmlNode item in paymentNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     paymentIDRef_ = item.Attributes["id"].Value;
                     payment_.Add(new Payment(item));
                     IDManager.SetID(paymentIDRef_, payment_[payment_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     paymentIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 payment_.Add(new Payment(item));
                 }
             }
             else
             {
                 payment_.Add(new Payment(item));
             }
         }
     }
     
 
 }
 public Withdrawal(XmlNode xmlNode)
 {
     XmlNodeList partyTradeIdentifierNodeList = xmlNode.SelectNodes("partyTradeIdentifier");
     
     if (partyTradeIdentifierNodeList != null)
     {
         this.partyTradeIdentifier_ = new List<PartyTradeIdentifier>();
         foreach (XmlNode item in partyTradeIdentifierNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     partyTradeIdentifierIDRef_ = item.Attributes["id"].Value;
                     partyTradeIdentifier_.Add(new PartyTradeIdentifier(item));
                     IDManager.SetID(partyTradeIdentifierIDRef_, partyTradeIdentifier_[partyTradeIdentifier_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     partyTradeIdentifierIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 partyTradeIdentifier_.Add(new PartyTradeIdentifier(item));
                 }
             }
             else
             {
                 partyTradeIdentifier_.Add(new PartyTradeIdentifier(item));
             }
         }
     }
     
 
     XmlNode effectiveDateNode = xmlNode.SelectSingleNode("effectiveDate");
     
     if (effectiveDateNode != null)
     {
         if (effectiveDateNode.Attributes["href"] != null || effectiveDateNode.Attributes["id"] != null) 
         {
             if (effectiveDateNode.Attributes["id"] != null) 
             {
                 effectiveDateIDRef_ = effectiveDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(effectiveDateNode);
                 IDManager.SetID(effectiveDateIDRef_, ob);
             }
             else if (effectiveDateNode.Attributes["href"] != null)
             {
                 effectiveDateIDRef_ = effectiveDateNode.Attributes["href"].Value;
             }
             else
             {
                 effectiveDate_ = new XsdTypeDate(effectiveDateNode);
             }
         }
         else
         {
             effectiveDate_ = new XsdTypeDate(effectiveDateNode);
         }
     }
     
 
     XmlNode requestedActionNode = xmlNode.SelectSingleNode("requestedAction");
     
     if (requestedActionNode != null)
     {
         if (requestedActionNode.Attributes["href"] != null || requestedActionNode.Attributes["id"] != null) 
         {
             if (requestedActionNode.Attributes["id"] != null) 
             {
                 requestedActionIDRef_ = requestedActionNode.Attributes["id"].Value;
                 RequestedWithdrawalAction ob = new RequestedWithdrawalAction(requestedActionNode);
                 IDManager.SetID(requestedActionIDRef_, ob);
             }
             else if (requestedActionNode.Attributes["href"] != null)
             {
                 requestedActionIDRef_ = requestedActionNode.Attributes["href"].Value;
             }
             else
             {
                 requestedAction_ = new RequestedWithdrawalAction(requestedActionNode);
             }
         }
         else
         {
             requestedAction_ = new RequestedWithdrawalAction(requestedActionNode);
         }
     }
     
 
     XmlNodeList reasonNodeList = xmlNode.SelectNodes("reason");
     
     if (reasonNodeList != null)
     {
         this.reason_ = new List<WithdrawalReason>();
         foreach (XmlNode item in reasonNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     reasonIDRef_ = item.Attributes["id"].Value;
                     reason_.Add(new WithdrawalReason(item));
                     IDManager.SetID(reasonIDRef_, reason_[reason_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     reasonIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 reason_.Add(new WithdrawalReason(item));
                 }
             }
             else
             {
                 reason_.Add(new WithdrawalReason(item));
             }
         }
     }
     
 
 }
 public IndexReferenceInformation(XmlNode xmlNode)
 {
     XmlNode indexNameNode = xmlNode.SelectSingleNode("indexName");
     
     if (indexNameNode != null)
     {
         if (indexNameNode.Attributes["href"] != null || indexNameNode.Attributes["id"] != null) 
         {
             if (indexNameNode.Attributes["id"] != null) 
             {
                 indexNameIDRef_ = indexNameNode.Attributes["id"].Value;
                 IndexName ob = new IndexName(indexNameNode);
                 IDManager.SetID(indexNameIDRef_, ob);
             }
             else if (indexNameNode.Attributes["href"] != null)
             {
                 indexNameIDRef_ = indexNameNode.Attributes["href"].Value;
             }
             else
             {
                 indexName_ = new IndexName(indexNameNode);
             }
         }
         else
         {
             indexName_ = new IndexName(indexNameNode);
         }
     }
     
 
     XmlNodeList indexIdNodeList = xmlNode.SelectNodes("indexId");
     
     if (indexIdNodeList != null)
     {
         this.indexId_ = new List<IndexId>();
         foreach (XmlNode item in indexIdNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     indexIdIDRef_ = item.Attributes["id"].Value;
                     indexId_.Add(new IndexId(item));
                     IDManager.SetID(indexIdIDRef_, indexId_[indexId_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     indexIdIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 indexId_.Add(new IndexId(item));
                 }
             }
             else
             {
                 indexId_.Add(new IndexId(item));
             }
         }
     }
     
 
     XmlNode indexSeriesNode = xmlNode.SelectSingleNode("indexSeries");
     
     if (indexSeriesNode != null)
     {
         if (indexSeriesNode.Attributes["href"] != null || indexSeriesNode.Attributes["id"] != null) 
         {
             if (indexSeriesNode.Attributes["id"] != null) 
             {
                 indexSeriesIDRef_ = indexSeriesNode.Attributes["id"].Value;
                 XsdTypePositiveInteger ob = new XsdTypePositiveInteger(indexSeriesNode);
                 IDManager.SetID(indexSeriesIDRef_, ob);
             }
             else if (indexSeriesNode.Attributes["href"] != null)
             {
                 indexSeriesIDRef_ = indexSeriesNode.Attributes["href"].Value;
             }
             else
             {
                 indexSeries_ = new XsdTypePositiveInteger(indexSeriesNode);
             }
         }
         else
         {
             indexSeries_ = new XsdTypePositiveInteger(indexSeriesNode);
         }
     }
     
 
     XmlNode indexAnnexVersionNode = xmlNode.SelectSingleNode("indexAnnexVersion");
     
     if (indexAnnexVersionNode != null)
     {
         if (indexAnnexVersionNode.Attributes["href"] != null || indexAnnexVersionNode.Attributes["id"] != null) 
         {
             if (indexAnnexVersionNode.Attributes["id"] != null) 
             {
                 indexAnnexVersionIDRef_ = indexAnnexVersionNode.Attributes["id"].Value;
                 XsdTypePositiveInteger ob = new XsdTypePositiveInteger(indexAnnexVersionNode);
                 IDManager.SetID(indexAnnexVersionIDRef_, ob);
             }
             else if (indexAnnexVersionNode.Attributes["href"] != null)
             {
                 indexAnnexVersionIDRef_ = indexAnnexVersionNode.Attributes["href"].Value;
             }
             else
             {
                 indexAnnexVersion_ = new XsdTypePositiveInteger(indexAnnexVersionNode);
             }
         }
         else
         {
             indexAnnexVersion_ = new XsdTypePositiveInteger(indexAnnexVersionNode);
         }
     }
     
 
     XmlNode indexAnnexDateNode = xmlNode.SelectSingleNode("indexAnnexDate");
     
     if (indexAnnexDateNode != null)
     {
         if (indexAnnexDateNode.Attributes["href"] != null || indexAnnexDateNode.Attributes["id"] != null) 
         {
             if (indexAnnexDateNode.Attributes["id"] != null) 
             {
                 indexAnnexDateIDRef_ = indexAnnexDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(indexAnnexDateNode);
                 IDManager.SetID(indexAnnexDateIDRef_, ob);
             }
             else if (indexAnnexDateNode.Attributes["href"] != null)
             {
                 indexAnnexDateIDRef_ = indexAnnexDateNode.Attributes["href"].Value;
             }
             else
             {
                 indexAnnexDate_ = new XsdTypeDate(indexAnnexDateNode);
             }
         }
         else
         {
             indexAnnexDate_ = new XsdTypeDate(indexAnnexDateNode);
         }
     }
     
 
     XmlNode indexAnnexSourceNode = xmlNode.SelectSingleNode("indexAnnexSource");
     
     if (indexAnnexSourceNode != null)
     {
         if (indexAnnexSourceNode.Attributes["href"] != null || indexAnnexSourceNode.Attributes["id"] != null) 
         {
             if (indexAnnexSourceNode.Attributes["id"] != null) 
             {
                 indexAnnexSourceIDRef_ = indexAnnexSourceNode.Attributes["id"].Value;
                 IndexAnnexSource ob = new IndexAnnexSource(indexAnnexSourceNode);
                 IDManager.SetID(indexAnnexSourceIDRef_, ob);
             }
             else if (indexAnnexSourceNode.Attributes["href"] != null)
             {
                 indexAnnexSourceIDRef_ = indexAnnexSourceNode.Attributes["href"].Value;
             }
             else
             {
                 indexAnnexSource_ = new IndexAnnexSource(indexAnnexSourceNode);
             }
         }
         else
         {
             indexAnnexSource_ = new IndexAnnexSource(indexAnnexSourceNode);
         }
     }
     
 
     XmlNodeList excludedReferenceEntityNodeList = xmlNode.SelectNodes("excludedReferenceEntity");
     
     if (excludedReferenceEntityNodeList != null)
     {
         this.excludedReferenceEntity_ = new List<LegalEntity>();
         foreach (XmlNode item in excludedReferenceEntityNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     excludedReferenceEntityIDRef_ = item.Attributes["id"].Value;
                     excludedReferenceEntity_.Add(new LegalEntity(item));
                     IDManager.SetID(excludedReferenceEntityIDRef_, excludedReferenceEntity_[excludedReferenceEntity_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     excludedReferenceEntityIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 excludedReferenceEntity_.Add(new LegalEntity(item));
                 }
             }
             else
             {
                 excludedReferenceEntity_.Add(new LegalEntity(item));
             }
         }
     }
     
 
     XmlNode trancheNode = xmlNode.SelectSingleNode("tranche");
     
     if (trancheNode != null)
     {
         if (trancheNode.Attributes["href"] != null || trancheNode.Attributes["id"] != null) 
         {
             if (trancheNode.Attributes["id"] != null) 
             {
                 trancheIDRef_ = trancheNode.Attributes["id"].Value;
                 Tranche ob = new Tranche(trancheNode);
                 IDManager.SetID(trancheIDRef_, ob);
             }
             else if (trancheNode.Attributes["href"] != null)
             {
                 trancheIDRef_ = trancheNode.Attributes["href"].Value;
             }
             else
             {
                 tranche_ = new Tranche(trancheNode);
             }
         }
         else
         {
             tranche_ = new Tranche(trancheNode);
         }
     }
     
 
     XmlNode settledEntityMatrixNode = xmlNode.SelectSingleNode("settledEntityMatrix");
     
     if (settledEntityMatrixNode != null)
     {
         if (settledEntityMatrixNode.Attributes["href"] != null || settledEntityMatrixNode.Attributes["id"] != null) 
         {
             if (settledEntityMatrixNode.Attributes["id"] != null) 
             {
                 settledEntityMatrixIDRef_ = settledEntityMatrixNode.Attributes["id"].Value;
                 SettledEntityMatrix ob = new SettledEntityMatrix(settledEntityMatrixNode);
                 IDManager.SetID(settledEntityMatrixIDRef_, ob);
             }
             else if (settledEntityMatrixNode.Attributes["href"] != null)
             {
                 settledEntityMatrixIDRef_ = settledEntityMatrixNode.Attributes["href"].Value;
             }
             else
             {
                 settledEntityMatrix_ = new SettledEntityMatrix(settledEntityMatrixNode);
             }
         }
         else
         {
             settledEntityMatrix_ = new SettledEntityMatrix(settledEntityMatrixNode);
         }
     }
     
 
 }
        public FxSingleLeg(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode exchangedCurrency1Node = xmlNode.SelectSingleNode("exchangedCurrency1");

            if (exchangedCurrency1Node != null)
            {
                if (exchangedCurrency1Node.Attributes["href"] != null || exchangedCurrency1Node.Attributes["id"] != null)
                {
                    if (exchangedCurrency1Node.Attributes["id"] != null)
                    {
                        exchangedCurrency1IDRef_ = exchangedCurrency1Node.Attributes["id"].Value;
                        Payment ob = new Payment(exchangedCurrency1Node);
                        IDManager.SetID(exchangedCurrency1IDRef_, ob);
                    }
                    else if (exchangedCurrency1Node.Attributes["href"] != null)
                    {
                        exchangedCurrency1IDRef_ = exchangedCurrency1Node.Attributes["href"].Value;
                    }
                    else
                    {
                        exchangedCurrency1_ = new Payment(exchangedCurrency1Node);
                    }
                }
                else
                {
                    exchangedCurrency1_ = new Payment(exchangedCurrency1Node);
                }
            }


            XmlNode exchangedCurrency2Node = xmlNode.SelectSingleNode("exchangedCurrency2");

            if (exchangedCurrency2Node != null)
            {
                if (exchangedCurrency2Node.Attributes["href"] != null || exchangedCurrency2Node.Attributes["id"] != null)
                {
                    if (exchangedCurrency2Node.Attributes["id"] != null)
                    {
                        exchangedCurrency2IDRef_ = exchangedCurrency2Node.Attributes["id"].Value;
                        Payment ob = new Payment(exchangedCurrency2Node);
                        IDManager.SetID(exchangedCurrency2IDRef_, ob);
                    }
                    else if (exchangedCurrency2Node.Attributes["href"] != null)
                    {
                        exchangedCurrency2IDRef_ = exchangedCurrency2Node.Attributes["href"].Value;
                    }
                    else
                    {
                        exchangedCurrency2_ = new Payment(exchangedCurrency2Node);
                    }
                }
                else
                {
                    exchangedCurrency2_ = new Payment(exchangedCurrency2Node);
                }
            }


            XmlNode dealtCurrencyNode = xmlNode.SelectSingleNode("dealtCurrency");

            if (dealtCurrencyNode != null)
            {
                if (dealtCurrencyNode.Attributes["href"] != null || dealtCurrencyNode.Attributes["id"] != null)
                {
                    if (dealtCurrencyNode.Attributes["id"] != null)
                    {
                        dealtCurrencyIDRef_ = dealtCurrencyNode.Attributes["id"].Value;
                        DealtCurrencyEnum ob = new DealtCurrencyEnum(dealtCurrencyNode);
                        IDManager.SetID(dealtCurrencyIDRef_, ob);
                    }
                    else if (dealtCurrencyNode.Attributes["href"] != null)
                    {
                        dealtCurrencyIDRef_ = dealtCurrencyNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dealtCurrency_ = new DealtCurrencyEnum(dealtCurrencyNode);
                    }
                }
                else
                {
                    dealtCurrency_ = new DealtCurrencyEnum(dealtCurrencyNode);
                }
            }


            XmlNode tenorNameNode = xmlNode.SelectSingleNode("tenorName");

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


            XmlNode tenorPeriodNode = xmlNode.SelectSingleNode("tenorPeriod");

            if (tenorPeriodNode != null)
            {
                if (tenorPeriodNode.Attributes["href"] != null || tenorPeriodNode.Attributes["id"] != null)
                {
                    if (tenorPeriodNode.Attributes["id"] != null)
                    {
                        tenorPeriodIDRef_ = tenorPeriodNode.Attributes["id"].Value;
                        Period ob = new Period(tenorPeriodNode);
                        IDManager.SetID(tenorPeriodIDRef_, ob);
                    }
                    else if (tenorPeriodNode.Attributes["href"] != null)
                    {
                        tenorPeriodIDRef_ = tenorPeriodNode.Attributes["href"].Value;
                    }
                    else
                    {
                        tenorPeriod_ = new Period(tenorPeriodNode);
                    }
                }
                else
                {
                    tenorPeriod_ = new Period(tenorPeriodNode);
                }
            }


            XmlNode valueDateNode = xmlNode.SelectSingleNode("valueDate");

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


            XmlNode currency1ValueDateNode = xmlNode.SelectSingleNode("currency1ValueDate");

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


            XmlNode currency2ValueDateNode = xmlNode.SelectSingleNode("currency2ValueDate");

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


            XmlNode exchangeRateNode = xmlNode.SelectSingleNode("exchangeRate");

            if (exchangeRateNode != null)
            {
                if (exchangeRateNode.Attributes["href"] != null || exchangeRateNode.Attributes["id"] != null)
                {
                    if (exchangeRateNode.Attributes["id"] != null)
                    {
                        exchangeRateIDRef_ = exchangeRateNode.Attributes["id"].Value;
                        ExchangeRate ob = new ExchangeRate(exchangeRateNode);
                        IDManager.SetID(exchangeRateIDRef_, ob);
                    }
                    else if (exchangeRateNode.Attributes["href"] != null)
                    {
                        exchangeRateIDRef_ = exchangeRateNode.Attributes["href"].Value;
                    }
                    else
                    {
                        exchangeRate_ = new ExchangeRate(exchangeRateNode);
                    }
                }
                else
                {
                    exchangeRate_ = new ExchangeRate(exchangeRateNode);
                }
            }


            XmlNode nonDeliverableSettlementNode = xmlNode.SelectSingleNode("nonDeliverableSettlement");

            if (nonDeliverableSettlementNode != null)
            {
                if (nonDeliverableSettlementNode.Attributes["href"] != null || nonDeliverableSettlementNode.Attributes["id"] != null)
                {
                    if (nonDeliverableSettlementNode.Attributes["id"] != null)
                    {
                        nonDeliverableSettlementIDRef_ = nonDeliverableSettlementNode.Attributes["id"].Value;
                        FxCashSettlement ob = new FxCashSettlement(nonDeliverableSettlementNode);
                        IDManager.SetID(nonDeliverableSettlementIDRef_, ob);
                    }
                    else if (nonDeliverableSettlementNode.Attributes["href"] != null)
                    {
                        nonDeliverableSettlementIDRef_ = nonDeliverableSettlementNode.Attributes["href"].Value;
                    }
                    else
                    {
                        nonDeliverableSettlement_ = new FxCashSettlement(nonDeliverableSettlementNode);
                    }
                }
                else
                {
                    nonDeliverableSettlement_ = new FxCashSettlement(nonDeliverableSettlementNode);
                }
            }
        }
 public CalculationPeriodDates(XmlNode xmlNode)
 {
     XmlNode effectiveDateNode = xmlNode.SelectSingleNode("effectiveDate");
     
     if (effectiveDateNode != null)
     {
         if (effectiveDateNode.Attributes["href"] != null || effectiveDateNode.Attributes["id"] != null) 
         {
             if (effectiveDateNode.Attributes["id"] != null) 
             {
                 effectiveDateIDRef_ = effectiveDateNode.Attributes["id"].Value;
                 AdjustableDate ob = new AdjustableDate(effectiveDateNode);
                 IDManager.SetID(effectiveDateIDRef_, ob);
             }
             else if (effectiveDateNode.Attributes["href"] != null)
             {
                 effectiveDateIDRef_ = effectiveDateNode.Attributes["href"].Value;
             }
             else
             {
                 effectiveDate_ = new AdjustableDate(effectiveDateNode);
             }
         }
         else
         {
             effectiveDate_ = new AdjustableDate(effectiveDateNode);
         }
     }
     
 
     XmlNode relativeEffectiveDateNode = xmlNode.SelectSingleNode("relativeEffectiveDate");
     
     if (relativeEffectiveDateNode != null)
     {
         if (relativeEffectiveDateNode.Attributes["href"] != null || relativeEffectiveDateNode.Attributes["id"] != null) 
         {
             if (relativeEffectiveDateNode.Attributes["id"] != null) 
             {
                 relativeEffectiveDateIDRef_ = relativeEffectiveDateNode.Attributes["id"].Value;
                 AdjustedRelativeDateOffset ob = new AdjustedRelativeDateOffset(relativeEffectiveDateNode);
                 IDManager.SetID(relativeEffectiveDateIDRef_, ob);
             }
             else if (relativeEffectiveDateNode.Attributes["href"] != null)
             {
                 relativeEffectiveDateIDRef_ = relativeEffectiveDateNode.Attributes["href"].Value;
             }
             else
             {
                 relativeEffectiveDate_ = new AdjustedRelativeDateOffset(relativeEffectiveDateNode);
             }
         }
         else
         {
             relativeEffectiveDate_ = new AdjustedRelativeDateOffset(relativeEffectiveDateNode);
         }
     }
     
 
     XmlNode terminationDateNode = xmlNode.SelectSingleNode("terminationDate");
     
     if (terminationDateNode != null)
     {
         if (terminationDateNode.Attributes["href"] != null || terminationDateNode.Attributes["id"] != null) 
         {
             if (terminationDateNode.Attributes["id"] != null) 
             {
                 terminationDateIDRef_ = terminationDateNode.Attributes["id"].Value;
                 AdjustableDate ob = new AdjustableDate(terminationDateNode);
                 IDManager.SetID(terminationDateIDRef_, ob);
             }
             else if (terminationDateNode.Attributes["href"] != null)
             {
                 terminationDateIDRef_ = terminationDateNode.Attributes["href"].Value;
             }
             else
             {
                 terminationDate_ = new AdjustableDate(terminationDateNode);
             }
         }
         else
         {
             terminationDate_ = new AdjustableDate(terminationDateNode);
         }
     }
     
 
     XmlNode relativeTerminationDateNode = xmlNode.SelectSingleNode("relativeTerminationDate");
     
     if (relativeTerminationDateNode != null)
     {
         if (relativeTerminationDateNode.Attributes["href"] != null || relativeTerminationDateNode.Attributes["id"] != null) 
         {
             if (relativeTerminationDateNode.Attributes["id"] != null) 
             {
                 relativeTerminationDateIDRef_ = relativeTerminationDateNode.Attributes["id"].Value;
                 RelativeDateOffset ob = new RelativeDateOffset(relativeTerminationDateNode);
                 IDManager.SetID(relativeTerminationDateIDRef_, ob);
             }
             else if (relativeTerminationDateNode.Attributes["href"] != null)
             {
                 relativeTerminationDateIDRef_ = relativeTerminationDateNode.Attributes["href"].Value;
             }
             else
             {
                 relativeTerminationDate_ = new RelativeDateOffset(relativeTerminationDateNode);
             }
         }
         else
         {
             relativeTerminationDate_ = new RelativeDateOffset(relativeTerminationDateNode);
         }
     }
     
 
     XmlNode calculationPeriodDatesAdjustmentsNode = xmlNode.SelectSingleNode("calculationPeriodDatesAdjustments");
     
     if (calculationPeriodDatesAdjustmentsNode != null)
     {
         if (calculationPeriodDatesAdjustmentsNode.Attributes["href"] != null || calculationPeriodDatesAdjustmentsNode.Attributes["id"] != null) 
         {
             if (calculationPeriodDatesAdjustmentsNode.Attributes["id"] != null) 
             {
                 calculationPeriodDatesAdjustmentsIDRef_ = calculationPeriodDatesAdjustmentsNode.Attributes["id"].Value;
                 BusinessDayAdjustments ob = new BusinessDayAdjustments(calculationPeriodDatesAdjustmentsNode);
                 IDManager.SetID(calculationPeriodDatesAdjustmentsIDRef_, ob);
             }
             else if (calculationPeriodDatesAdjustmentsNode.Attributes["href"] != null)
             {
                 calculationPeriodDatesAdjustmentsIDRef_ = calculationPeriodDatesAdjustmentsNode.Attributes["href"].Value;
             }
             else
             {
                 calculationPeriodDatesAdjustments_ = new BusinessDayAdjustments(calculationPeriodDatesAdjustmentsNode);
             }
         }
         else
         {
             calculationPeriodDatesAdjustments_ = new BusinessDayAdjustments(calculationPeriodDatesAdjustmentsNode);
         }
     }
     
 
     XmlNode firstPeriodStartDateNode = xmlNode.SelectSingleNode("firstPeriodStartDate");
     
     if (firstPeriodStartDateNode != null)
     {
         if (firstPeriodStartDateNode.Attributes["href"] != null || firstPeriodStartDateNode.Attributes["id"] != null) 
         {
             if (firstPeriodStartDateNode.Attributes["id"] != null) 
             {
                 firstPeriodStartDateIDRef_ = firstPeriodStartDateNode.Attributes["id"].Value;
                 AdjustableDate ob = new AdjustableDate(firstPeriodStartDateNode);
                 IDManager.SetID(firstPeriodStartDateIDRef_, ob);
             }
             else if (firstPeriodStartDateNode.Attributes["href"] != null)
             {
                 firstPeriodStartDateIDRef_ = firstPeriodStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 firstPeriodStartDate_ = new AdjustableDate(firstPeriodStartDateNode);
             }
         }
         else
         {
             firstPeriodStartDate_ = new AdjustableDate(firstPeriodStartDateNode);
         }
     }
     
 
     XmlNode firstRegularPeriodStartDateNode = xmlNode.SelectSingleNode("firstRegularPeriodStartDate");
     
     if (firstRegularPeriodStartDateNode != null)
     {
         if (firstRegularPeriodStartDateNode.Attributes["href"] != null || firstRegularPeriodStartDateNode.Attributes["id"] != null) 
         {
             if (firstRegularPeriodStartDateNode.Attributes["id"] != null) 
             {
                 firstRegularPeriodStartDateIDRef_ = firstRegularPeriodStartDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(firstRegularPeriodStartDateNode);
                 IDManager.SetID(firstRegularPeriodStartDateIDRef_, ob);
             }
             else if (firstRegularPeriodStartDateNode.Attributes["href"] != null)
             {
                 firstRegularPeriodStartDateIDRef_ = firstRegularPeriodStartDateNode.Attributes["href"].Value;
             }
             else
             {
                 firstRegularPeriodStartDate_ = new XsdTypeDate(firstRegularPeriodStartDateNode);
             }
         }
         else
         {
             firstRegularPeriodStartDate_ = new XsdTypeDate(firstRegularPeriodStartDateNode);
         }
     }
     
 
     XmlNode firstCompoundingPeriodEndDateNode = xmlNode.SelectSingleNode("firstCompoundingPeriodEndDate");
     
     if (firstCompoundingPeriodEndDateNode != null)
     {
         if (firstCompoundingPeriodEndDateNode.Attributes["href"] != null || firstCompoundingPeriodEndDateNode.Attributes["id"] != null) 
         {
             if (firstCompoundingPeriodEndDateNode.Attributes["id"] != null) 
             {
                 firstCompoundingPeriodEndDateIDRef_ = firstCompoundingPeriodEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(firstCompoundingPeriodEndDateNode);
                 IDManager.SetID(firstCompoundingPeriodEndDateIDRef_, ob);
             }
             else if (firstCompoundingPeriodEndDateNode.Attributes["href"] != null)
             {
                 firstCompoundingPeriodEndDateIDRef_ = firstCompoundingPeriodEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 firstCompoundingPeriodEndDate_ = new XsdTypeDate(firstCompoundingPeriodEndDateNode);
             }
         }
         else
         {
             firstCompoundingPeriodEndDate_ = new XsdTypeDate(firstCompoundingPeriodEndDateNode);
         }
     }
     
 
     XmlNode lastRegularPeriodEndDateNode = xmlNode.SelectSingleNode("lastRegularPeriodEndDate");
     
     if (lastRegularPeriodEndDateNode != null)
     {
         if (lastRegularPeriodEndDateNode.Attributes["href"] != null || lastRegularPeriodEndDateNode.Attributes["id"] != null) 
         {
             if (lastRegularPeriodEndDateNode.Attributes["id"] != null) 
             {
                 lastRegularPeriodEndDateIDRef_ = lastRegularPeriodEndDateNode.Attributes["id"].Value;
                 XsdTypeDate ob = new XsdTypeDate(lastRegularPeriodEndDateNode);
                 IDManager.SetID(lastRegularPeriodEndDateIDRef_, ob);
             }
             else if (lastRegularPeriodEndDateNode.Attributes["href"] != null)
             {
                 lastRegularPeriodEndDateIDRef_ = lastRegularPeriodEndDateNode.Attributes["href"].Value;
             }
             else
             {
                 lastRegularPeriodEndDate_ = new XsdTypeDate(lastRegularPeriodEndDateNode);
             }
         }
         else
         {
             lastRegularPeriodEndDate_ = new XsdTypeDate(lastRegularPeriodEndDateNode);
         }
     }
     
 
     XmlNode stubPeriodTypeNode = xmlNode.SelectSingleNode("stubPeriodType");
     
     if (stubPeriodTypeNode != null)
     {
         if (stubPeriodTypeNode.Attributes["href"] != null || stubPeriodTypeNode.Attributes["id"] != null) 
         {
             if (stubPeriodTypeNode.Attributes["id"] != null) 
             {
                 stubPeriodTypeIDRef_ = stubPeriodTypeNode.Attributes["id"].Value;
                 StubPeriodTypeEnum ob = new StubPeriodTypeEnum(stubPeriodTypeNode);
                 IDManager.SetID(stubPeriodTypeIDRef_, ob);
             }
             else if (stubPeriodTypeNode.Attributes["href"] != null)
             {
                 stubPeriodTypeIDRef_ = stubPeriodTypeNode.Attributes["href"].Value;
             }
             else
             {
                 stubPeriodType_ = new StubPeriodTypeEnum(stubPeriodTypeNode);
             }
         }
         else
         {
             stubPeriodType_ = new StubPeriodTypeEnum(stubPeriodTypeNode);
         }
     }
     
 
     XmlNode calculationPeriodFrequencyNode = xmlNode.SelectSingleNode("calculationPeriodFrequency");
     
     if (calculationPeriodFrequencyNode != null)
     {
         if (calculationPeriodFrequencyNode.Attributes["href"] != null || calculationPeriodFrequencyNode.Attributes["id"] != null) 
         {
             if (calculationPeriodFrequencyNode.Attributes["id"] != null) 
             {
                 calculationPeriodFrequencyIDRef_ = calculationPeriodFrequencyNode.Attributes["id"].Value;
                 CalculationPeriodFrequency ob = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
                 IDManager.SetID(calculationPeriodFrequencyIDRef_, ob);
             }
             else if (calculationPeriodFrequencyNode.Attributes["href"] != null)
             {
                 calculationPeriodFrequencyIDRef_ = calculationPeriodFrequencyNode.Attributes["href"].Value;
             }
             else
             {
                 calculationPeriodFrequency_ = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
             }
         }
         else
         {
             calculationPeriodFrequency_ = new CalculationPeriodFrequency(calculationPeriodFrequencyNode);
         }
     }
     
 
 }