public Excel_interface(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode excel_typeNode = xmlNode.SelectSingleNode("excel_type");

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


            XmlNode excel_hifiveNode = xmlNode.SelectSingleNode("excel_hifive");

            if (excel_hifiveNode != null)
            {
                if (excel_hifiveNode.Attributes["href"] != null || excel_hifiveNode.Attributes["id"] != null)
                {
                    if (excel_hifiveNode.Attributes["id"] != null)
                    {
                        excel_hifiveIDRef_ = excel_hifiveNode.Attributes["id"].Value;
                        Excel_hifive ob = new Excel_hifive(excel_hifiveNode);
                        IDManager.SetID(excel_hifiveIDRef_, ob);
                    }
                    else if (excel_hifiveNode.Attributes["href"] != null)
                    {
                        excel_hifiveIDRef_ = excel_hifiveNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_hifive_ = new Excel_hifive(excel_hifiveNode);
                    }
                }
                else
                {
                    excel_hifive_ = new Excel_hifive(excel_hifiveNode);
                }
            }


            XmlNode excel_stepDownKICustomNode = xmlNode.SelectSingleNode("excel_stepDownKICustom");

            if (excel_stepDownKICustomNode != null)
            {
                if (excel_stepDownKICustomNode.Attributes["href"] != null || excel_stepDownKICustomNode.Attributes["id"] != null)
                {
                    if (excel_stepDownKICustomNode.Attributes["id"] != null)
                    {
                        excel_stepDownKICustomIDRef_ = excel_stepDownKICustomNode.Attributes["id"].Value;
                        Excel_stepDownKICustom ob = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
                        IDManager.SetID(excel_stepDownKICustomIDRef_, ob);
                    }
                    else if (excel_stepDownKICustomNode.Attributes["href"] != null)
                    {
                        excel_stepDownKICustomIDRef_ = excel_stepDownKICustomNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_stepDownKICustom_ = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
                    }
                }
                else
                {
                    excel_stepDownKICustom_ = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
                }
            }


            XmlNode excel_compositeOptionNode = xmlNode.SelectSingleNode("excel_compositeOption");

            if (excel_compositeOptionNode != null)
            {
                if (excel_compositeOptionNode.Attributes["href"] != null || excel_compositeOptionNode.Attributes["id"] != null)
                {
                    if (excel_compositeOptionNode.Attributes["id"] != null)
                    {
                        excel_compositeOptionIDRef_ = excel_compositeOptionNode.Attributes["id"].Value;
                        Excel_compositeOption ob = new Excel_compositeOption(excel_compositeOptionNode);
                        IDManager.SetID(excel_compositeOptionIDRef_, ob);
                    }
                    else if (excel_compositeOptionNode.Attributes["href"] != null)
                    {
                        excel_compositeOptionIDRef_ = excel_compositeOptionNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_compositeOption_ = new Excel_compositeOption(excel_compositeOptionNode);
                    }
                }
                else
                {
                    excel_compositeOption_ = new Excel_compositeOption(excel_compositeOptionNode);
                }
            }


            XmlNode excel_generalNode = xmlNode.SelectSingleNode("excel_general");

            if (excel_generalNode != null)
            {
                if (excel_generalNode.Attributes["href"] != null || excel_generalNode.Attributes["id"] != null)
                {
                    if (excel_generalNode.Attributes["id"] != null)
                    {
                        excel_generalIDRef_ = excel_generalNode.Attributes["id"].Value;
                        Excel_general ob = new Excel_general(excel_generalNode);
                        IDManager.SetID(excel_generalIDRef_, ob);
                    }
                    else if (excel_generalNode.Attributes["href"] != null)
                    {
                        excel_generalIDRef_ = excel_generalNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_general_ = new Excel_general(excel_generalNode);
                    }
                }
                else
                {
                    excel_general_ = new Excel_general(excel_generalNode);
                }
            }


            XmlNode excel_fixedBondNode = xmlNode.SelectSingleNode("excel_fixedBond");

            if (excel_fixedBondNode != null)
            {
                if (excel_fixedBondNode.Attributes["href"] != null || excel_fixedBondNode.Attributes["id"] != null)
                {
                    if (excel_fixedBondNode.Attributes["id"] != null)
                    {
                        excel_fixedBondIDRef_ = excel_fixedBondNode.Attributes["id"].Value;
                        Excel_fixedBond ob = new Excel_fixedBond(excel_fixedBondNode);
                        IDManager.SetID(excel_fixedBondIDRef_, ob);
                    }
                    else if (excel_fixedBondNode.Attributes["href"] != null)
                    {
                        excel_fixedBondIDRef_ = excel_fixedBondNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_fixedBond_ = new Excel_fixedBond(excel_fixedBondNode);
                    }
                }
                else
                {
                    excel_fixedBond_ = new Excel_fixedBond(excel_fixedBondNode);
                }
            }


            XmlNode excel_vanillaFloatingBondNode = xmlNode.SelectSingleNode("excel_vanillaFloatingBond");

            if (excel_vanillaFloatingBondNode != null)
            {
                if (excel_vanillaFloatingBondNode.Attributes["href"] != null || excel_vanillaFloatingBondNode.Attributes["id"] != null)
                {
                    if (excel_vanillaFloatingBondNode.Attributes["id"] != null)
                    {
                        excel_vanillaFloatingBondIDRef_ = excel_vanillaFloatingBondNode.Attributes["id"].Value;
                        Excel_vanillaFloatingBond ob = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
                        IDManager.SetID(excel_vanillaFloatingBondIDRef_, ob);
                    }
                    else if (excel_vanillaFloatingBondNode.Attributes["href"] != null)
                    {
                        excel_vanillaFloatingBondIDRef_ = excel_vanillaFloatingBondNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_vanillaFloatingBond_ = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
                    }
                }
                else
                {
                    excel_vanillaFloatingBond_ = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
                }
            }


            XmlNode excel_structuredBondNode = xmlNode.SelectSingleNode("excel_structuredBond");

            if (excel_structuredBondNode != null)
            {
                if (excel_structuredBondNode.Attributes["href"] != null || excel_structuredBondNode.Attributes["id"] != null)
                {
                    if (excel_structuredBondNode.Attributes["id"] != null)
                    {
                        excel_structuredBondIDRef_ = excel_structuredBondNode.Attributes["id"].Value;
                        Excel_structuredBond ob = new Excel_structuredBond(excel_structuredBondNode);
                        IDManager.SetID(excel_structuredBondIDRef_, ob);
                    }
                    else if (excel_structuredBondNode.Attributes["href"] != null)
                    {
                        excel_structuredBondIDRef_ = excel_structuredBondNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_structuredBond_ = new Excel_structuredBond(excel_structuredBondNode);
                    }
                }
                else
                {
                    excel_structuredBond_ = new Excel_structuredBond(excel_structuredBondNode);
                }
            }


            XmlNode excel_fxForwardNode = xmlNode.SelectSingleNode("excel_fxForward");

            if (excel_fxForwardNode != null)
            {
                if (excel_fxForwardNode.Attributes["href"] != null || excel_fxForwardNode.Attributes["id"] != null)
                {
                    if (excel_fxForwardNode.Attributes["id"] != null)
                    {
                        excel_fxForwardIDRef_ = excel_fxForwardNode.Attributes["id"].Value;
                        Excel_fxForward ob = new Excel_fxForward(excel_fxForwardNode);
                        IDManager.SetID(excel_fxForwardIDRef_, ob);
                    }
                    else if (excel_fxForwardNode.Attributes["href"] != null)
                    {
                        excel_fxForwardIDRef_ = excel_fxForwardNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_fxForward_ = new Excel_fxForward(excel_fxForwardNode);
                    }
                }
                else
                {
                    excel_fxForward_ = new Excel_fxForward(excel_fxForwardNode);
                }
            }


            XmlNode excel_fxSwapNode = xmlNode.SelectSingleNode("excel_fxSwap");

            if (excel_fxSwapNode != null)
            {
                if (excel_fxSwapNode.Attributes["href"] != null || excel_fxSwapNode.Attributes["id"] != null)
                {
                    if (excel_fxSwapNode.Attributes["id"] != null)
                    {
                        excel_fxSwapIDRef_ = excel_fxSwapNode.Attributes["id"].Value;
                        Excel_fxSwap ob = new Excel_fxSwap(excel_fxSwapNode);
                        IDManager.SetID(excel_fxSwapIDRef_, ob);
                    }
                    else if (excel_fxSwapNode.Attributes["href"] != null)
                    {
                        excel_fxSwapIDRef_ = excel_fxSwapNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_fxSwap_ = new Excel_fxSwap(excel_fxSwapNode);
                    }
                }
                else
                {
                    excel_fxSwap_ = new Excel_fxSwap(excel_fxSwapNode);
                }
            }


            XmlNode excel_multiAssetCompositeOptionNode = xmlNode.SelectSingleNode("excel_multiAssetCompositeOption");

            if (excel_multiAssetCompositeOptionNode != null)
            {
                if (excel_multiAssetCompositeOptionNode.Attributes["href"] != null || excel_multiAssetCompositeOptionNode.Attributes["id"] != null)
                {
                    if (excel_multiAssetCompositeOptionNode.Attributes["id"] != null)
                    {
                        excel_multiAssetCompositeOptionIDRef_ = excel_multiAssetCompositeOptionNode.Attributes["id"].Value;
                        Excel_multiAssetCompositeOption ob = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
                        IDManager.SetID(excel_multiAssetCompositeOptionIDRef_, ob);
                    }
                    else if (excel_multiAssetCompositeOptionNode.Attributes["href"] != null)
                    {
                        excel_multiAssetCompositeOptionIDRef_ = excel_multiAssetCompositeOptionNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_multiAssetCompositeOption_ = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
                    }
                }
                else
                {
                    excel_multiAssetCompositeOption_ = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
                }
            }
        }
 public Excel_interface(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode excel_typeNode = xmlNode.SelectSingleNode("excel_type");
     
     if (excel_typeNode != null)
     {
         if (excel_typeNode.Attributes["href"] != null || excel_typeNode.Attributes["id"] != null) 
         {
             if (excel_typeNode.Attributes["id"] != null) 
             {
                 excel_typeIDRef_ = excel_typeNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(excel_typeNode);
                 IDManager.SetID(excel_typeIDRef_, ob);
             }
             else if (excel_typeNode.Attributes["href"] != null)
             {
                 excel_typeIDRef_ = excel_typeNode.Attributes["href"].Value;
             }
             else
             {
                 excel_type_ = new XsdTypeToken(excel_typeNode);
             }
         }
         else
         {
             excel_type_ = new XsdTypeToken(excel_typeNode);
         }
     }
     
 
     XmlNode excel_hifiveNode = xmlNode.SelectSingleNode("excel_hifive");
     
     if (excel_hifiveNode != null)
     {
         if (excel_hifiveNode.Attributes["href"] != null || excel_hifiveNode.Attributes["id"] != null) 
         {
             if (excel_hifiveNode.Attributes["id"] != null) 
             {
                 excel_hifiveIDRef_ = excel_hifiveNode.Attributes["id"].Value;
                 Excel_hifive ob = new Excel_hifive(excel_hifiveNode);
                 IDManager.SetID(excel_hifiveIDRef_, ob);
             }
             else if (excel_hifiveNode.Attributes["href"] != null)
             {
                 excel_hifiveIDRef_ = excel_hifiveNode.Attributes["href"].Value;
             }
             else
             {
                 excel_hifive_ = new Excel_hifive(excel_hifiveNode);
             }
         }
         else
         {
             excel_hifive_ = new Excel_hifive(excel_hifiveNode);
         }
     }
     
 
     XmlNode excel_stepDownKICustomNode = xmlNode.SelectSingleNode("excel_stepDownKICustom");
     
     if (excel_stepDownKICustomNode != null)
     {
         if (excel_stepDownKICustomNode.Attributes["href"] != null || excel_stepDownKICustomNode.Attributes["id"] != null) 
         {
             if (excel_stepDownKICustomNode.Attributes["id"] != null) 
             {
                 excel_stepDownKICustomIDRef_ = excel_stepDownKICustomNode.Attributes["id"].Value;
                 Excel_stepDownKICustom ob = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
                 IDManager.SetID(excel_stepDownKICustomIDRef_, ob);
             }
             else if (excel_stepDownKICustomNode.Attributes["href"] != null)
             {
                 excel_stepDownKICustomIDRef_ = excel_stepDownKICustomNode.Attributes["href"].Value;
             }
             else
             {
                 excel_stepDownKICustom_ = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
             }
         }
         else
         {
             excel_stepDownKICustom_ = new Excel_stepDownKICustom(excel_stepDownKICustomNode);
         }
     }
     
 
     XmlNode excel_compositeOptionNode = xmlNode.SelectSingleNode("excel_compositeOption");
     
     if (excel_compositeOptionNode != null)
     {
         if (excel_compositeOptionNode.Attributes["href"] != null || excel_compositeOptionNode.Attributes["id"] != null) 
         {
             if (excel_compositeOptionNode.Attributes["id"] != null) 
             {
                 excel_compositeOptionIDRef_ = excel_compositeOptionNode.Attributes["id"].Value;
                 Excel_compositeOption ob = new Excel_compositeOption(excel_compositeOptionNode);
                 IDManager.SetID(excel_compositeOptionIDRef_, ob);
             }
             else if (excel_compositeOptionNode.Attributes["href"] != null)
             {
                 excel_compositeOptionIDRef_ = excel_compositeOptionNode.Attributes["href"].Value;
             }
             else
             {
                 excel_compositeOption_ = new Excel_compositeOption(excel_compositeOptionNode);
             }
         }
         else
         {
             excel_compositeOption_ = new Excel_compositeOption(excel_compositeOptionNode);
         }
     }
     
 
     XmlNode excel_generalNode = xmlNode.SelectSingleNode("excel_general");
     
     if (excel_generalNode != null)
     {
         if (excel_generalNode.Attributes["href"] != null || excel_generalNode.Attributes["id"] != null) 
         {
             if (excel_generalNode.Attributes["id"] != null) 
             {
                 excel_generalIDRef_ = excel_generalNode.Attributes["id"].Value;
                 Excel_general ob = new Excel_general(excel_generalNode);
                 IDManager.SetID(excel_generalIDRef_, ob);
             }
             else if (excel_generalNode.Attributes["href"] != null)
             {
                 excel_generalIDRef_ = excel_generalNode.Attributes["href"].Value;
             }
             else
             {
                 excel_general_ = new Excel_general(excel_generalNode);
             }
         }
         else
         {
             excel_general_ = new Excel_general(excel_generalNode);
         }
     }
     
 
     XmlNode excel_fixedBondNode = xmlNode.SelectSingleNode("excel_fixedBond");
     
     if (excel_fixedBondNode != null)
     {
         if (excel_fixedBondNode.Attributes["href"] != null || excel_fixedBondNode.Attributes["id"] != null) 
         {
             if (excel_fixedBondNode.Attributes["id"] != null) 
             {
                 excel_fixedBondIDRef_ = excel_fixedBondNode.Attributes["id"].Value;
                 Excel_fixedBond ob = new Excel_fixedBond(excel_fixedBondNode);
                 IDManager.SetID(excel_fixedBondIDRef_, ob);
             }
             else if (excel_fixedBondNode.Attributes["href"] != null)
             {
                 excel_fixedBondIDRef_ = excel_fixedBondNode.Attributes["href"].Value;
             }
             else
             {
                 excel_fixedBond_ = new Excel_fixedBond(excel_fixedBondNode);
             }
         }
         else
         {
             excel_fixedBond_ = new Excel_fixedBond(excel_fixedBondNode);
         }
     }
     
 
     XmlNode excel_vanillaFloatingBondNode = xmlNode.SelectSingleNode("excel_vanillaFloatingBond");
     
     if (excel_vanillaFloatingBondNode != null)
     {
         if (excel_vanillaFloatingBondNode.Attributes["href"] != null || excel_vanillaFloatingBondNode.Attributes["id"] != null) 
         {
             if (excel_vanillaFloatingBondNode.Attributes["id"] != null) 
             {
                 excel_vanillaFloatingBondIDRef_ = excel_vanillaFloatingBondNode.Attributes["id"].Value;
                 Excel_vanillaFloatingBond ob = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
                 IDManager.SetID(excel_vanillaFloatingBondIDRef_, ob);
             }
             else if (excel_vanillaFloatingBondNode.Attributes["href"] != null)
             {
                 excel_vanillaFloatingBondIDRef_ = excel_vanillaFloatingBondNode.Attributes["href"].Value;
             }
             else
             {
                 excel_vanillaFloatingBond_ = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
             }
         }
         else
         {
             excel_vanillaFloatingBond_ = new Excel_vanillaFloatingBond(excel_vanillaFloatingBondNode);
         }
     }
     
 
     XmlNode excel_structuredBondNode = xmlNode.SelectSingleNode("excel_structuredBond");
     
     if (excel_structuredBondNode != null)
     {
         if (excel_structuredBondNode.Attributes["href"] != null || excel_structuredBondNode.Attributes["id"] != null) 
         {
             if (excel_structuredBondNode.Attributes["id"] != null) 
             {
                 excel_structuredBondIDRef_ = excel_structuredBondNode.Attributes["id"].Value;
                 Excel_structuredBond ob = new Excel_structuredBond(excel_structuredBondNode);
                 IDManager.SetID(excel_structuredBondIDRef_, ob);
             }
             else if (excel_structuredBondNode.Attributes["href"] != null)
             {
                 excel_structuredBondIDRef_ = excel_structuredBondNode.Attributes["href"].Value;
             }
             else
             {
                 excel_structuredBond_ = new Excel_structuredBond(excel_structuredBondNode);
             }
         }
         else
         {
             excel_structuredBond_ = new Excel_structuredBond(excel_structuredBondNode);
         }
     }
     
 
     XmlNode excel_fxForwardNode = xmlNode.SelectSingleNode("excel_fxForward");
     
     if (excel_fxForwardNode != null)
     {
         if (excel_fxForwardNode.Attributes["href"] != null || excel_fxForwardNode.Attributes["id"] != null) 
         {
             if (excel_fxForwardNode.Attributes["id"] != null) 
             {
                 excel_fxForwardIDRef_ = excel_fxForwardNode.Attributes["id"].Value;
                 Excel_fxForward ob = new Excel_fxForward(excel_fxForwardNode);
                 IDManager.SetID(excel_fxForwardIDRef_, ob);
             }
             else if (excel_fxForwardNode.Attributes["href"] != null)
             {
                 excel_fxForwardIDRef_ = excel_fxForwardNode.Attributes["href"].Value;
             }
             else
             {
                 excel_fxForward_ = new Excel_fxForward(excel_fxForwardNode);
             }
         }
         else
         {
             excel_fxForward_ = new Excel_fxForward(excel_fxForwardNode);
         }
     }
     
 
     XmlNode excel_fxSwapNode = xmlNode.SelectSingleNode("excel_fxSwap");
     
     if (excel_fxSwapNode != null)
     {
         if (excel_fxSwapNode.Attributes["href"] != null || excel_fxSwapNode.Attributes["id"] != null) 
         {
             if (excel_fxSwapNode.Attributes["id"] != null) 
             {
                 excel_fxSwapIDRef_ = excel_fxSwapNode.Attributes["id"].Value;
                 Excel_fxSwap ob = new Excel_fxSwap(excel_fxSwapNode);
                 IDManager.SetID(excel_fxSwapIDRef_, ob);
             }
             else if (excel_fxSwapNode.Attributes["href"] != null)
             {
                 excel_fxSwapIDRef_ = excel_fxSwapNode.Attributes["href"].Value;
             }
             else
             {
                 excel_fxSwap_ = new Excel_fxSwap(excel_fxSwapNode);
             }
         }
         else
         {
             excel_fxSwap_ = new Excel_fxSwap(excel_fxSwapNode);
         }
     }
     
 
     XmlNode excel_multiAssetCompositeOptionNode = xmlNode.SelectSingleNode("excel_multiAssetCompositeOption");
     
     if (excel_multiAssetCompositeOptionNode != null)
     {
         if (excel_multiAssetCompositeOptionNode.Attributes["href"] != null || excel_multiAssetCompositeOptionNode.Attributes["id"] != null) 
         {
             if (excel_multiAssetCompositeOptionNode.Attributes["id"] != null) 
             {
                 excel_multiAssetCompositeOptionIDRef_ = excel_multiAssetCompositeOptionNode.Attributes["id"].Value;
                 Excel_multiAssetCompositeOption ob = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
                 IDManager.SetID(excel_multiAssetCompositeOptionIDRef_, ob);
             }
             else if (excel_multiAssetCompositeOptionNode.Attributes["href"] != null)
             {
                 excel_multiAssetCompositeOptionIDRef_ = excel_multiAssetCompositeOptionNode.Attributes["href"].Value;
             }
             else
             {
                 excel_multiAssetCompositeOption_ = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
             }
         }
         else
         {
             excel_multiAssetCompositeOption_ = new Excel_multiAssetCompositeOption(excel_multiAssetCompositeOptionNode);
         }
     }
     
 
 }