public ContactInformation(XmlNode xmlNode)
 {
     XmlNodeList telephoneNodeList = xmlNode.SelectNodes("telephone");
     
     foreach (XmlNode item in telephoneNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 telephoneIDRef = item.Attributes["id"].Name;
                 List<TelephoneNumber> ob = new List<TelephoneNumber>();
                 ob.Add(new TelephoneNumber(item));
                 IDManager.SetID(telephoneIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 telephoneIDRef = item.Attributes["href"].Name;
             }
             else
             {
             telephone.Add(new TelephoneNumber(item));
             }
         }
     }
     
 
     XmlNodeList emailNodeList = xmlNode.SelectNodes("email");
     
     foreach (XmlNode item in emailNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 emailIDRef = item.Attributes["id"].Name;
                 XsdTypeNormalizedString ob = new XsdTypeNormalizedString();
                 ob.Add(new XsdTypeNormalizedString(item));
                 IDManager.SetID(emailIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 emailIDRef = item.Attributes["href"].Name;
             }
             else
             {
             email.Add(new XsdTypeNormalizedString(item));
             }
         }
     }
     
 
     XmlNodeList addressNodeList = xmlNode.SelectNodes("address");
     if (addressNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in addressNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 addressIDRef = item.Attributes["id"].Name;
                 Address ob = Address();
                 IDManager.SetID(addressIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 addressIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 address = new Address(item);
             }
         }
     }
     
 
 }
 public ContactInformation(XmlNode xmlNode)
 {
     XmlNodeList telephoneNodeList = xmlNode.SelectNodes("telephone");
     
     if (telephoneNodeList != null)
     {
         this.telephone_ = new List<TelephoneNumber>();
         foreach (XmlNode item in telephoneNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     telephoneIDRef_ = item.Attributes["id"].Value;
                     telephone_.Add(new TelephoneNumber(item));
                     IDManager.SetID(telephoneIDRef_, telephone_[telephone_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     telephoneIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 telephone_.Add(new TelephoneNumber(item));
                 }
             }
             else
             {
                 telephone_.Add(new TelephoneNumber(item));
             }
         }
     }
     
 
     XmlNodeList emailNodeList = xmlNode.SelectNodes("email");
     
     if (emailNodeList != null)
     {
         this.email_ = new List<XsdTypeNormalizedString>();
         foreach (XmlNode item in emailNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     emailIDRef_ = item.Attributes["id"].Value;
                     email_.Add(new XsdTypeNormalizedString(item));
                     IDManager.SetID(emailIDRef_, email_[email_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     emailIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 email_.Add(new XsdTypeNormalizedString(item));
                 }
             }
             else
             {
                 email_.Add(new XsdTypeNormalizedString(item));
             }
         }
     }
     
 
     XmlNode addressNode = xmlNode.SelectSingleNode("address");
     
     if (addressNode != null)
     {
         if (addressNode.Attributes["href"] != null || addressNode.Attributes["id"] != null) 
         {
             if (addressNode.Attributes["id"] != null) 
             {
                 addressIDRef_ = addressNode.Attributes["id"].Value;
                 Address ob = new Address(addressNode);
                 IDManager.SetID(addressIDRef_, ob);
             }
             else if (addressNode.Attributes["href"] != null)
             {
                 addressIDRef_ = addressNode.Attributes["href"].Value;
             }
             else
             {
                 address_ = new Address(addressNode);
             }
         }
         else
         {
             address_ = new Address(addressNode);
         }
     }
     
 
 }
 public RoutingIdsAndExplicitDetails(XmlNode xmlNode)
 {
     XmlNodeList routingIdsNodeList = xmlNode.SelectNodes("routingIds");
     
     if (routingIdsNodeList != null)
     {
         this.routingIds_ = new List<RoutingIds>();
         foreach (XmlNode item in routingIdsNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     routingIdsIDRef_ = item.Attributes["id"].Value;
                     routingIds_.Add(new RoutingIds(item));
                     IDManager.SetID(routingIdsIDRef_, routingIds_[routingIds_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     routingIdsIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 routingIds_.Add(new RoutingIds(item));
                 }
             }
             else
             {
                 routingIds_.Add(new RoutingIds(item));
             }
         }
     }
     
 
     XmlNode routingNameNode = xmlNode.SelectSingleNode("routingName");
     
     if (routingNameNode != null)
     {
         if (routingNameNode.Attributes["href"] != null || routingNameNode.Attributes["id"] != null) 
         {
             if (routingNameNode.Attributes["id"] != null) 
             {
                 routingNameIDRef_ = routingNameNode.Attributes["id"].Value;
                 XsdTypeString ob = new XsdTypeString(routingNameNode);
                 IDManager.SetID(routingNameIDRef_, ob);
             }
             else if (routingNameNode.Attributes["href"] != null)
             {
                 routingNameIDRef_ = routingNameNode.Attributes["href"].Value;
             }
             else
             {
                 routingName_ = new XsdTypeString(routingNameNode);
             }
         }
         else
         {
             routingName_ = new XsdTypeString(routingNameNode);
         }
     }
     
 
     XmlNode routingAddressNode = xmlNode.SelectSingleNode("routingAddress");
     
     if (routingAddressNode != null)
     {
         if (routingAddressNode.Attributes["href"] != null || routingAddressNode.Attributes["id"] != null) 
         {
             if (routingAddressNode.Attributes["id"] != null) 
             {
                 routingAddressIDRef_ = routingAddressNode.Attributes["id"].Value;
                 Address ob = new Address(routingAddressNode);
                 IDManager.SetID(routingAddressIDRef_, ob);
             }
             else if (routingAddressNode.Attributes["href"] != null)
             {
                 routingAddressIDRef_ = routingAddressNode.Attributes["href"].Value;
             }
             else
             {
                 routingAddress_ = new Address(routingAddressNode);
             }
         }
         else
         {
             routingAddress_ = new Address(routingAddressNode);
         }
     }
     
 
     XmlNode routingAccountNumberNode = xmlNode.SelectSingleNode("routingAccountNumber");
     
     if (routingAccountNumberNode != null)
     {
         if (routingAccountNumberNode.Attributes["href"] != null || routingAccountNumberNode.Attributes["id"] != null) 
         {
             if (routingAccountNumberNode.Attributes["id"] != null) 
             {
                 routingAccountNumberIDRef_ = routingAccountNumberNode.Attributes["id"].Value;
                 XsdTypeString ob = new XsdTypeString(routingAccountNumberNode);
                 IDManager.SetID(routingAccountNumberIDRef_, ob);
             }
             else if (routingAccountNumberNode.Attributes["href"] != null)
             {
                 routingAccountNumberIDRef_ = routingAccountNumberNode.Attributes["href"].Value;
             }
             else
             {
                 routingAccountNumber_ = new XsdTypeString(routingAccountNumberNode);
             }
         }
         else
         {
             routingAccountNumber_ = new XsdTypeString(routingAccountNumberNode);
         }
     }
     
 
     XmlNodeList routingReferenceTextNodeList = xmlNode.SelectNodes("routingReferenceText");
     
     if (routingReferenceTextNodeList != null)
     {
         this.routingReferenceText_ = new List<XsdTypeString>();
         foreach (XmlNode item in routingReferenceTextNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     routingReferenceTextIDRef_ = item.Attributes["id"].Value;
                     routingReferenceText_.Add(new XsdTypeString(item));
                     IDManager.SetID(routingReferenceTextIDRef_, routingReferenceText_[routingReferenceText_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     routingReferenceTextIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 routingReferenceText_.Add(new XsdTypeString(item));
                 }
             }
             else
             {
                 routingReferenceText_.Add(new XsdTypeString(item));
             }
         }
     }
     
 
 }
 public RoutingIdsAndExplicitDetails(XmlNode xmlNode)
 {
     XmlNodeList routingIdsNodeList = xmlNode.SelectNodes("routingIds");
     
     foreach (XmlNode item in routingIdsNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 routingIdsIDRef = item.Attributes["id"].Name;
                 List<RoutingIds> ob = new List<RoutingIds>();
                 ob.Add(new RoutingIds(item));
                 IDManager.SetID(routingIdsIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 routingIdsIDRef = item.Attributes["href"].Name;
             }
             else
             {
             routingIds.Add(new RoutingIds(item));
             }
         }
     }
     
 
     XmlNodeList routingNameNodeList = xmlNode.SelectNodes("routingName");
     if (routingNameNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in routingNameNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 routingNameIDRef = item.Attributes["id"].Name;
                 XsdTypeString ob = XsdTypeString();
                 IDManager.SetID(routingNameIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 routingNameIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 routingName = new XsdTypeString(item);
             }
         }
     }
     
 
     XmlNodeList routingAddressNodeList = xmlNode.SelectNodes("routingAddress");
     if (routingAddressNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in routingAddressNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 routingAddressIDRef = item.Attributes["id"].Name;
                 Address ob = Address();
                 IDManager.SetID(routingAddressIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 routingAddressIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 routingAddress = new Address(item);
             }
         }
     }
     
 
     XmlNodeList routingAccountNumberNodeList = xmlNode.SelectNodes("routingAccountNumber");
     if (routingAccountNumberNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in routingAccountNumberNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 routingAccountNumberIDRef = item.Attributes["id"].Name;
                 XsdTypeString ob = XsdTypeString();
                 IDManager.SetID(routingAccountNumberIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 routingAccountNumberIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 routingAccountNumber = new XsdTypeString(item);
             }
         }
     }
     
 
     XmlNodeList routingReferenceTextNodeList = xmlNode.SelectNodes("routingReferenceText");
     
     foreach (XmlNode item in routingReferenceTextNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 routingReferenceTextIDRef = item.Attributes["id"].Name;
                 XsdTypeString ob = new XsdTypeString();
                 ob.Add(new XsdTypeString(item));
                 IDManager.SetID(routingReferenceTextIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 routingReferenceTextIDRef = item.Attributes["href"].Name;
             }
             else
             {
             routingReferenceText.Add(new XsdTypeString(item));
             }
         }
     }
     
 
 }