//internal List<IfcExternalReferenceRelationship> mHasExternalReferences = new List<IfcExternalReferenceRelationship>(); //IFC4 //internal List<IfcResourceConstraintRelationship> mHasConstraintRelationships = new List<IfcResourceConstraintRelationship>(); //gg internal override void ParseXml(XmlElement xml) { base.ParseXml(xml); foreach (XmlNode child in xml.ChildNodes) { string name = child.Name; if (string.Compare(name, "HasExternalReferences") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { r.RelatedResourceObjects.Add(this); } } } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } } }
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, "AppliedValue") == 0) AppliedValue = mDatabase.ParseXml<IfcAppliedValueSelect>(child as XmlElement); else if (string.Compare(name, "UnitBasis") == 0) UnitBasis = mDatabase.ParseXml<IfcMeasureWithUnit>(child as XmlElement); else if (string.Compare(name, "Components") == 0) { foreach (XmlNode node in child.ChildNodes) { IfcAppliedValue v = mDatabase.ParseXml<IfcAppliedValue>(node as XmlElement); if (v != null) addComponent(v); } } else if (string.Compare(name, "HasExternalReference") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml<IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) r.RelatedResourceObjects.Add(this); } } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml<IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) r.addRelated(this); } } else if (string.Compare(name, "Name", true) == 0) Name = child.InnerText; else if (string.Compare(name, "Description", true) == 0) Description = child.InnerText; else if (string.Compare(name, "Category", true) == 0) Category = child.InnerText; else if (string.Compare(name, "Condition", true) == 0) Condition = child.InnerText; else if (string.Compare(name, "ArithmeticOperator", true) == 0) Enum.TryParse<IfcArithmeticOperatorEnum>(child.InnerText, true, out mArithmeticOperator); } //todo if (xml.HasAttribute("Category")) Category = xml.Attributes["Category"].Value; if (xml.HasAttribute("Condition")) Condition = xml.Attributes["Condition"].Value; if (xml.HasAttribute("ArithmeticOperator")) Enum.TryParse<IfcArithmeticOperatorEnum>(xml.Attributes["ArithmeticOperator"].Value, true, out mArithmeticOperator); }
{ //,IfcExternallyDefinedSurfaceStyle ,IfcExternallyDefinedSymbol ,IfcExternallyDefinedTextFont ,IfcLibraryReference)); internal override void ParseXml(XmlElement xml) { base.ParseXml(xml); if (xml.HasAttribute("Location")) { Location = xml.Attributes["Location"].Value; } if (xml.HasAttribute("Identification")) { Identification = xml.Attributes["Identification"].Value; } if (xml.HasAttribute("Name")) { Name = xml.Attributes["Name"].Value; } foreach (XmlNode child in xml.ChildNodes) { string name = child.Name; if (string.Compare(name, "HasExternalReferences") == 0) { List <IfcExternalReferenceRelationship> references = new List <IfcExternalReferenceRelationship>(child.ChildNodes.Count); foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { references.Add(r); } } mHasExternalReferences = references; } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } else if (string.Compare(name, "ExternalReferenceForResources") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } } }
{ //,IfcExternallyDefinedSurfaceStyle ,IfcExternallyDefinedSymbol ,IfcExternallyDefinedTextFont ,IfcLibraryReference)); internal override void ParseXml(XmlElement xml) { base.ParseXml(xml); XmlAttribute attribute = xml.Attributes["Location"]; if (attribute != null) { Location = attribute.Value; } attribute = xml.Attributes["Identification"]; if (attribute == null) { attribute = xml.Attributes["ItemReference"]; } if (attribute != null) { Identification = attribute.Value; } attribute = xml.Attributes["Name"]; if (attribute != null) { Name = attribute.Value; } foreach (XmlNode child in xml.ChildNodes) { string name = child.Name; if (string.Compare(name, "HasExternalReference") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { mHasExternalReference.Add(r); } } } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } else if (string.Compare(name, "ExternalReferenceForResources") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { r.RelatedResourceObjects.Add(this); } } } } }
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; } if (xml.HasAttribute("ConstraintGrade")) { Enum.TryParse <IfcConstraintEnum>(xml.Attributes["ConstraintGrade"].Value, true, out mConstraintGrade); } if (xml.HasAttribute("ConstraintSource")) { ConstraintSource = xml.Attributes["ConstraintSource"].Value; } foreach (XmlNode child in xml.ChildNodes) { string name = child.Name; if (string.Compare(name, "CreatingActor") == 0) { CreatingActor = mDatabase.ParseXml <IfcActorSelect>(child as XmlElement); } else if (string.Compare(name, "HasExternalReferences") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } else if (string.Compare(name, "PropertiesForConstraint") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.RelatingConstraint = this; } } } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } } if (xml.HasAttribute("UserDefinedGrade")) { UserDefinedGrade = xml.Attributes["UserDefinedGrade"].Value; } }
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, "AppliedValue") == 0) { AppliedValue = mDatabase.ParseXml <IfcAppliedValueSelect>(child as XmlElement); if (mAppliedValueIndex == 0) { mAppliedValueValue = extractValue(child.FirstChild); } } else if (string.Compare(name, "UnitBasis") == 0) { UnitBasis = mDatabase.ParseXml <IfcMeasureWithUnit>(child as XmlElement); } else if (string.Compare(name, "Components") == 0) { foreach (XmlNode node in child.ChildNodes) { IfcAppliedValue v = mDatabase.ParseXml <IfcAppliedValue>(node as XmlElement); if (v != null) { addComponent(v); } } } else if (string.Compare(name, "HasExternalReferences") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcExternalReferenceRelationship r = mDatabase.ParseXml <IfcExternalReferenceRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } else if (string.Compare(name, "HasConstraintRelationships") == 0) { foreach (XmlNode cn in child.ChildNodes) { IfcResourceConstraintRelationship r = mDatabase.ParseXml <IfcResourceConstraintRelationship>(cn as XmlElement); if (r != null) { r.addRelated(this); } } } } //todo if (xml.HasAttribute("Category")) { Category = xml.Attributes["Category"].Value; } if (xml.HasAttribute("Condition")) { Condition = xml.Attributes["Condition"].Value; } if (xml.HasAttribute("ArithmeticOperator")) { Enum.TryParse <IfcArithmeticOperatorEnum>(xml.Attributes["ArithmeticOperator"].Value, true, out mArithmeticOperator); } }