public ZeroRateCurve(XmlNode xmlNode)
 {
     XmlNodeList compoundingFrequencyNodeList = xmlNode.SelectNodes("compoundingFrequency");
     if (compoundingFrequencyNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in compoundingFrequencyNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 compoundingFrequencyIDRef = item.Attributes["id"].Name;
                 CompoundingFrequency ob = CompoundingFrequency();
                 IDManager.SetID(compoundingFrequencyIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 compoundingFrequencyIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 compoundingFrequency = new CompoundingFrequency(item);
             }
         }
     }
     
 
     XmlNodeList rateCurveNodeList = xmlNode.SelectNodes("rateCurve");
     if (rateCurveNodeList.Count > 1 )
     {
             throw new Exception();
     }
     
     foreach (XmlNode item in rateCurveNodeList)
     {
         if (item.Attributes["href"] != null || item.Attributes["id"] == null) 
         {
             if (item.Attributes["id"] != null) 
             {
                 rateCurveIDRef = item.Attributes["id"].Name;
                 TermCurve ob = TermCurve();
                 IDManager.SetID(rateCurveIDRef, ob);
             }
             else if (item.Attributes.ToString() == "href")
             {
                 rateCurveIDRef = item.Attributes["href"].Name;
             }
             else
             {
                 rateCurve = new TermCurve(item);
             }
         }
     }
     
 
 }
 public ZeroRateCurve(XmlNode xmlNode)
 {
     XmlNode compoundingFrequencyNode = xmlNode.SelectSingleNode("compoundingFrequency");
     
     if (compoundingFrequencyNode != null)
     {
         if (compoundingFrequencyNode.Attributes["href"] != null || compoundingFrequencyNode.Attributes["id"] != null) 
         {
             if (compoundingFrequencyNode.Attributes["id"] != null) 
             {
                 compoundingFrequencyIDRef_ = compoundingFrequencyNode.Attributes["id"].Value;
                 CompoundingFrequency ob = new CompoundingFrequency(compoundingFrequencyNode);
                 IDManager.SetID(compoundingFrequencyIDRef_, ob);
             }
             else if (compoundingFrequencyNode.Attributes["href"] != null)
             {
                 compoundingFrequencyIDRef_ = compoundingFrequencyNode.Attributes["href"].Value;
             }
             else
             {
                 compoundingFrequency_ = new CompoundingFrequency(compoundingFrequencyNode);
             }
         }
         else
         {
             compoundingFrequency_ = new CompoundingFrequency(compoundingFrequencyNode);
         }
     }
     
 
     XmlNode rateCurveNode = xmlNode.SelectSingleNode("rateCurve");
     
     if (rateCurveNode != null)
     {
         if (rateCurveNode.Attributes["href"] != null || rateCurveNode.Attributes["id"] != null) 
         {
             if (rateCurveNode.Attributes["id"] != null) 
             {
                 rateCurveIDRef_ = rateCurveNode.Attributes["id"].Value;
                 TermCurve ob = new TermCurve(rateCurveNode);
                 IDManager.SetID(rateCurveIDRef_, ob);
             }
             else if (rateCurveNode.Attributes["href"] != null)
             {
                 rateCurveIDRef_ = rateCurveNode.Attributes["href"].Value;
             }
             else
             {
                 rateCurve_ = new TermCurve(rateCurveNode);
             }
         }
         else
         {
             rateCurve_ = new TermCurve(rateCurveNode);
         }
     }
     
 
 }
        public ZeroRateCurve(XmlNode xmlNode)
        {
            XmlNodeList compoundingFrequencyNodeList = xmlNode.SelectNodes("compoundingFrequency");

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

            foreach (XmlNode item in compoundingFrequencyNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        compoundingFrequencyIDRef = item.Attributes["id"].Name;
                        CompoundingFrequency ob = CompoundingFrequency();
                        IDManager.SetID(compoundingFrequencyIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        compoundingFrequencyIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        compoundingFrequency = new CompoundingFrequency(item);
                    }
                }
            }


            XmlNodeList rateCurveNodeList = xmlNode.SelectNodes("rateCurve");

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

            foreach (XmlNode item in rateCurveNodeList)
            {
                if (item.Attributes["href"] != null || item.Attributes["id"] == null)
                {
                    if (item.Attributes["id"] != null)
                    {
                        rateCurveIDRef = item.Attributes["id"].Name;
                        TermCurve ob = TermCurve();
                        IDManager.SetID(rateCurveIDRef, ob);
                    }
                    else if (item.Attributes.ToString() == "href")
                    {
                        rateCurveIDRef = item.Attributes["href"].Name;
                    }
                    else
                    {
                        rateCurve = new TermCurve(item);
                    }
                }
            }
        }
        public ZeroRateCurve(XmlNode xmlNode)
        {
            XmlNode compoundingFrequencyNode = xmlNode.SelectSingleNode("compoundingFrequency");

            if (compoundingFrequencyNode != null)
            {
                if (compoundingFrequencyNode.Attributes["href"] != null || compoundingFrequencyNode.Attributes["id"] != null)
                {
                    if (compoundingFrequencyNode.Attributes["id"] != null)
                    {
                        compoundingFrequencyIDRef_ = compoundingFrequencyNode.Attributes["id"].Value;
                        CompoundingFrequency ob = new CompoundingFrequency(compoundingFrequencyNode);
                        IDManager.SetID(compoundingFrequencyIDRef_, ob);
                    }
                    else if (compoundingFrequencyNode.Attributes["href"] != null)
                    {
                        compoundingFrequencyIDRef_ = compoundingFrequencyNode.Attributes["href"].Value;
                    }
                    else
                    {
                        compoundingFrequency_ = new CompoundingFrequency(compoundingFrequencyNode);
                    }
                }
                else
                {
                    compoundingFrequency_ = new CompoundingFrequency(compoundingFrequencyNode);
                }
            }


            XmlNode rateCurveNode = xmlNode.SelectSingleNode("rateCurve");

            if (rateCurveNode != null)
            {
                if (rateCurveNode.Attributes["href"] != null || rateCurveNode.Attributes["id"] != null)
                {
                    if (rateCurveNode.Attributes["id"] != null)
                    {
                        rateCurveIDRef_ = rateCurveNode.Attributes["id"].Value;
                        TermCurve ob = new TermCurve(rateCurveNode);
                        IDManager.SetID(rateCurveIDRef_, ob);
                    }
                    else if (rateCurveNode.Attributes["href"] != null)
                    {
                        rateCurveIDRef_ = rateCurveNode.Attributes["href"].Value;
                    }
                    else
                    {
                        rateCurve_ = new TermCurve(rateCurveNode);
                    }
                }
                else
                {
                    rateCurve_ = new TermCurve(rateCurveNode);
                }
            }
        }