System.Xml.Schema.SchemaCollectionPreprocessor.Cleanup C# (CSharp) Méthode

Cleanup() private méthode

private Cleanup ( XmlSchema schema ) : void
schema XmlSchema
Résultat void
        private void Cleanup(XmlSchema schema) {
            if (schema.IsProcessing) {
                return;
            }
            schema.IsProcessing = true;
            
            foreach(XmlSchemaExternal include in schema.Includes) {
                if (include.Schema != null) {
                    Cleanup(include.Schema);
                }

                if (include is XmlSchemaRedefine) {
                    XmlSchemaRedefine rdef = include as XmlSchemaRedefine;
                    rdef.AttributeGroups.Clear();
                    rdef.Groups.Clear();
                    rdef.SchemaTypes.Clear();
                }
                
            }

            schema.Attributes.Clear();
            schema.AttributeGroups.Clear();
            schema.SchemaTypes.Clear();
            schema.Elements.Clear();
            schema.Groups.Clear();
            schema.Notations.Clear();
            schema.Ids.Clear();
            schema.IdentityConstraints.Clear();

            schema.IsProcessing = false;
        }