public MaturityNotification(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode optionExpiryNode = xmlNode.SelectSingleNode("optionExpiry");
     
     if (optionExpiryNode != null)
     {
         if (optionExpiryNode.Attributes["href"] != null || optionExpiryNode.Attributes["id"] != null) 
         {
             if (optionExpiryNode.Attributes["id"] != null) 
             {
                 optionExpiryIDRef_ = optionExpiryNode.Attributes["id"].Value;
                 OptionExpiryBase ob = new OptionExpiryBase(optionExpiryNode);
                 IDManager.SetID(optionExpiryIDRef_, ob);
             }
             else if (optionExpiryNode.Attributes["href"] != null)
             {
                 optionExpiryIDRef_ = optionExpiryNode.Attributes["href"].Value;
             }
             else
             {
                 optionExpiry_ = new OptionExpiryBase(optionExpiryNode);
             }
         }
         else
         {
             optionExpiry_ = new OptionExpiryBase(optionExpiryNode);
         }
     }
     
 
     XmlNode tradeMaturityNode = xmlNode.SelectSingleNode("tradeMaturity");
     
     if (tradeMaturityNode != null)
     {
         if (tradeMaturityNode.Attributes["href"] != null || tradeMaturityNode.Attributes["id"] != null) 
         {
             if (tradeMaturityNode.Attributes["id"] != null) 
             {
                 tradeMaturityIDRef_ = tradeMaturityNode.Attributes["id"].Value;
                 TradeMaturity ob = new TradeMaturity(tradeMaturityNode);
                 IDManager.SetID(tradeMaturityIDRef_, ob);
             }
             else if (tradeMaturityNode.Attributes["href"] != null)
             {
                 tradeMaturityIDRef_ = tradeMaturityNode.Attributes["href"].Value;
             }
             else
             {
                 tradeMaturity_ = new TradeMaturity(tradeMaturityNode);
             }
         }
         else
         {
             tradeMaturity_ = new TradeMaturity(tradeMaturityNode);
         }
     }
     
 
     XmlNodeList partyNodeList = xmlNode.SelectNodes("party");
     
     if (partyNodeList != null)
     {
         this.party_ = new List<Party>();
         foreach (XmlNode item in partyNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     partyIDRef_ = item.Attributes["id"].Value;
                     party_.Add(new Party(item));
                     IDManager.SetID(partyIDRef_, party_[party_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     partyIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 party_.Add(new Party(item));
                 }
             }
             else
             {
                 party_.Add(new Party(item));
             }
         }
     }
     
 
     XmlNodeList accountNodeList = xmlNode.SelectNodes("account");
     
     if (accountNodeList != null)
     {
         this.account_ = new List<Account>();
         foreach (XmlNode item in accountNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     accountIDRef_ = item.Attributes["id"].Value;
                     account_.Add(new Account(item));
                     IDManager.SetID(accountIDRef_, account_[account_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     accountIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 account_.Add(new Account(item));
                 }
             }
             else
             {
                 account_.Add(new Account(item));
             }
         }
     }
     
 
 }
        public MaturityNotification(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode optionExpiryNode = xmlNode.SelectSingleNode("optionExpiry");

            if (optionExpiryNode != null)
            {
                if (optionExpiryNode.Attributes["href"] != null || optionExpiryNode.Attributes["id"] != null)
                {
                    if (optionExpiryNode.Attributes["id"] != null)
                    {
                        optionExpiryIDRef_ = optionExpiryNode.Attributes["id"].Value;
                        OptionExpiryBase ob = new OptionExpiryBase(optionExpiryNode);
                        IDManager.SetID(optionExpiryIDRef_, ob);
                    }
                    else if (optionExpiryNode.Attributes["href"] != null)
                    {
                        optionExpiryIDRef_ = optionExpiryNode.Attributes["href"].Value;
                    }
                    else
                    {
                        optionExpiry_ = new OptionExpiryBase(optionExpiryNode);
                    }
                }
                else
                {
                    optionExpiry_ = new OptionExpiryBase(optionExpiryNode);
                }
            }


            XmlNode tradeMaturityNode = xmlNode.SelectSingleNode("tradeMaturity");

            if (tradeMaturityNode != null)
            {
                if (tradeMaturityNode.Attributes["href"] != null || tradeMaturityNode.Attributes["id"] != null)
                {
                    if (tradeMaturityNode.Attributes["id"] != null)
                    {
                        tradeMaturityIDRef_ = tradeMaturityNode.Attributes["id"].Value;
                        TradeMaturity ob = new TradeMaturity(tradeMaturityNode);
                        IDManager.SetID(tradeMaturityIDRef_, ob);
                    }
                    else if (tradeMaturityNode.Attributes["href"] != null)
                    {
                        tradeMaturityIDRef_ = tradeMaturityNode.Attributes["href"].Value;
                    }
                    else
                    {
                        tradeMaturity_ = new TradeMaturity(tradeMaturityNode);
                    }
                }
                else
                {
                    tradeMaturity_ = new TradeMaturity(tradeMaturityNode);
                }
            }


            XmlNodeList partyNodeList = xmlNode.SelectNodes("party");

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


            XmlNodeList accountNodeList = xmlNode.SelectNodes("account");

            if (accountNodeList != null)
            {
                this.account_ = new List <Account>();
                foreach (XmlNode item in accountNodeList)
                {
                    if (item.Attributes["href"] != null || item.Attributes["id"] != null)
                    {
                        if (item.Attributes["id"] != null)
                        {
                            accountIDRef_ = item.Attributes["id"].Value;
                            account_.Add(new Account(item));
                            IDManager.SetID(accountIDRef_, account_[account_.Count - 1]);
                        }
                        else if (item.Attributes["href"] != null)
                        {
                            accountIDRef_ = item.Attributes["href"].Value;
                        }
                        else
                        {
                            account_.Add(new Account(item));
                        }
                    }
                    else
                    {
                        account_.Add(new Account(item));
                    }
                }
            }
        }
 public MaturityNotification(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList optionExpiryNodeList = xmlNode.SelectNodes("optionExpiry");
     if (optionExpiryNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in optionExpiryNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 optionExpiryIDRef = item.Attributes["id"].Name;
                 OptionExpiryBase ob = OptionExpiryBase();
                 IDManager.SetID(optionExpiryIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 optionExpiryIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 optionExpiry = new OptionExpiryBase(item);
             }
         }
     }
     
 
     XmlNodeList tradeMaturityNodeList = xmlNode.SelectNodes("tradeMaturity");
     if (tradeMaturityNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in tradeMaturityNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 tradeMaturityIDRef = item.Attributes["id"].Name;
                 TradeMaturity ob = TradeMaturity();
                 IDManager.SetID(tradeMaturityIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 tradeMaturityIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 tradeMaturity = new TradeMaturity(item);
             }
         }
     }
     
 
     XmlNodeList partyNodeList = xmlNode.SelectNodes("party");
     
     foreach (XmlNode item in partyNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 partyIDRef = item.Attributes["id"].Name;
                 List<Party> ob = new List<Party>();
                 ob.Add(new Party(item));
                 IDManager.SetID(partyIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 partyIDRef = item.Attributes["href"].Name;
             }
             else
             {
             party.Add(new Party(item));
             }
         }
     }
     
 
     XmlNodeList accountNodeList = xmlNode.SelectNodes("account");
     
     foreach (XmlNode item in accountNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 accountIDRef = item.Attributes["id"].Name;
                 List<Account> ob = new List<Account>();
                 ob.Add(new Account(item));
                 IDManager.SetID(accountIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 accountIDRef = item.Attributes["href"].Name;
             }
             else
             {
             account.Add(new Account(item));
             }
         }
     }
     
 
 }
        public MaturityNotification(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList optionExpiryNodeList = xmlNode.SelectNodes("optionExpiry");

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

            foreach (XmlNode item in optionExpiryNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        optionExpiryIDRef = item.Attributes["id"].Name;
                        OptionExpiryBase ob = OptionExpiryBase();
                        IDManager.SetID(optionExpiryIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        optionExpiryIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        optionExpiry = new OptionExpiryBase(item);
                    }
                }
            }


            XmlNodeList tradeMaturityNodeList = xmlNode.SelectNodes("tradeMaturity");

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

            foreach (XmlNode item in tradeMaturityNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        tradeMaturityIDRef = item.Attributes["id"].Name;
                        TradeMaturity ob = TradeMaturity();
                        IDManager.SetID(tradeMaturityIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        tradeMaturityIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        tradeMaturity = new TradeMaturity(item);
                    }
                }
            }


            XmlNodeList partyNodeList = xmlNode.SelectNodes("party");

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


            XmlNodeList accountNodeList = xmlNode.SelectNodes("account");

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