GeometryGym.Ifc.BaseClassIfc.GetXML C# (CSharp) Méthode

GetXML() private méthode

private GetXML ( XmlDocument doc, string name, BaseClassIfc host, HashSet processed ) : XmlElement
doc System.Xml.XmlDocument
name string
host BaseClassIfc
processed HashSet
Résultat System.Xml.XmlElement
        internal XmlElement GetXML(XmlDocument doc,string name, BaseClassIfc host, HashSet<int> processed)
        {
            string type = KeyWord;
            if (string.IsNullOrEmpty(name))
                name = type;

            if (processed.Contains(mIndex))
            {
                XmlElement xelement = doc.CreateElement(name);//, mDatabase.mXmlNamespace);
                XmlAttribute nil = doc.CreateAttribute("xsi", "nil", mDatabase.mXsiNamespace);
                nil.Value = "true";
                xelement.SetAttributeNode(nil);
                xelement.SetAttribute("href", "i" + mIndex);
                return xelement;
            }

            XmlElement element = doc.CreateElement(name);//, mDatabase.mXmlNamespace);
            SetXML(element, host, processed);

            element.SetAttribute("id", "i" + mIndex);
            if (string.Compare(name, type) != 0)
            {
                XmlAttribute att = doc.CreateAttribute("xsi","type",mDatabase.mXsiNamespace);
                //att.Prefix = "xsi";
                //att.LocalName = type;
                att.Value = type;
                element.SetAttributeNode(att);
            }
            processed.Add(mIndex);
            return element;
        }