internal override void ParseXml(XmlElement xml)
{
base.ParseXml(xml);
foreach (XmlNode child in xml.ChildNodes)
{
string name = child.Name;
if (string.Compare(name, "BenchmarkValues") == 0)
{
List<IfcConstraint> constraints = new List<IfcConstraint>(child.ChildNodes.Count);
foreach (XmlNode cn in child.ChildNodes)
{
IfcConstraint constraint = mDatabase.ParseXml<IfcConstraint>(cn as XmlElement);
if (constraint != null)
constraints.Add(constraint);
}
BenchmarkValues = constraints;
}
}
if (xml.HasAttribute("LogicalAggregator"))
Enum.TryParse<IfcLogicalOperatorEnum>(xml.Attributes["LogicalAggregator"].Value, true, out mLogicalAggregator);
if (xml.HasAttribute("ObjectiveQualifier"))
Enum.TryParse<IfcObjectiveEnum>(xml.Attributes["ObjectiveQualifier"].Value, true, out mObjectiveQualifier);
if (xml.HasAttribute("UserDefinedQualifier"))
UserDefinedQualifier = xml.Attributes["UserDefinedQualifier"].Value;
}