public override void Parse(XmlNode dom)
        {
            this.Name           = dom.Attributes["Name"].Value;
            this.TypeName       = dom.Attributes["TypeName"].Value;
            this.StoreEntitySet = dom.Attributes["StoreEntitySet"].Value;

            foreach (XmlNode n in dom.ChildNodes)
            {
                if (n.Name == "EndProperty")
                {
                    var end = new EndProperty();
                    end.Parse(n);
                    end.Parent = this;
                    this.EndPropertys.Add(end.Name, end);
                }
                else if (n.Name == "Condition")
                {
                    var condition = new Condition();
                    condition.Parse(dom);
                    condition.Parent = this;
                    this.Condition   = condition;
                }
            }
            base.Parse(dom);
        }
        public override void Parse(XmlNode dom)
        {
            this.Name = dom.Attributes["Name"].Value;
            this.TypeName = dom.Attributes["TypeName"].Value;
            this.StoreEntitySet = dom.Attributes["StoreEntitySet"].Value;

            foreach (XmlNode n in dom.ChildNodes)
            {
                if (n.Name == "EndProperty")
                {
                    var end = new EndProperty();
                    end.Parse(n);
                    end.Parent = this;
                    this.EndPropertys.Add(end.Name, end);
                }
                else if (n.Name == "Condition")
                {
                    var condition = new Condition();
                    condition.Parse(dom);
                    condition.Parent = this;
                    this.Condition = condition;
                }
            }
            base.Parse(dom);
        }