public DateTimeList(XmlNode xmlNode)
 {
     XmlNodeList dateTimeNodeList = xmlNode.SelectNodes("dateTime");
     
     foreach (XmlNode item in dateTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 dateTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = new XsdTypeDateTime();
                 ob.Add(new XsdTypeDateTime(item));
                 IDManager.SetID(dateTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 dateTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
             dateTime.Add(new XsdTypeDateTime(item));
             }
         }
     }
     
 
 }
 public TradeTimestamp(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;
                 TimestampTypeScheme ob = TimestampTypeScheme();
                 IDManager.SetID(typeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 typeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 type = new TimestampTypeScheme(item);
             }
         }
     }
     
 
     XmlNodeList valueNodeList = xmlNode.SelectNodes("value");
     if (valueNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in valueNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valueIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(valueIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valueIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 value = new XsdTypeDateTime(item);
             }
         }
     }
     
 
 }
 public MultiDimensionalPricingData(XmlNode xmlNode)
 {
     XmlNodeList measureTypeNodeList = xmlNode.SelectNodes("measureType");
     if (measureTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in measureTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 measureTypeIDRef = item.Attributes["id"].Name;
                 AssetMeasureType ob = AssetMeasureType();
                 IDManager.SetID(measureTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 measureTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 measureType = new AssetMeasureType(item);
             }
         }
     }
     
 
     XmlNodeList quoteUnitsNodeList = xmlNode.SelectNodes("quoteUnits");
     if (quoteUnitsNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in quoteUnitsNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 quoteUnitsIDRef = item.Attributes["id"].Name;
                 PriceQuoteUnits ob = PriceQuoteUnits();
                 IDManager.SetID(quoteUnitsIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 quoteUnitsIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 quoteUnits = new PriceQuoteUnits(item);
             }
         }
     }
     
 
     XmlNodeList sideNodeList = xmlNode.SelectNodes("side");
     if (sideNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in sideNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 sideIDRef = item.Attributes["id"].Name;
                 QuotationSideEnum ob = QuotationSideEnum();
                 IDManager.SetID(sideIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 sideIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 side = new QuotationSideEnum(item);
             }
         }
     }
     
 
     XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency");
     if (currencyNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in currencyNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 currencyIDRef = item.Attributes["id"].Name;
                 Currency ob = Currency();
                 IDManager.SetID(currencyIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 currencyIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 currency = new Currency(item);
             }
         }
     }
     
 
     XmlNodeList currencyTypeNodeList = xmlNode.SelectNodes("currencyType");
     if (currencyTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in currencyTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 currencyTypeIDRef = item.Attributes["id"].Name;
                 ReportingCurrencyType ob = ReportingCurrencyType();
                 IDManager.SetID(currencyTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 currencyTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 currencyType = new ReportingCurrencyType(item);
             }
         }
     }
     
 
     XmlNodeList timingNodeList = xmlNode.SelectNodes("timing");
     if (timingNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in timingNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 timingIDRef = item.Attributes["id"].Name;
                 QuoteTiming ob = QuoteTiming();
                 IDManager.SetID(timingIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 timingIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 timing = new QuoteTiming(item);
             }
         }
     }
     
 
     XmlNodeList businessCenterNodeList = xmlNode.SelectNodes("businessCenter");
     if (businessCenterNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in businessCenterNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 businessCenterIDRef = item.Attributes["id"].Name;
                 BusinessCenter ob = BusinessCenter();
                 IDManager.SetID(businessCenterIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 businessCenterIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 businessCenter = new BusinessCenter(item);
             }
         }
     }
     
 
     XmlNodeList exchangeIdNodeList = xmlNode.SelectNodes("exchangeId");
     if (exchangeIdNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in exchangeIdNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 exchangeIdIDRef = item.Attributes["id"].Name;
                 ExchangeId ob = ExchangeId();
                 IDManager.SetID(exchangeIdIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 exchangeIdIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 exchangeId = new ExchangeId(item);
             }
         }
     }
     
 
     XmlNodeList informationSourceNodeList = xmlNode.SelectNodes("informationSource");
     
     foreach (XmlNode item in informationSourceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 informationSourceIDRef = item.Attributes["id"].Name;
                 List<InformationSource> ob = new List<InformationSource>();
                 ob.Add(new InformationSource(item));
                 IDManager.SetID(informationSourceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 informationSourceIDRef = item.Attributes["href"].Name;
             }
             else
             {
             informationSource.Add(new InformationSource(item));
             }
         }
     }
     
 
     XmlNodeList pricingModelNodeList = xmlNode.SelectNodes("pricingModel");
     if (pricingModelNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in pricingModelNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 pricingModelIDRef = item.Attributes["id"].Name;
                 PricingModel ob = PricingModel();
                 IDManager.SetID(pricingModelIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 pricingModelIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 pricingModel = new PricingModel(item);
             }
         }
     }
     
 
     XmlNodeList timeNodeList = xmlNode.SelectNodes("time");
     if (timeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in timeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 timeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(timeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 timeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 time = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList valuationDateNodeList = xmlNode.SelectNodes("valuationDate");
     if (valuationDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in valuationDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valuationDateIDRef = item.Attributes["id"].Name;
                 XsdTypeDate ob = XsdTypeDate();
                 IDManager.SetID(valuationDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valuationDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 valuationDate = new XsdTypeDate(item);
             }
         }
     }
     
 
     XmlNodeList expiryTimeNodeList = xmlNode.SelectNodes("expiryTime");
     if (expiryTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expiryTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expiryTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(expiryTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expiryTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expiryTime = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList cashflowTypeNodeList = xmlNode.SelectNodes("cashflowType");
     if (cashflowTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in cashflowTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 cashflowTypeIDRef = item.Attributes["id"].Name;
                 CashflowType ob = CashflowType();
                 IDManager.SetID(cashflowTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 cashflowTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 cashflowType = new CashflowType(item);
             }
         }
     }
     
 
     XmlNodeList pointNodeList = xmlNode.SelectNodes("point");
     
     foreach (XmlNode item in pointNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 pointIDRef = item.Attributes["id"].Name;
                 List<PricingStructurePoint> ob = new List<PricingStructurePoint>();
                 ob.Add(new PricingStructurePoint(item));
                 IDManager.SetID(pointIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 pointIDRef = item.Attributes["href"].Name;
             }
             else
             {
             point.Add(new PricingStructurePoint(item));
             }
         }
     }
     
 
 }
 public PricingStructureValuation(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList baseDateNodeList = xmlNode.SelectNodes("baseDate");
     if (baseDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in baseDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 baseDateIDRef = item.Attributes["id"].Name;
                 IdentifiedDate ob = IdentifiedDate();
                 IDManager.SetID(baseDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 baseDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 baseDate = new IdentifiedDate(item);
             }
         }
     }
     
 
     XmlNodeList spotDateNodeList = xmlNode.SelectNodes("spotDate");
     if (spotDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in spotDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 spotDateIDRef = item.Attributes["id"].Name;
                 IdentifiedDate ob = IdentifiedDate();
                 IDManager.SetID(spotDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 spotDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 spotDate = new IdentifiedDate(item);
             }
         }
     }
     
 
     XmlNodeList inputDataDateNodeList = xmlNode.SelectNodes("inputDataDate");
     if (inputDataDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in inputDataDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 inputDataDateIDRef = item.Attributes["id"].Name;
                 IdentifiedDate ob = IdentifiedDate();
                 IDManager.SetID(inputDataDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 inputDataDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 inputDataDate = new IdentifiedDate(item);
             }
         }
     }
     
 
     XmlNodeList endDateNodeList = xmlNode.SelectNodes("endDate");
     if (endDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in endDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 endDateIDRef = item.Attributes["id"].Name;
                 IdentifiedDate ob = IdentifiedDate();
                 IDManager.SetID(endDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 endDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 endDate = new IdentifiedDate(item);
             }
         }
     }
     
 
     XmlNodeList buildDateTimeNodeList = xmlNode.SelectNodes("buildDateTime");
     if (buildDateTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in buildDateTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 buildDateTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(buildDateTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 buildDateTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 buildDateTime = new XsdTypeDateTime(item);
             }
         }
     }
     
 
 }
 public NotificationMessageHeader(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList inReplyToNodeList = xmlNode.SelectNodes("inReplyTo");
     if (inReplyToNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in inReplyToNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 inReplyToIDRef = item.Attributes["id"].Name;
                 MessageId ob = MessageId();
                 IDManager.SetID(inReplyToIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 inReplyToIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 inReplyTo = new MessageId(item);
             }
         }
     }
     
 
     XmlNodeList sentByNodeList = xmlNode.SelectNodes("sentBy");
     if (sentByNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in sentByNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 sentByIDRef = item.Attributes["id"].Name;
                 MessageAddress ob = MessageAddress();
                 IDManager.SetID(sentByIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 sentByIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 sentBy = new MessageAddress(item);
             }
         }
     }
     
 
     XmlNodeList sendToNodeList = xmlNode.SelectNodes("sendTo");
     
     foreach (XmlNode item in sendToNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 sendToIDRef = item.Attributes["id"].Name;
                 List<MessageAddress> ob = new List<MessageAddress>();
                 ob.Add(new MessageAddress(item));
                 IDManager.SetID(sendToIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 sendToIDRef = item.Attributes["href"].Name;
             }
             else
             {
             sendTo.Add(new MessageAddress(item));
             }
         }
     }
     
 
     XmlNodeList copyToNodeList = xmlNode.SelectNodes("copyTo");
     
     foreach (XmlNode item in copyToNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 copyToIDRef = item.Attributes["id"].Name;
                 List<MessageAddress> ob = new List<MessageAddress>();
                 ob.Add(new MessageAddress(item));
                 IDManager.SetID(copyToIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 copyToIDRef = item.Attributes["href"].Name;
             }
             else
             {
             copyTo.Add(new MessageAddress(item));
             }
         }
     }
     
 
     XmlNodeList creationTimestampNodeList = xmlNode.SelectNodes("creationTimestamp");
     if (creationTimestampNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in creationTimestampNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 creationTimestampIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(creationTimestampIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 creationTimestampIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 creationTimestamp = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList expiryTimestampNodeList = xmlNode.SelectNodes("expiryTimestamp");
     if (expiryTimestampNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expiryTimestampNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expiryTimestampIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(expiryTimestampIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expiryTimestampIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expiryTimestamp = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList implementationSpecificationNodeList = xmlNode.SelectNodes("implementationSpecification");
     if (implementationSpecificationNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in implementationSpecificationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 implementationSpecificationIDRef = item.Attributes["id"].Name;
                 ImplementationSpecification ob = ImplementationSpecification();
                 IDManager.SetID(implementationSpecificationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 implementationSpecificationIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 implementationSpecification = new ImplementationSpecification(item);
             }
         }
     }
     
 
     XmlNodeList partyMessageInformationNodeList = xmlNode.SelectNodes("partyMessageInformation");
     
     foreach (XmlNode item in partyMessageInformationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 partyMessageInformationIDRef = item.Attributes["id"].Name;
                 List<PartyMessageInformation> ob = new List<PartyMessageInformation>();
                 ob.Add(new PartyMessageInformation(item));
                 IDManager.SetID(partyMessageInformationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 partyMessageInformationIDRef = item.Attributes["href"].Name;
             }
             else
             {
             partyMessageInformation.Add(new PartyMessageInformation(item));
             }
         }
     }
     
 
     XmlNodeList SignatureNodeList = xmlNode.SelectNodes("Signature");
     if (SignatureNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in SignatureNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 SignatureIDRef = item.Attributes["id"].Name;
                 SignatureType ob = SignatureType();
                 IDManager.SetID(SignatureIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 SignatureIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 Signature = new SignatureType(item);
             }
         }
     }
     
 
 }
 public WeightedAveragingObservation(XmlNode xmlNode)
 {
     XmlNodeList dateTimeNodeList = xmlNode.SelectNodes("dateTime");
     if (dateTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in dateTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 dateTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(dateTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 dateTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 dateTime = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList observationNumberNodeList = xmlNode.SelectNodes("observationNumber");
     if (observationNumberNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in observationNumberNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 observationNumberIDRef = item.Attributes["id"].Name;
                 XsdTypePositiveInteger ob = XsdTypePositiveInteger();
                 IDManager.SetID(observationNumberIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 observationNumberIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 observationNumber = new XsdTypePositiveInteger(item);
             }
         }
     }
     
 
     XmlNodeList weightNodeList = xmlNode.SelectNodes("weight");
     if (weightNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in weightNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 weightIDRef = item.Attributes["id"].Name;
                 NonNegativeDecimal ob = NonNegativeDecimal();
                 IDManager.SetID(weightIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 weightIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 weight = new NonNegativeDecimal(item);
             }
         }
     }
     
 
 }
 public PricingStructurePoint(XmlNode xmlNode)
 {
     XmlNodeList coordinateNodeList = xmlNode.SelectNodes("coordinate");
     if (coordinateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in coordinateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 coordinateIDRef = item.Attributes["id"].Name;
                 PricingDataPointCoordinate ob = PricingDataPointCoordinate();
                 IDManager.SetID(coordinateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 coordinateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 coordinate = new PricingDataPointCoordinate(item);
             }
         }
     }
     
 
     XmlNodeList coordinateReferenceNodeList = xmlNode.SelectNodes("coordinateReference");
     if (coordinateReferenceNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in coordinateReferenceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 coordinateReferenceIDRef = item.Attributes["id"].Name;
                 PricingDataPointCoordinateReference ob = PricingDataPointCoordinateReference();
                 IDManager.SetID(coordinateReferenceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 coordinateReferenceIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 coordinateReference = new PricingDataPointCoordinateReference(item);
             }
         }
     }
     
 
     XmlNodeList underlyingAssetNodeList = xmlNode.SelectNodes("underlyingAsset");
     if (underlyingAssetNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in underlyingAssetNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 underlyingAssetIDRef = item.Attributes["id"].Name;
                 Asset ob = Asset();
                 IDManager.SetID(underlyingAssetIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 underlyingAssetIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 underlyingAsset = new Asset(item);
             }
         }
     }
     
 
     XmlNodeList basketNodeList = xmlNode.SelectNodes("basket");
     if (basketNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in basketNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 basketIDRef = item.Attributes["id"].Name;
                 Basket ob = Basket();
                 IDManager.SetID(basketIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 basketIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 basket = new Basket(item);
             }
         }
     }
     
 
     XmlNodeList bondNodeList = xmlNode.SelectNodes("bond");
     if (bondNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in bondNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 bondIDRef = item.Attributes["id"].Name;
                 Bond ob = Bond();
                 IDManager.SetID(bondIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 bondIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 bond = new Bond(item);
             }
         }
     }
     
 
     XmlNodeList cashNodeList = xmlNode.SelectNodes("cash");
     if (cashNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in cashNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 cashIDRef = item.Attributes["id"].Name;
                 Cash ob = Cash();
                 IDManager.SetID(cashIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 cashIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 cash = new Cash(item);
             }
         }
     }
     
 
     XmlNodeList commodityNodeList = xmlNode.SelectNodes("commodity");
     if (commodityNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in commodityNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 commodityIDRef = item.Attributes["id"].Name;
                 Commodity ob = Commodity();
                 IDManager.SetID(commodityIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 commodityIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 commodity = new Commodity(item);
             }
         }
     }
     
 
     XmlNodeList convertibleBondNodeList = xmlNode.SelectNodes("convertibleBond");
     if (convertibleBondNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in convertibleBondNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 convertibleBondIDRef = item.Attributes["id"].Name;
                 ConvertibleBond ob = ConvertibleBond();
                 IDManager.SetID(convertibleBondIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 convertibleBondIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 convertibleBond = new ConvertibleBond(item);
             }
         }
     }
     
 
     XmlNodeList equityNodeList = xmlNode.SelectNodes("equity");
     if (equityNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in equityNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 equityIDRef = item.Attributes["id"].Name;
                 EquityAsset ob = EquityAsset();
                 IDManager.SetID(equityIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 equityIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 equity = new EquityAsset(item);
             }
         }
     }
     
 
     XmlNodeList exchangeTradedFundNodeList = xmlNode.SelectNodes("exchangeTradedFund");
     if (exchangeTradedFundNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in exchangeTradedFundNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 exchangeTradedFundIDRef = item.Attributes["id"].Name;
                 ExchangeTradedFund ob = ExchangeTradedFund();
                 IDManager.SetID(exchangeTradedFundIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 exchangeTradedFundIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 exchangeTradedFund = new ExchangeTradedFund(item);
             }
         }
     }
     
 
     XmlNodeList futureNodeList = xmlNode.SelectNodes("future");
     if (futureNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in futureNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 futureIDRef = item.Attributes["id"].Name;
                 Future ob = Future();
                 IDManager.SetID(futureIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 futureIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 future = new Future(item);
             }
         }
     }
     
 
     XmlNodeList indexNodeList = xmlNode.SelectNodes("index");
     if (indexNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in indexNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 indexIDRef = item.Attributes["id"].Name;
                 Index ob = Index();
                 IDManager.SetID(indexIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 indexIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 index = new Index(item);
             }
         }
     }
     
 
     XmlNodeList loanNodeList = xmlNode.SelectNodes("loan");
     if (loanNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in loanNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 loanIDRef = item.Attributes["id"].Name;
                 Loan ob = Loan();
                 IDManager.SetID(loanIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 loanIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 loan = new Loan(item);
             }
         }
     }
     
 
     XmlNodeList mortgageNodeList = xmlNode.SelectNodes("mortgage");
     if (mortgageNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in mortgageNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 mortgageIDRef = item.Attributes["id"].Name;
                 Mortgage ob = Mortgage();
                 IDManager.SetID(mortgageIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 mortgageIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 mortgage = new Mortgage(item);
             }
         }
     }
     
 
     XmlNodeList mutualFundNodeList = xmlNode.SelectNodes("mutualFund");
     if (mutualFundNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in mutualFundNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 mutualFundIDRef = item.Attributes["id"].Name;
                 MutualFund ob = MutualFund();
                 IDManager.SetID(mutualFundIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 mutualFundIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 mutualFund = new MutualFund(item);
             }
         }
     }
     
 
     XmlNodeList underlyingAssetReferenceNodeList = xmlNode.SelectNodes("underlyingAssetReference");
     if (underlyingAssetReferenceNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in underlyingAssetReferenceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 underlyingAssetReferenceIDRef = item.Attributes["id"].Name;
                 AssetReference ob = AssetReference();
                 IDManager.SetID(underlyingAssetReferenceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 underlyingAssetReferenceIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 underlyingAssetReference = new AssetReference(item);
             }
         }
     }
     
 
     XmlNodeList valueNodeList = xmlNode.SelectNodes("value");
     if (valueNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in valueNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valueIDRef = item.Attributes["id"].Name;
                 XsdTypeDecimal ob = XsdTypeDecimal();
                 IDManager.SetID(valueIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valueIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 value = new XsdTypeDecimal(item);
             }
         }
     }
     
 
     XmlNodeList measureTypeNodeList = xmlNode.SelectNodes("measureType");
     if (measureTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in measureTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 measureTypeIDRef = item.Attributes["id"].Name;
                 AssetMeasureType ob = AssetMeasureType();
                 IDManager.SetID(measureTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 measureTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 measureType = new AssetMeasureType(item);
             }
         }
     }
     
 
     XmlNodeList quoteUnitsNodeList = xmlNode.SelectNodes("quoteUnits");
     if (quoteUnitsNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in quoteUnitsNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 quoteUnitsIDRef = item.Attributes["id"].Name;
                 PriceQuoteUnits ob = PriceQuoteUnits();
                 IDManager.SetID(quoteUnitsIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 quoteUnitsIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 quoteUnits = new PriceQuoteUnits(item);
             }
         }
     }
     
 
     XmlNodeList sideNodeList = xmlNode.SelectNodes("side");
     if (sideNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in sideNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 sideIDRef = item.Attributes["id"].Name;
                 QuotationSideEnum ob = QuotationSideEnum();
                 IDManager.SetID(sideIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 sideIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 side = new QuotationSideEnum(item);
             }
         }
     }
     
 
     XmlNodeList currencyNodeList = xmlNode.SelectNodes("currency");
     if (currencyNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in currencyNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 currencyIDRef = item.Attributes["id"].Name;
                 Currency ob = Currency();
                 IDManager.SetID(currencyIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 currencyIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 currency = new Currency(item);
             }
         }
     }
     
 
     XmlNodeList currencyTypeNodeList = xmlNode.SelectNodes("currencyType");
     if (currencyTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in currencyTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 currencyTypeIDRef = item.Attributes["id"].Name;
                 ReportingCurrencyType ob = ReportingCurrencyType();
                 IDManager.SetID(currencyTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 currencyTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 currencyType = new ReportingCurrencyType(item);
             }
         }
     }
     
 
     XmlNodeList timingNodeList = xmlNode.SelectNodes("timing");
     if (timingNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in timingNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 timingIDRef = item.Attributes["id"].Name;
                 QuoteTiming ob = QuoteTiming();
                 IDManager.SetID(timingIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 timingIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 timing = new QuoteTiming(item);
             }
         }
     }
     
 
     XmlNodeList businessCenterNodeList = xmlNode.SelectNodes("businessCenter");
     if (businessCenterNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in businessCenterNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 businessCenterIDRef = item.Attributes["id"].Name;
                 BusinessCenter ob = BusinessCenter();
                 IDManager.SetID(businessCenterIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 businessCenterIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 businessCenter = new BusinessCenter(item);
             }
         }
     }
     
 
     XmlNodeList exchangeIdNodeList = xmlNode.SelectNodes("exchangeId");
     if (exchangeIdNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in exchangeIdNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 exchangeIdIDRef = item.Attributes["id"].Name;
                 ExchangeId ob = ExchangeId();
                 IDManager.SetID(exchangeIdIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 exchangeIdIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 exchangeId = new ExchangeId(item);
             }
         }
     }
     
 
     XmlNodeList informationSourceNodeList = xmlNode.SelectNodes("informationSource");
     
     foreach (XmlNode item in informationSourceNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 informationSourceIDRef = item.Attributes["id"].Name;
                 List<InformationSource> ob = new List<InformationSource>();
                 ob.Add(new InformationSource(item));
                 IDManager.SetID(informationSourceIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 informationSourceIDRef = item.Attributes["href"].Name;
             }
             else
             {
             informationSource.Add(new InformationSource(item));
             }
         }
     }
     
 
     XmlNodeList pricingModelNodeList = xmlNode.SelectNodes("pricingModel");
     if (pricingModelNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in pricingModelNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 pricingModelIDRef = item.Attributes["id"].Name;
                 PricingModel ob = PricingModel();
                 IDManager.SetID(pricingModelIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 pricingModelIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 pricingModel = new PricingModel(item);
             }
         }
     }
     
 
     XmlNodeList timeNodeList = xmlNode.SelectNodes("time");
     if (timeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in timeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 timeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(timeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 timeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 time = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList valuationDateNodeList = xmlNode.SelectNodes("valuationDate");
     if (valuationDateNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in valuationDateNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 valuationDateIDRef = item.Attributes["id"].Name;
                 XsdTypeDate ob = XsdTypeDate();
                 IDManager.SetID(valuationDateIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 valuationDateIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 valuationDate = new XsdTypeDate(item);
             }
         }
     }
     
 
     XmlNodeList expiryTimeNodeList = xmlNode.SelectNodes("expiryTime");
     if (expiryTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in expiryTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 expiryTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(expiryTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 expiryTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 expiryTime = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList cashflowTypeNodeList = xmlNode.SelectNodes("cashflowType");
     if (cashflowTypeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in cashflowTypeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 cashflowTypeIDRef = item.Attributes["id"].Name;
                 CashflowType ob = CashflowType();
                 IDManager.SetID(cashflowTypeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 cashflowTypeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 cashflowType = new CashflowType(item);
             }
         }
     }
     
 
 }
 public TradeProcessingTimestamps(XmlNode xmlNode)
 {
     XmlNodeList orderEnteredNodeList = xmlNode.SelectNodes("orderEntered");
     if (orderEnteredNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in orderEnteredNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 orderEnteredIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(orderEnteredIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 orderEnteredIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 orderEntered = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList orderSubmittedNodeList = xmlNode.SelectNodes("orderSubmitted");
     if (orderSubmittedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in orderSubmittedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 orderSubmittedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(orderSubmittedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 orderSubmittedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 orderSubmitted = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList publiclyReportedNodeList = xmlNode.SelectNodes("publiclyReported");
     if (publiclyReportedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in publiclyReportedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 publiclyReportedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(publiclyReportedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 publiclyReportedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 publiclyReported = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList publicReportUpdatedNodeList = xmlNode.SelectNodes("publicReportUpdated");
     if (publicReportUpdatedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in publicReportUpdatedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 publicReportUpdatedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(publicReportUpdatedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 publicReportUpdatedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 publicReportUpdated = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList nonpubliclyReportedNodeList = xmlNode.SelectNodes("nonpubliclyReported");
     if (nonpubliclyReportedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in nonpubliclyReportedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 nonpubliclyReportedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(nonpubliclyReportedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 nonpubliclyReportedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 nonpubliclyReported = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList nonpublicReportUpdatedNodeList = xmlNode.SelectNodes("nonpublicReportUpdated");
     if (nonpublicReportUpdatedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in nonpublicReportUpdatedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 nonpublicReportUpdatedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(nonpublicReportUpdatedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 nonpublicReportUpdatedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 nonpublicReportUpdated = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList submittedForConfirmationNodeList = xmlNode.SelectNodes("submittedForConfirmation");
     if (submittedForConfirmationNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in submittedForConfirmationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 submittedForConfirmationIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(submittedForConfirmationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 submittedForConfirmationIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 submittedForConfirmation = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList updatedForConfirmationNodeList = xmlNode.SelectNodes("updatedForConfirmation");
     if (updatedForConfirmationNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in updatedForConfirmationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 updatedForConfirmationIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(updatedForConfirmationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 updatedForConfirmationIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 updatedForConfirmation = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList confirmedNodeList = xmlNode.SelectNodes("confirmed");
     if (confirmedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in confirmedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 confirmedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(confirmedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 confirmedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 confirmed = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList submittedForClearingNodeList = xmlNode.SelectNodes("submittedForClearing");
     if (submittedForClearingNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in submittedForClearingNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 submittedForClearingIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(submittedForClearingIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 submittedForClearingIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 submittedForClearing = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList updatedForClearingNodeList = xmlNode.SelectNodes("updatedForClearing");
     if (updatedForClearingNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in updatedForClearingNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 updatedForClearingIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(updatedForClearingIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 updatedForClearingIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 updatedForClearing = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList clearedNodeList = xmlNode.SelectNodes("cleared");
     if (clearedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in clearedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 clearedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(clearedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 clearedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 cleared = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList allocationsSubmittedNodeList = xmlNode.SelectNodes("allocationsSubmitted");
     if (allocationsSubmittedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in allocationsSubmittedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 allocationsSubmittedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(allocationsSubmittedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 allocationsSubmittedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 allocationsSubmitted = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList allocationsUpdatedNodeList = xmlNode.SelectNodes("allocationsUpdated");
     if (allocationsUpdatedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in allocationsUpdatedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 allocationsUpdatedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(allocationsUpdatedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 allocationsUpdatedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 allocationsUpdated = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList allocationsCompletedNodeList = xmlNode.SelectNodes("allocationsCompleted");
     if (allocationsCompletedNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in allocationsCompletedNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 allocationsCompletedIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(allocationsCompletedIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 allocationsCompletedIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 allocationsCompleted = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList timestampNodeList = xmlNode.SelectNodes("timestamp");
     
     foreach (XmlNode item in timestampNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 timestampIDRef = item.Attributes["id"].Name;
                 List<TradeTimestamp> ob = new List<TradeTimestamp>();
                 ob.Add(new TradeTimestamp(item));
                 IDManager.SetID(timestampIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 timestampIDRef = item.Attributes["href"].Name;
             }
             else
             {
             timestamp.Add(new TradeTimestamp(item));
             }
         }
     }
     
 
 }
 public ClearingStatusItem(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<TradeIdentifier> ob = new List<TradeIdentifier>();
                 ob.Add(new TradeIdentifier(item));
                 IDManager.SetID(tradeIdentifierIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 tradeIdentifierIDRef = item.Attributes["href"].Name;
             }
             else
             {
             tradeIdentifier.Add(new TradeIdentifier(item));
             }
         }
     }
     
 
     XmlNodeList tradeReferenceInformationNodeList = xmlNode.SelectNodes("tradeReferenceInformation");
     if (tradeReferenceInformationNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in tradeReferenceInformationNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 tradeReferenceInformationIDRef = item.Attributes["id"].Name;
                 TradeReferenceInformation ob = TradeReferenceInformation();
                 IDManager.SetID(tradeReferenceInformationIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 tradeReferenceInformationIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 tradeReferenceInformation = new TradeReferenceInformation(item);
             }
         }
     }
     
 
     XmlNodeList tradeNodeList = xmlNode.SelectNodes("trade");
     if (tradeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in tradeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 tradeIDRef = item.Attributes["id"].Name;
                 Trade ob = Trade();
                 IDManager.SetID(tradeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 tradeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 trade = new Trade(item);
             }
         }
     }
     
 
     XmlNodeList clearingStatusValueNodeList = xmlNode.SelectNodes("clearingStatusValue");
     if (clearingStatusValueNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in clearingStatusValueNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 clearingStatusValueIDRef = item.Attributes["id"].Name;
                 ClearingStatusValue ob = ClearingStatusValue();
                 IDManager.SetID(clearingStatusValueIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 clearingStatusValueIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 clearingStatusValue = new ClearingStatusValue(item);
             }
         }
     }
     
 
     XmlNodeList updatedDateTimeNodeList = xmlNode.SelectNodes("updatedDateTime");
     if (updatedDateTimeNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in updatedDateTimeNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 updatedDateTimeIDRef = item.Attributes["id"].Name;
                 XsdTypeDateTime ob = XsdTypeDateTime();
                 IDManager.SetID(updatedDateTimeIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 updatedDateTimeIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 updatedDateTime = new XsdTypeDateTime(item);
             }
         }
     }
     
 
     XmlNodeList reasonNodeList = xmlNode.SelectNodes("reason");
     
     foreach (XmlNode item in reasonNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 reasonIDRef = item.Attributes["id"].Name;
                 List<Reason> ob = new List<Reason>();
                 ob.Add(new Reason(item));
                 IDManager.SetID(reasonIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 reasonIDRef = item.Attributes["href"].Name;
             }
             else
             {
             reason.Add(new Reason(item));
             }
         }
     }
     
 
     XmlNodeList statusAppliesToNodeList = xmlNode.SelectNodes("statusAppliesTo");
     
     foreach (XmlNode item in statusAppliesToNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 statusAppliesToIDRef = item.Attributes["id"].Name;
                 List<PartyReference> ob = new List<PartyReference>();
                 ob.Add(new PartyReference(item));
                 IDManager.SetID(statusAppliesToIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 statusAppliesToIDRef = item.Attributes["href"].Name;
             }
             else
             {
             statusAppliesTo.Add(new PartyReference(item));
             }
         }
     }
     
 
 }