public ValuationSet(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;
                 XsdTypeString ob = new XsdTypeString(nameNode);
                 IDManager.SetID(nameIDRef_, ob);
             }
             else if (nameNode.Attributes["href"] != null)
             {
                 nameIDRef_ = nameNode.Attributes["href"].Value;
             }
             else
             {
                 name_ = new XsdTypeString(nameNode);
             }
         }
         else
         {
             name_ = new XsdTypeString(nameNode);
         }
     }
     
 
     XmlNodeList valuationScenarioNodeList = xmlNode.SelectNodes("valuationScenario");
     
     if (valuationScenarioNodeList != null)
     {
         this.valuationScenario_ = new List<ValuationScenario>();
         foreach (XmlNode item in valuationScenarioNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     valuationScenarioIDRef_ = item.Attributes["id"].Value;
                     valuationScenario_.Add(new ValuationScenario(item));
                     IDManager.SetID(valuationScenarioIDRef_, valuationScenario_[valuationScenario_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     valuationScenarioIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 valuationScenario_.Add(new ValuationScenario(item));
                 }
             }
             else
             {
                 valuationScenario_.Add(new ValuationScenario(item));
             }
         }
     }
     
 
     XmlNodeList valuationScenarioReferenceNodeList = xmlNode.SelectNodes("valuationScenarioReference");
     
     if (valuationScenarioReferenceNodeList != null)
     {
         this.valuationScenarioReference_ = new List<ValuationScenarioReference>();
         foreach (XmlNode item in valuationScenarioReferenceNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     valuationScenarioReferenceIDRef_ = item.Attributes["id"].Value;
                     valuationScenarioReference_.Add(new ValuationScenarioReference(item));
                     IDManager.SetID(valuationScenarioReferenceIDRef_, valuationScenarioReference_[valuationScenarioReference_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     valuationScenarioReferenceIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 valuationScenarioReference_.Add(new ValuationScenarioReference(item));
                 }
             }
             else
             {
                 valuationScenarioReference_.Add(new ValuationScenarioReference(item));
             }
         }
     }
     
 
     XmlNode basePartyNode = xmlNode.SelectSingleNode("baseParty");
     
     if (basePartyNode != null)
     {
         if (basePartyNode.Attributes["href"] != null || basePartyNode.Attributes["id"] != null) 
         {
             if (basePartyNode.Attributes["id"] != null) 
             {
                 basePartyIDRef_ = basePartyNode.Attributes["id"].Value;
                 PartyReference ob = new PartyReference(basePartyNode);
                 IDManager.SetID(basePartyIDRef_, ob);
             }
             else if (basePartyNode.Attributes["href"] != null)
             {
                 basePartyIDRef_ = basePartyNode.Attributes["href"].Value;
             }
             else
             {
                 baseParty_ = new PartyReference(basePartyNode);
             }
         }
         else
         {
             baseParty_ = new PartyReference(basePartyNode);
         }
     }
     
 
     XmlNodeList quotationCharacteristicsNodeList = xmlNode.SelectNodes("quotationCharacteristics");
     
     if (quotationCharacteristicsNodeList != null)
     {
         this.quotationCharacteristics_ = new List<QuotationCharacteristics>();
         foreach (XmlNode item in quotationCharacteristicsNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     quotationCharacteristicsIDRef_ = item.Attributes["id"].Value;
                     quotationCharacteristics_.Add(new QuotationCharacteristics(item));
                     IDManager.SetID(quotationCharacteristicsIDRef_, quotationCharacteristics_[quotationCharacteristics_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     quotationCharacteristicsIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 quotationCharacteristics_.Add(new QuotationCharacteristics(item));
                 }
             }
             else
             {
                 quotationCharacteristics_.Add(new QuotationCharacteristics(item));
             }
         }
     }
     
 
     XmlNodeList sensitivitySetDefinitionNodeList = xmlNode.SelectNodes("sensitivitySetDefinition");
     
     if (sensitivitySetDefinitionNodeList != null)
     {
         this.sensitivitySetDefinition_ = new List<SensitivitySetDefinition>();
         foreach (XmlNode item in sensitivitySetDefinitionNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     sensitivitySetDefinitionIDRef_ = item.Attributes["id"].Value;
                     sensitivitySetDefinition_.Add(new SensitivitySetDefinition(item));
                     IDManager.SetID(sensitivitySetDefinitionIDRef_, sensitivitySetDefinition_[sensitivitySetDefinition_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     sensitivitySetDefinitionIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 sensitivitySetDefinition_.Add(new SensitivitySetDefinition(item));
                 }
             }
             else
             {
                 sensitivitySetDefinition_.Add(new SensitivitySetDefinition(item));
             }
         }
     }
     
 
     XmlNode detailNode = xmlNode.SelectSingleNode("detail");
     
     if (detailNode != null)
     {
         if (detailNode.Attributes["href"] != null || detailNode.Attributes["id"] != null) 
         {
             if (detailNode.Attributes["id"] != null) 
             {
                 detailIDRef_ = detailNode.Attributes["id"].Value;
                 ValuationSetDetail ob = new ValuationSetDetail(detailNode);
                 IDManager.SetID(detailIDRef_, ob);
             }
             else if (detailNode.Attributes["href"] != null)
             {
                 detailIDRef_ = detailNode.Attributes["href"].Value;
             }
             else
             {
                 detail_ = new ValuationSetDetail(detailNode);
             }
         }
         else
         {
             detail_ = new ValuationSetDetail(detailNode);
         }
     }
     
 
     XmlNodeList assetValuationNodeList = xmlNode.SelectNodes("assetValuation");
     
     if (assetValuationNodeList != null)
     {
         this.assetValuation_ = new List<AssetValuation>();
         foreach (XmlNode item in assetValuationNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     assetValuationIDRef_ = item.Attributes["id"].Value;
                     assetValuation_.Add(new AssetValuation(item));
                     IDManager.SetID(assetValuationIDRef_, assetValuation_[assetValuation_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     assetValuationIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 assetValuation_.Add(new AssetValuation(item));
                 }
             }
             else
             {
                 assetValuation_.Add(new AssetValuation(item));
             }
         }
     }
     
 
 }
 public ValuationSet(XmlNode xmlNode)
 {
     XmlNodeList nameNodeList = xmlNode.SelectNodes("name");
     if (nameNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in nameNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 nameIDRef = item.Attributes["id"].Name;
                 XsdTypeString ob = XsdTypeString();
                 IDManager.SetID(nameIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 nameIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 name = new XsdTypeString(item);
             }
         }
     }
     
 
     XmlNodeList valuationScenarioNodeList = xmlNode.SelectNodes("valuationScenario");
     
     foreach (XmlNode item in valuationScenarioNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valuationScenarioIDRef = item.Attributes["id"].Name;
                 List<ValuationScenario> ob = new List<ValuationScenario>();
                 ob.Add(new ValuationScenario(item));
                 IDManager.SetID(valuationScenarioIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valuationScenarioIDRef = item.Attributes["href"].Name;
             }
             else
             {
             valuationScenario.Add(new ValuationScenario(item));
             }
         }
     }
     
 
     XmlNodeList valuationScenarioReferenceNodeList = xmlNode.SelectNodes("valuationScenarioReference");
     
     foreach (XmlNode item in valuationScenarioReferenceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valuationScenarioReferenceIDRef = item.Attributes["id"].Name;
                 List<ValuationScenarioReference> ob = new List<ValuationScenarioReference>();
                 ob.Add(new ValuationScenarioReference(item));
                 IDManager.SetID(valuationScenarioReferenceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valuationScenarioReferenceIDRef = item.Attributes["href"].Name;
             }
             else
             {
             valuationScenarioReference.Add(new ValuationScenarioReference(item));
             }
         }
     }
     
 
     XmlNodeList basePartyNodeList = xmlNode.SelectNodes("baseParty");
     if (basePartyNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in basePartyNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 basePartyIDRef = item.Attributes["id"].Name;
                 PartyReference ob = PartyReference();
                 IDManager.SetID(basePartyIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 basePartyIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 baseParty = new PartyReference(item);
             }
         }
     }
     
 
     XmlNodeList quotationCharacteristicsNodeList = xmlNode.SelectNodes("quotationCharacteristics");
     
     foreach (XmlNode item in quotationCharacteristicsNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 quotationCharacteristicsIDRef = item.Attributes["id"].Name;
                 List<QuotationCharacteristics> ob = new List<QuotationCharacteristics>();
                 ob.Add(new QuotationCharacteristics(item));
                 IDManager.SetID(quotationCharacteristicsIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 quotationCharacteristicsIDRef = item.Attributes["href"].Name;
             }
             else
             {
             quotationCharacteristics.Add(new QuotationCharacteristics(item));
             }
         }
     }
     
 
     XmlNodeList sensitivitySetDefinitionNodeList = xmlNode.SelectNodes("sensitivitySetDefinition");
     
     foreach (XmlNode item in sensitivitySetDefinitionNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 sensitivitySetDefinitionIDRef = item.Attributes["id"].Name;
                 List<SensitivitySetDefinition> ob = new List<SensitivitySetDefinition>();
                 ob.Add(new SensitivitySetDefinition(item));
                 IDManager.SetID(sensitivitySetDefinitionIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 sensitivitySetDefinitionIDRef = item.Attributes["href"].Name;
             }
             else
             {
             sensitivitySetDefinition.Add(new SensitivitySetDefinition(item));
             }
         }
     }
     
 
     XmlNodeList detailNodeList = xmlNode.SelectNodes("detail");
     if (detailNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in detailNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 detailIDRef = item.Attributes["id"].Name;
                 ValuationSetDetail ob = ValuationSetDetail();
                 IDManager.SetID(detailIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 detailIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 detail = new ValuationSetDetail(item);
             }
         }
     }
     
 
     XmlNodeList assetValuationNodeList = xmlNode.SelectNodes("assetValuation");
     
     foreach (XmlNode item in assetValuationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 assetValuationIDRef = item.Attributes["id"].Name;
                 List<AssetValuation> ob = new List<AssetValuation>();
                 ob.Add(new AssetValuation(item));
                 IDManager.SetID(assetValuationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 assetValuationIDRef = item.Attributes["href"].Name;
             }
             else
             {
             assetValuation.Add(new AssetValuation(item));
             }
         }
     }
     
 
 }
        public ValuationSet(XmlNode xmlNode)
        {
            XmlNodeList nameNodeList = xmlNode.SelectNodes("name");

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

            foreach (XmlNode item in nameNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        nameIDRef = item.Attributes["id"].Name;
                        XsdTypeString ob = XsdTypeString();
                        IDManager.SetID(nameIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        nameIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        name = new XsdTypeString(item);
                    }
                }
            }


            XmlNodeList valuationScenarioNodeList = xmlNode.SelectNodes("valuationScenario");

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


            XmlNodeList valuationScenarioReferenceNodeList = xmlNode.SelectNodes("valuationScenarioReference");

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


            XmlNodeList basePartyNodeList = xmlNode.SelectNodes("baseParty");

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

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


            XmlNodeList quotationCharacteristicsNodeList = xmlNode.SelectNodes("quotationCharacteristics");

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


            XmlNodeList sensitivitySetDefinitionNodeList = xmlNode.SelectNodes("sensitivitySetDefinition");

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


            XmlNodeList detailNodeList = xmlNode.SelectNodes("detail");

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

            foreach (XmlNode item in detailNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        detailIDRef = item.Attributes["id"].Name;
                        ValuationSetDetail ob = ValuationSetDetail();
                        IDManager.SetID(detailIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        detailIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        detail = new ValuationSetDetail(item);
                    }
                }
            }


            XmlNodeList assetValuationNodeList = xmlNode.SelectNodes("assetValuation");

            foreach (XmlNode item in assetValuationNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        assetValuationIDRef = item.Attributes["id"].Name;
                        List <AssetValuation> ob = new List <AssetValuation>();
                        ob.Add(new AssetValuation(item));
                        IDManager.SetID(assetValuationIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        assetValuationIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        assetValuation.Add(new AssetValuation(item));
                    }
                }
            }
        }
        public ValuationSet(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;
                        XsdTypeString ob = new XsdTypeString(nameNode);
                        IDManager.SetID(nameIDRef_, ob);
                    }
                    else if (nameNode.Attributes["href"] != null)
                    {
                        nameIDRef_ = nameNode.Attributes["href"].Value;
                    }
                    else
                    {
                        name_ = new XsdTypeString(nameNode);
                    }
                }
                else
                {
                    name_ = new XsdTypeString(nameNode);
                }
            }


            XmlNodeList valuationScenarioNodeList = xmlNode.SelectNodes("valuationScenario");

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


            XmlNodeList valuationScenarioReferenceNodeList = xmlNode.SelectNodes("valuationScenarioReference");

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


            XmlNode basePartyNode = xmlNode.SelectSingleNode("baseParty");

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


            XmlNodeList quotationCharacteristicsNodeList = xmlNode.SelectNodes("quotationCharacteristics");

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


            XmlNodeList sensitivitySetDefinitionNodeList = xmlNode.SelectNodes("sensitivitySetDefinition");

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


            XmlNode detailNode = xmlNode.SelectSingleNode("detail");

            if (detailNode != null)
            {
                if (detailNode.Attributes["href"] != null || detailNode.Attributes["id"] != null)
                {
                    if (detailNode.Attributes["id"] != null)
                    {
                        detailIDRef_ = detailNode.Attributes["id"].Value;
                        ValuationSetDetail ob = new ValuationSetDetail(detailNode);
                        IDManager.SetID(detailIDRef_, ob);
                    }
                    else if (detailNode.Attributes["href"] != null)
                    {
                        detailIDRef_ = detailNode.Attributes["href"].Value;
                    }
                    else
                    {
                        detail_ = new ValuationSetDetail(detailNode);
                    }
                }
                else
                {
                    detail_ = new ValuationSetDetail(detailNode);
                }
            }


            XmlNodeList assetValuationNodeList = xmlNode.SelectNodes("assetValuation");

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