public DualBarrierEventCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNodeList dateInformationNodeList = xmlNode.SelectNodes("dateInformation");
     
     if (dateInformationNodeList != null)
     {
         this.dateInformation_ = new List<DateInformation>();
         foreach (XmlNode item in dateInformationNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     dateInformationIDRef_ = item.Attributes["id"].Value;
                     dateInformation_.Add(new DateInformation(item));
                     IDManager.SetID(dateInformationIDRef_, dateInformation_[dateInformation_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     dateInformationIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 dateInformation_.Add(new DateInformation(item));
                 }
             }
             else
             {
                 dateInformation_.Add(new DateInformation(item));
             }
         }
     }
     
 
     XmlNodeList upperTriggerNodeList = xmlNode.SelectNodes("upperTrigger");
     
     if (upperTriggerNodeList != null)
     {
         this.upperTrigger_ = new List<XsdTypeDouble>();
         foreach (XmlNode item in upperTriggerNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     upperTriggerIDRef_ = item.Attributes["id"].Value;
                     upperTrigger_.Add(new XsdTypeDouble(item));
                     IDManager.SetID(upperTriggerIDRef_, upperTrigger_[upperTrigger_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     upperTriggerIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 upperTrigger_.Add(new XsdTypeDouble(item));
                 }
             }
             else
             {
                 upperTrigger_.Add(new XsdTypeDouble(item));
             }
         }
     }
     
 
     XmlNodeList lowerTriggerNodeList = xmlNode.SelectNodes("lowerTrigger");
     
     if (lowerTriggerNodeList != null)
     {
         this.lowerTrigger_ = new List<XsdTypeDouble>();
         foreach (XmlNode item in lowerTriggerNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     lowerTriggerIDRef_ = item.Attributes["id"].Value;
                     lowerTrigger_.Add(new XsdTypeDouble(item));
                     IDManager.SetID(lowerTriggerIDRef_, lowerTrigger_[lowerTrigger_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     lowerTriggerIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 lowerTrigger_.Add(new XsdTypeDouble(item));
                 }
             }
             else
             {
                 lowerTrigger_.Add(new XsdTypeDouble(item));
             }
         }
     }
     
 
     XmlNodeList referenceCalculationInfoNodeList = xmlNode.SelectNodes("referenceCalculationInfo");
     
     if (referenceCalculationInfoNodeList != null)
     {
         this.referenceCalculationInfo_ = new List<ReferenceCalculationInfo>();
         foreach (XmlNode item in referenceCalculationInfoNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     referenceCalculationInfoIDRef_ = item.Attributes["id"].Value;
                     referenceCalculationInfo_.Add(new ReferenceCalculationInfo(item));
                     IDManager.SetID(referenceCalculationInfoIDRef_, referenceCalculationInfo_[referenceCalculationInfo_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     referenceCalculationInfoIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 referenceCalculationInfo_.Add(new ReferenceCalculationInfo(item));
                 }
             }
             else
             {
                 referenceCalculationInfo_.Add(new ReferenceCalculationInfo(item));
             }
         }
     }
     
 
     XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");
     
     if (jointSimpleCalculationNode != null)
     {
         if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null) 
         {
             if (jointSimpleCalculationNode.Attributes["id"] != null) 
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                 JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                 IDManager.SetID(jointSimpleCalculationIDRef_, ob);
             }
             else if (jointSimpleCalculationNode.Attributes["href"] != null)
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
             }
             else
             {
                 jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
             }
         }
         else
         {
             jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
         }
     }
     
 
 }
        public SimpleRangeEventCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode range1DNode = xmlNode.SelectSingleNode("range1D");

            if (range1DNode != null)
            {
                if (range1DNode.Attributes["href"] != null || range1DNode.Attributes["id"] != null)
                {
                    if (range1DNode.Attributes["id"] != null)
                    {
                        range1DIDRef_ = range1DNode.Attributes["id"].Value;
                        Range1D ob = new Range1D(range1DNode);
                        IDManager.SetID(range1DIDRef_, ob);
                    }
                    else if (range1DNode.Attributes["href"] != null)
                    {
                        range1DIDRef_ = range1DNode.Attributes["href"].Value;
                    }
                    else
                    {
                        range1D_ = new Range1D(range1DNode);
                    }
                }
                else
                {
                    range1D_ = new Range1D(range1DNode);
                }
            }


            XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");

            if (referenceCalculationInfoNode != null)
            {
                if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null)
                {
                    if (referenceCalculationInfoNode.Attributes["id"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                        ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                        IDManager.SetID(referenceCalculationInfoIDRef_, ob);
                    }
                    else if (referenceCalculationInfoNode.Attributes["href"] != null)
                    {
                        referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                    }
                }
                else
                {
                    referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                }
            }


            XmlNode dateInformationNode = xmlNode.SelectSingleNode("dateInformation");

            if (dateInformationNode != null)
            {
                if (dateInformationNode.Attributes["href"] != null || dateInformationNode.Attributes["id"] != null)
                {
                    if (dateInformationNode.Attributes["id"] != null)
                    {
                        dateInformationIDRef_ = dateInformationNode.Attributes["id"].Value;
                        DateInformation ob = new DateInformation(dateInformationNode);
                        IDManager.SetID(dateInformationIDRef_, ob);
                    }
                    else if (dateInformationNode.Attributes["href"] != null)
                    {
                        dateInformationIDRef_ = dateInformationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        dateInformation_ = new DateInformation(dateInformationNode);
                    }
                }
                else
                {
                    dateInformation_ = new DateInformation(dateInformationNode);
                }
            }


            XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");

            if (jointSimpleCalculationNode != null)
            {
                if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null)
                {
                    if (jointSimpleCalculationNode.Attributes["id"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                        JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                        IDManager.SetID(jointSimpleCalculationIDRef_, ob);
                    }
                    else if (jointSimpleCalculationNode.Attributes["href"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                    }
                }
                else
                {
                    jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                }
            }
        }
        public DualBarrierEventCal(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNodeList dateInformationNodeList = xmlNode.SelectNodes("dateInformation");

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


            XmlNodeList upperTriggerNodeList = xmlNode.SelectNodes("upperTrigger");

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


            XmlNodeList lowerTriggerNodeList = xmlNode.SelectNodes("lowerTrigger");

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


            XmlNodeList referenceCalculationInfoNodeList = xmlNode.SelectNodes("referenceCalculationInfo");

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


            XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");

            if (jointSimpleCalculationNode != null)
            {
                if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null)
                {
                    if (jointSimpleCalculationNode.Attributes["id"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                        JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                        IDManager.SetID(jointSimpleCalculationIDRef_, ob);
                    }
                    else if (jointSimpleCalculationNode.Attributes["href"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                    }
                }
                else
                {
                    jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                }
            }
        }
 public SimpleRangeEventCal(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode range1DNode = xmlNode.SelectSingleNode("range1D");
     
     if (range1DNode != null)
     {
         if (range1DNode.Attributes["href"] != null || range1DNode.Attributes["id"] != null) 
         {
             if (range1DNode.Attributes["id"] != null) 
             {
                 range1DIDRef_ = range1DNode.Attributes["id"].Value;
                 Range1D ob = new Range1D(range1DNode);
                 IDManager.SetID(range1DIDRef_, ob);
             }
             else if (range1DNode.Attributes["href"] != null)
             {
                 range1DIDRef_ = range1DNode.Attributes["href"].Value;
             }
             else
             {
                 range1D_ = new Range1D(range1DNode);
             }
         }
         else
         {
             range1D_ = new Range1D(range1DNode);
         }
     }
     
 
     XmlNode referenceCalculationInfoNode = xmlNode.SelectSingleNode("referenceCalculationInfo");
     
     if (referenceCalculationInfoNode != null)
     {
         if (referenceCalculationInfoNode.Attributes["href"] != null || referenceCalculationInfoNode.Attributes["id"] != null) 
         {
             if (referenceCalculationInfoNode.Attributes["id"] != null) 
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["id"].Value;
                 ReferenceCalculationInfo ob = new ReferenceCalculationInfo(referenceCalculationInfoNode);
                 IDManager.SetID(referenceCalculationInfoIDRef_, ob);
             }
             else if (referenceCalculationInfoNode.Attributes["href"] != null)
             {
                 referenceCalculationInfoIDRef_ = referenceCalculationInfoNode.Attributes["href"].Value;
             }
             else
             {
                 referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
             }
         }
         else
         {
             referenceCalculationInfo_ = new ReferenceCalculationInfo(referenceCalculationInfoNode);
         }
     }
     
 
     XmlNode dateInformationNode = xmlNode.SelectSingleNode("dateInformation");
     
     if (dateInformationNode != null)
     {
         if (dateInformationNode.Attributes["href"] != null || dateInformationNode.Attributes["id"] != null) 
         {
             if (dateInformationNode.Attributes["id"] != null) 
             {
                 dateInformationIDRef_ = dateInformationNode.Attributes["id"].Value;
                 DateInformation ob = new DateInformation(dateInformationNode);
                 IDManager.SetID(dateInformationIDRef_, ob);
             }
             else if (dateInformationNode.Attributes["href"] != null)
             {
                 dateInformationIDRef_ = dateInformationNode.Attributes["href"].Value;
             }
             else
             {
                 dateInformation_ = new DateInformation(dateInformationNode);
             }
         }
         else
         {
             dateInformation_ = new DateInformation(dateInformationNode);
         }
     }
     
 
     XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");
     
     if (jointSimpleCalculationNode != null)
     {
         if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null) 
         {
             if (jointSimpleCalculationNode.Attributes["id"] != null) 
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                 JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                 IDManager.SetID(jointSimpleCalculationIDRef_, ob);
             }
             else if (jointSimpleCalculationNode.Attributes["href"] != null)
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
             }
             else
             {
                 jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
             }
         }
         else
         {
             jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
         }
     }
     
 
 }
        public EventCalculationInfo(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode preConditionEventNode = xmlNode.SelectSingleNode("preConditionEvent");

            if (preConditionEventNode != null)
            {
                if (preConditionEventNode.Attributes["href"] != null || preConditionEventNode.Attributes["id"] != null)
                {
                    if (preConditionEventNode.Attributes["id"] != null)
                    {
                        preConditionEventIDRef_ = preConditionEventNode.Attributes["id"].Value;
                        PreConditionEvent ob = new PreConditionEvent(preConditionEventNode);
                        IDManager.SetID(preConditionEventIDRef_, ob);
                    }
                    else if (preConditionEventNode.Attributes["href"] != null)
                    {
                        preConditionEventIDRef_ = preConditionEventNode.Attributes["href"].Value;
                    }
                    else
                    {
                        preConditionEvent_ = new PreConditionEvent(preConditionEventNode);
                    }
                }
                else
                {
                    preConditionEvent_ = new PreConditionEvent(preConditionEventNode);
                }
            }


            XmlNodeList eventCalculationNodeList = xmlNode.SelectNodes("eventCalculation");

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


            XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");

            if (jointSimpleCalculationNode != null)
            {
                if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null)
                {
                    if (jointSimpleCalculationNode.Attributes["id"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                        JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                        IDManager.SetID(jointSimpleCalculationIDRef_, ob);
                    }
                    else if (jointSimpleCalculationNode.Attributes["href"] != null)
                    {
                        jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
                    }
                    else
                    {
                        jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                    }
                }
                else
                {
                    jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
                }
            }


            XmlNode pastEventOccNode = xmlNode.SelectSingleNode("pastEventOcc");

            if (pastEventOccNode != null)
            {
                if (pastEventOccNode.Attributes["href"] != null || pastEventOccNode.Attributes["id"] != null)
                {
                    if (pastEventOccNode.Attributes["id"] != null)
                    {
                        pastEventOccIDRef_ = pastEventOccNode.Attributes["id"].Value;
                        XsdTypeBoolean ob = new XsdTypeBoolean(pastEventOccNode);
                        IDManager.SetID(pastEventOccIDRef_, ob);
                    }
                    else if (pastEventOccNode.Attributes["href"] != null)
                    {
                        pastEventOccIDRef_ = pastEventOccNode.Attributes["href"].Value;
                    }
                    else
                    {
                        pastEventOcc_ = new XsdTypeBoolean(pastEventOccNode);
                    }
                }
                else
                {
                    pastEventOcc_ = new XsdTypeBoolean(pastEventOccNode);
                }
            }


            XmlNode refVariable_eventOccNode = xmlNode.SelectSingleNode("refVariable_eventOcc");

            if (refVariable_eventOccNode != null)
            {
                if (refVariable_eventOccNode.Attributes["href"] != null || refVariable_eventOccNode.Attributes["id"] != null)
                {
                    if (refVariable_eventOccNode.Attributes["id"] != null)
                    {
                        refVariable_eventOccIDRef_ = refVariable_eventOccNode.Attributes["id"].Value;
                        RefVariable_eventOcc ob = new RefVariable_eventOcc(refVariable_eventOccNode);
                        IDManager.SetID(refVariable_eventOccIDRef_, ob);
                    }
                    else if (refVariable_eventOccNode.Attributes["href"] != null)
                    {
                        refVariable_eventOccIDRef_ = refVariable_eventOccNode.Attributes["href"].Value;
                    }
                    else
                    {
                        refVariable_eventOcc_ = new RefVariable_eventOcc(refVariable_eventOccNode);
                    }
                }
                else
                {
                    refVariable_eventOcc_ = new RefVariable_eventOcc(refVariable_eventOccNode);
                }
            }
        }
 public EventCalculationInfo(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode preConditionEventNode = xmlNode.SelectSingleNode("preConditionEvent");
     
     if (preConditionEventNode != null)
     {
         if (preConditionEventNode.Attributes["href"] != null || preConditionEventNode.Attributes["id"] != null) 
         {
             if (preConditionEventNode.Attributes["id"] != null) 
             {
                 preConditionEventIDRef_ = preConditionEventNode.Attributes["id"].Value;
                 PreConditionEvent ob = new PreConditionEvent(preConditionEventNode);
                 IDManager.SetID(preConditionEventIDRef_, ob);
             }
             else if (preConditionEventNode.Attributes["href"] != null)
             {
                 preConditionEventIDRef_ = preConditionEventNode.Attributes["href"].Value;
             }
             else
             {
                 preConditionEvent_ = new PreConditionEvent(preConditionEventNode);
             }
         }
         else
         {
             preConditionEvent_ = new PreConditionEvent(preConditionEventNode);
         }
     }
     
 
     XmlNodeList eventCalculationNodeList = xmlNode.SelectNodes("eventCalculation");
     
     if (eventCalculationNodeList != null)
     {
         this.eventCalculation_ = new List<EventCalculation>();
         foreach (XmlNode item in eventCalculationNodeList)
         {
             if (item.Attributes["href"] != null || item.Attributes["id"] != null) 
             {
                 if (item.Attributes["id"] != null) 
                 {
                     eventCalculationIDRef_ = item.Attributes["id"].Value;
                     eventCalculation_.Add(new EventCalculation(item));
                     IDManager.SetID(eventCalculationIDRef_, eventCalculation_[eventCalculation_.Count - 1 ]);
                 }
                 else if (item.Attributes["href"] != null)
                 {
                     eventCalculationIDRef_ = item.Attributes["href"].Value;
                 }
                 else
                 {
                 eventCalculation_.Add(new EventCalculation(item));
                 }
             }
             else
             {
                 eventCalculation_.Add(new EventCalculation(item));
             }
         }
     }
     
 
     XmlNode jointSimpleCalculationNode = xmlNode.SelectSingleNode("jointSimpleCalculation");
     
     if (jointSimpleCalculationNode != null)
     {
         if (jointSimpleCalculationNode.Attributes["href"] != null || jointSimpleCalculationNode.Attributes["id"] != null) 
         {
             if (jointSimpleCalculationNode.Attributes["id"] != null) 
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["id"].Value;
                 JointSimpleCalculation ob = new JointSimpleCalculation(jointSimpleCalculationNode);
                 IDManager.SetID(jointSimpleCalculationIDRef_, ob);
             }
             else if (jointSimpleCalculationNode.Attributes["href"] != null)
             {
                 jointSimpleCalculationIDRef_ = jointSimpleCalculationNode.Attributes["href"].Value;
             }
             else
             {
                 jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
             }
         }
         else
         {
             jointSimpleCalculation_ = new JointSimpleCalculation(jointSimpleCalculationNode);
         }
     }
     
 
     XmlNode pastEventOccNode = xmlNode.SelectSingleNode("pastEventOcc");
     
     if (pastEventOccNode != null)
     {
         if (pastEventOccNode.Attributes["href"] != null || pastEventOccNode.Attributes["id"] != null) 
         {
             if (pastEventOccNode.Attributes["id"] != null) 
             {
                 pastEventOccIDRef_ = pastEventOccNode.Attributes["id"].Value;
                 XsdTypeBoolean ob = new XsdTypeBoolean(pastEventOccNode);
                 IDManager.SetID(pastEventOccIDRef_, ob);
             }
             else if (pastEventOccNode.Attributes["href"] != null)
             {
                 pastEventOccIDRef_ = pastEventOccNode.Attributes["href"].Value;
             }
             else
             {
                 pastEventOcc_ = new XsdTypeBoolean(pastEventOccNode);
             }
         }
         else
         {
             pastEventOcc_ = new XsdTypeBoolean(pastEventOccNode);
         }
     }
     
 
     XmlNode refVariable_eventOccNode = xmlNode.SelectSingleNode("refVariable_eventOcc");
     
     if (refVariable_eventOccNode != null)
     {
         if (refVariable_eventOccNode.Attributes["href"] != null || refVariable_eventOccNode.Attributes["id"] != null) 
         {
             if (refVariable_eventOccNode.Attributes["id"] != null) 
             {
                 refVariable_eventOccIDRef_ = refVariable_eventOccNode.Attributes["id"].Value;
                 RefVariable_eventOcc ob = new RefVariable_eventOcc(refVariable_eventOccNode);
                 IDManager.SetID(refVariable_eventOccIDRef_, ob);
             }
             else if (refVariable_eventOccNode.Attributes["href"] != null)
             {
                 refVariable_eventOccIDRef_ = refVariable_eventOccNode.Attributes["href"].Value;
             }
             else
             {
                 refVariable_eventOcc_ = new RefVariable_eventOcc(refVariable_eventOccNode);
             }
         }
         else
         {
             refVariable_eventOcc_ = new RefVariable_eventOcc(refVariable_eventOccNode);
         }
     }
     
 
 }