GeometryGym.Ifc.IfcOrganization.ParseXml C# (CSharp) Méthode

ParseXml() private méthode

private ParseXml ( XmlElement xml ) : void
xml XmlElement
Résultat void
        internal override void ParseXml(XmlElement xml)
        {
            base.ParseXml(xml);
            if (xml.HasAttribute("Identification"))
                Identification = xml.Attributes["Identification"].Value;
            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, "Roles") == 0)
                {
                    List<IfcActorRole> roles = new List<IfcActorRole>(child.ChildNodes.Count);
                    foreach (XmlNode cn in child.ChildNodes)
                    {
                        IfcActorRole role = mDatabase.ParseXml<IfcActorRole>(cn as XmlElement);
                        if (role != null)
                            roles.Add(role);
                    }
                    Roles = roles;
                }
                else if (string.Compare(name, "Addresses") == 0)
                {
                    List<IfcAddress> addresses = new List<IfcAddress>(child.ChildNodes.Count);
                    foreach (XmlNode cn in child.ChildNodes)
                    {
                        IfcAddress address = mDatabase.ParseXml<IfcAddress>(cn as XmlElement);
                        if (address != null)
                            addresses.Add(address);
                    }
                    Addresses = addresses;
                }
            }
        }