public Index(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode typeNode = xmlNode.SelectSingleNode("type");
     
     if (typeNode != null)
     {
         if (typeNode.Attributes["href"] != null || typeNode.Attributes["id"] != null) 
         {
             if (typeNode.Attributes["id"] != null) 
             {
                 typeIDRef_ = typeNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(typeNode);
                 IDManager.SetID(typeIDRef_, ob);
             }
             else if (typeNode.Attributes["href"] != null)
             {
                 typeIDRef_ = typeNode.Attributes["href"].Value;
             }
             else
             {
                 type_ = new XsdTypeToken(typeNode);
             }
         }
         else
         {
             type_ = new XsdTypeToken(typeNode);
         }
     }
     
 
     XmlNode krCodeNode = xmlNode.SelectSingleNode("krCode");
     
     if (krCodeNode != null)
     {
         if (krCodeNode.Attributes["href"] != null || krCodeNode.Attributes["id"] != null) 
         {
             if (krCodeNode.Attributes["id"] != null) 
             {
                 krCodeIDRef_ = krCodeNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(krCodeNode);
                 IDManager.SetID(krCodeIDRef_, ob);
             }
             else if (krCodeNode.Attributes["href"] != null)
             {
                 krCodeIDRef_ = krCodeNode.Attributes["href"].Value;
             }
             else
             {
                 krCode_ = new XsdTypeToken(krCodeNode);
             }
         }
         else
         {
             krCode_ = new XsdTypeToken(krCodeNode);
         }
     }
     
 
     XmlNode nameNode = xmlNode.SelectSingleNode("name");
     
     if (nameNode != null)
     {
         if (nameNode.Attributes["href"] != null || nameNode.Attributes["id"] != null) 
         {
             if (nameNode.Attributes["id"] != null) 
             {
                 nameIDRef_ = nameNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(nameNode);
                 IDManager.SetID(nameIDRef_, ob);
             }
             else if (nameNode.Attributes["href"] != null)
             {
                 nameIDRef_ = nameNode.Attributes["href"].Value;
             }
             else
             {
                 name_ = new XsdTypeToken(nameNode);
             }
         }
         else
         {
             name_ = new XsdTypeToken(nameNode);
         }
     }
     
 
     XmlNode basePriceNode = xmlNode.SelectSingleNode("basePrice");
     
     if (basePriceNode != null)
     {
         if (basePriceNode.Attributes["href"] != null || basePriceNode.Attributes["id"] != null) 
         {
             if (basePriceNode.Attributes["id"] != null) 
             {
                 basePriceIDRef_ = basePriceNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(basePriceNode);
                 IDManager.SetID(basePriceIDRef_, ob);
             }
             else if (basePriceNode.Attributes["href"] != null)
             {
                 basePriceIDRef_ = basePriceNode.Attributes["href"].Value;
             }
             else
             {
                 basePrice_ = new XsdTypeToken(basePriceNode);
             }
         }
         else
         {
             basePrice_ = new XsdTypeToken(basePriceNode);
         }
     }
     
 
     XmlNode interestRateIndexNode = xmlNode.SelectSingleNode("interestRateIndex");
     
     if (interestRateIndexNode != null)
     {
         if (interestRateIndexNode.Attributes["href"] != null || interestRateIndexNode.Attributes["id"] != null) 
         {
             if (interestRateIndexNode.Attributes["id"] != null) 
             {
                 interestRateIndexIDRef_ = interestRateIndexNode.Attributes["id"].Value;
                 InterestRateIndex ob = new InterestRateIndex(interestRateIndexNode);
                 IDManager.SetID(interestRateIndexIDRef_, ob);
             }
             else if (interestRateIndexNode.Attributes["href"] != null)
             {
                 interestRateIndexIDRef_ = interestRateIndexNode.Attributes["href"].Value;
             }
             else
             {
                 interestRateIndex_ = new InterestRateIndex(interestRateIndexNode);
             }
         }
         else
         {
             interestRateIndex_ = new InterestRateIndex(interestRateIndexNode);
         }
     }
     
 
     XmlNode stockIndexNode = xmlNode.SelectSingleNode("stockIndex");
     
     if (stockIndexNode != null)
     {
         if (stockIndexNode.Attributes["href"] != null || stockIndexNode.Attributes["id"] != null) 
         {
             if (stockIndexNode.Attributes["id"] != null) 
             {
                 stockIndexIDRef_ = stockIndexNode.Attributes["id"].Value;
                 StockIndex ob = new StockIndex(stockIndexNode);
                 IDManager.SetID(stockIndexIDRef_, ob);
             }
             else if (stockIndexNode.Attributes["href"] != null)
             {
                 stockIndexIDRef_ = stockIndexNode.Attributes["href"].Value;
             }
             else
             {
                 stockIndex_ = new StockIndex(stockIndexNode);
             }
         }
         else
         {
             stockIndex_ = new StockIndex(stockIndexNode);
         }
     }
     
 
 }
        public Index(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode typeNode = xmlNode.SelectSingleNode("type");

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


            XmlNode krCodeNode = xmlNode.SelectSingleNode("krCode");

            if (krCodeNode != null)
            {
                if (krCodeNode.Attributes["href"] != null || krCodeNode.Attributes["id"] != null)
                {
                    if (krCodeNode.Attributes["id"] != null)
                    {
                        krCodeIDRef_ = krCodeNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(krCodeNode);
                        IDManager.SetID(krCodeIDRef_, ob);
                    }
                    else if (krCodeNode.Attributes["href"] != null)
                    {
                        krCodeIDRef_ = krCodeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        krCode_ = new XsdTypeToken(krCodeNode);
                    }
                }
                else
                {
                    krCode_ = new XsdTypeToken(krCodeNode);
                }
            }


            XmlNode nameNode = xmlNode.SelectSingleNode("name");

            if (nameNode != null)
            {
                if (nameNode.Attributes["href"] != null || nameNode.Attributes["id"] != null)
                {
                    if (nameNode.Attributes["id"] != null)
                    {
                        nameIDRef_ = nameNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(nameNode);
                        IDManager.SetID(nameIDRef_, ob);
                    }
                    else if (nameNode.Attributes["href"] != null)
                    {
                        nameIDRef_ = nameNode.Attributes["href"].Value;
                    }
                    else
                    {
                        name_ = new XsdTypeToken(nameNode);
                    }
                }
                else
                {
                    name_ = new XsdTypeToken(nameNode);
                }
            }


            XmlNode basePriceNode = xmlNode.SelectSingleNode("basePrice");

            if (basePriceNode != null)
            {
                if (basePriceNode.Attributes["href"] != null || basePriceNode.Attributes["id"] != null)
                {
                    if (basePriceNode.Attributes["id"] != null)
                    {
                        basePriceIDRef_ = basePriceNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(basePriceNode);
                        IDManager.SetID(basePriceIDRef_, ob);
                    }
                    else if (basePriceNode.Attributes["href"] != null)
                    {
                        basePriceIDRef_ = basePriceNode.Attributes["href"].Value;
                    }
                    else
                    {
                        basePrice_ = new XsdTypeToken(basePriceNode);
                    }
                }
                else
                {
                    basePrice_ = new XsdTypeToken(basePriceNode);
                }
            }


            XmlNode interestRateIndexNode = xmlNode.SelectSingleNode("interestRateIndex");

            if (interestRateIndexNode != null)
            {
                if (interestRateIndexNode.Attributes["href"] != null || interestRateIndexNode.Attributes["id"] != null)
                {
                    if (interestRateIndexNode.Attributes["id"] != null)
                    {
                        interestRateIndexIDRef_ = interestRateIndexNode.Attributes["id"].Value;
                        InterestRateIndex ob = new InterestRateIndex(interestRateIndexNode);
                        IDManager.SetID(interestRateIndexIDRef_, ob);
                    }
                    else if (interestRateIndexNode.Attributes["href"] != null)
                    {
                        interestRateIndexIDRef_ = interestRateIndexNode.Attributes["href"].Value;
                    }
                    else
                    {
                        interestRateIndex_ = new InterestRateIndex(interestRateIndexNode);
                    }
                }
                else
                {
                    interestRateIndex_ = new InterestRateIndex(interestRateIndexNode);
                }
            }


            XmlNode stockIndexNode = xmlNode.SelectSingleNode("stockIndex");

            if (stockIndexNode != null)
            {
                if (stockIndexNode.Attributes["href"] != null || stockIndexNode.Attributes["id"] != null)
                {
                    if (stockIndexNode.Attributes["id"] != null)
                    {
                        stockIndexIDRef_ = stockIndexNode.Attributes["id"].Value;
                        StockIndex ob = new StockIndex(stockIndexNode);
                        IDManager.SetID(stockIndexIDRef_, ob);
                    }
                    else if (stockIndexNode.Attributes["href"] != null)
                    {
                        stockIndexIDRef_ = stockIndexNode.Attributes["href"].Value;
                    }
                    else
                    {
                        stockIndex_ = new StockIndex(stockIndexNode);
                    }
                }
                else
                {
                    stockIndex_ = new StockIndex(stockIndexNode);
                }
            }
        }