internal override void ParseXml(XmlElement xml)
{
base.ParseXml(xml);
if (xml.HasAttribute("Name"))
Name = xml.Attributes["Name"].Value;
if (xml.HasAttribute("Description"))
Description = xml.Attributes["Description"].Value;
foreach (XmlNode child in xml.ChildNodes)
{
string name = child.Name;
if (string.Compare(name, "Material") == 0)
Material = mDatabase.ParseXml<IfcMaterial>(child as XmlElement);
else if (string.Compare(name, "Profile") == 0)
Profile = mDatabase.ParseXml<IfcProfileDef>(child as XmlElement);
}
if (xml.HasAttribute("Priority"))
int.TryParse(xml.Attributes["Priority"].Value, out mPriority);
if (xml.HasAttribute("Category"))
Category = xml.Attributes["Category"].Value;
}