Click here to Skip to main content
15,897,518 members
Articles / Web Development / ASP.NET

Creating a Custom Configuration Section in C#

Rate me:
Please Sign up or sign in to vote.
4.79/5 (32 votes)
18 Sep 2007CPOL6 min read 319.5K   4.4K   111  
Creation of a custom configuration section similar to AppSettings. Stores settings for both Development and Production environments, and returns the appropriate settings based on the machine’s configuration in which the application is being executed.
<?xml version="1.0" encoding="us-ascii"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vs="http://schemas.microsoft.com/Visual-Studio-Intellisense" elementFormDefault="qualified" attributeFormDefault="unqualified" vs:helpNamespace="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <xs:element name="configuration">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:any namespace="##any" processContents="lax" />
            </xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="location">
        <xs:complexType>
            <xs:choice>
                <xs:any namespace="##any" processContents="lax" />
            </xs:choice>
            <xs:attribute name="path" type="xs:string" use="optional" />
            <xs:attribute name="allowOverride" type="small_boolean_Type" use="optional" />
        </xs:complexType>
    </xs:element>
    <xs:element name="configSections" type="configSections_type" />
    <xs:complexType name="configSectionGroup_type">
        <xs:choice>
            <xs:group ref="configTypeDefinition" maxOccurs="unbounded" />
        </xs:choice>
        <xs:attribute name="name" type="xs:string" use="required" />
        <xs:attribute name="type" type="xs:string" use="optional" />
    </xs:complexType>
    <xs:complexType name="configSections_type">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:group ref="configTypeDefinition" minOccurs="0" maxOccurs="unbounded" />
        </xs:choice>
    </xs:complexType>
    <xs:group name="configTypeDefinition">
        <xs:choice>
            <xs:element name="section" type="configSection_section" minOccurs="0" maxOccurs="unbounded" />
            <xs:element name="sectionGroup" type="configSectionGroup_type" minOccurs="0" maxOccurs="unbounded" />
        </xs:choice>
    </xs:group>
    <xs:complexType name="configSection_section">
        <xs:attribute name="name" type="xs:string" use="required" />
        <xs:attribute name="type" type="xs:string" use="required" />
        <xs:attribute name="allowLocation" type="boolean_Type" use="optional" />
        <xs:attribute name="allowOverride" type="boolean_Type" use="optional" />
        <xs:attribute name="requirePermission" type="boolean_Type" use="optional" />
        <xs:attribute name="restartOnExternalChanges" type="boolean_Type" use="optional" />
        <xs:attribute name="allowDefinition" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="MachineToWebRoot" />
                    <xs:enumeration value="MachineToApplication" />
                    <xs:enumeration value="MachineOnly" />
                    <xs:enumeration value="Everywhere" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="allowExeDefinition" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="MachineOnly" />
                    <xs:enumeration value="MachineToApplication" />
                    <xs:enumeration value="MachineToLocalUser" />
                    <xs:enumeration value="MachineToRoamingUser" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:simpleType name="Infinite_or_int">
        <xs:union memberTypes="Infinite xs:int" />
    </xs:simpleType>
    <xs:simpleType name="Infinite">
        <xs:restriction base="xs:string">
            <xs:enumeration value="Infinite" />
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="small_boolean_Type">
        <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="false" />
            <xs:enumeration value="true" />
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="boolean_Type">
        <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="false" />
            <xs:enumeration value="true" />
            <xs:enumeration value="True" />
            <xs:enumeration value="False" />
        </xs:restriction>
    </xs:simpleType>
    <xs:element name="appSettings" vs:help="configuration/appSettings">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="add" vs:help="configuration/appSettings/add">
                    <xs:complexType>
                        <xs:attribute name="key" type="xs:string" use="optional" />
                        <xs:attribute name="value" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="remove" vs:help="configuration/appSettings/remove">
                    <xs:complexType>
                        <xs:attribute name="key" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="clear" vs:help="configuration/appSettings/clear">
                    <xs:complexType>
                        <!--tag is empty-->
                    </xs:complexType>
                </xs:element>
            </xs:choice>
            <xs:attribute name="file" type="xs:string" use="optional" />
            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockElements" type="xs:string" use="optional" />
            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
            <xs:attribute name="configSource" type="xs:string" use="optional" />
        </xs:complexType>
    </xs:element>


    <xs:element name="assemblyBinding" vs:help="configuration/assemblyBinding" />
    <xs:element name="configProtectedData" vs:help="configuration/configProtectedData">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="providers" vs:help="configuration/configProtectedData/providers">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/configProtectedData/providers/add">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/configProtectedData/providers/remove">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/configProtectedData/providers/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
            </xs:choice>
            <xs:attribute name="defaultProvider" type="xs:string" use="optional" />
            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockElements" type="xs:string" use="optional" />
            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
            <xs:attribute name="configSource" type="xs:string" use="optional" />
        </xs:complexType>
    </xs:element>
    <xs:element name="connectionStrings" vs:help="configuration/connectionStrings">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="add" vs:help="configuration/connectionStrings/add">
                    <xs:complexType>
                        <xs:attribute name="connectionString" type="xs:string" use="required" />
                        <xs:attribute name="name" type="xs:string" use="required" />
                        <xs:attribute name="providerName" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="remove" vs:help="configuration/connectionStrings/remove">
                    <xs:complexType>
                        <xs:attribute name="name" type="xs:string" use="required" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="clear" vs:help="configuration/connectionStrings/clear">
                    <xs:complexType>
                        <!--tag is empty-->
                    </xs:complexType>
                </xs:element>
            </xs:choice>
            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockElements" type="xs:string" use="optional" />
            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
            <xs:attribute name="configSource" type="xs:string" use="optional" />
        </xs:complexType>
    </xs:element>
    <xs:element name="mscorlib" vs:help="configuration/mscorlib" />
    <xs:element name="runtime" vs:help="configuration/runtime">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:any namespace="##any" processContents="skip" />
            </xs:choice>
            <xs:anyAttribute processContents="skip" />
        </xs:complexType>
    </xs:element>
    <xs:element name="satelliteassemblies" vs:help="configuration/satelliteassemblies" />
    <xs:element name="startup" vs:help="configuration/startup" />
    <xs:element name="system.codedom" vs:help="configuration/system.codedom" />
    <xs:element name="system.data" vs:help="configuration/system.data">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:any namespace="##any" processContents="skip" />
            </xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="system.data.dataset" vs:help="configuration/system.data.dataset" />
    <xs:element name="system.data.odbc" vs:help="configuration/system.data.odbc" />
    <xs:element name="system.data.oledb" vs:help="configuration/system.data.oledb" />
    <xs:element name="system.data.oracleclient" vs:help="configuration/system.data.oracleclient" />
    <xs:element name="system.data.sqlclient" vs:help="configuration/system.data.sqlclient" />
    <xs:element name="shiConfiguration" vs:help="configuration/shiConfiguration">
        <xs:complexType>
		<xs:choice minOccurs="0" maxOccurs="unbounded">
		    <xs:element name="shiSettings" vs:help="configuration/shiConfiguration/shiSettings">
		        <xs:complexType>
		            <xs:choice minOccurs="0" maxOccurs="unbounded">
                		<xs:element name="add" vs:help="configuration/shiConfiguration/shiSettings/add">
		                    <xs:complexType>
                		        <xs:attribute name="key" type="xs:string" use="required" />
					<xs:attribute name="prod" type="xs:string" use="required" />
					<xs:attribute name="dev" type="xs:string" use="required" />
					<xs:attribute name="desc" type="xs:string" use="optional" />
		                    </xs:complexType>
                		</xs:element>
		                <xs:element name="remove" vs:help="configuration/shiConfiguration/shiSettings/remove">
                		    <xs:complexType>
		                        <xs:attribute name="key" type="xs:string" use="optional" />
                		    </xs:complexType>
		                </xs:element>
		                <xs:element name="clear" vs:help="configuration/shiConfiguration/shiSettings/clear">
                		    <xs:complexType>
		                        <!--tag is empty-->
	               		    </xs:complexType>
		                </xs:element>
		            </xs:choice>
		        </xs:complexType>
		    </xs:element>
		</xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="system.diagnostics" vs:help="configuration/system.diagnostics">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="assert" vs:help="configuration/system.diagnostics/assert">
                    <xs:complexType>
                        <xs:attribute name="assertuienabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="logfilename" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="performanceCounters" vs:help="configuration/system.diagnostics/performanceCounters">
                    <xs:complexType>
                        <xs:attribute name="filemappingsize" type="xs:int" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="sharedListeners" vs:help="configuration/system.diagnostics/sharedListeners">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.diagnostics/sharedListeners/add">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="filter" vs:help="configuration/system.diagnostics/sharedListeners/ListenerElement/filter">
                                            <xs:complexType>
                                                <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                    <xs:attribute name="traceOutputOptions" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="Callstack" />
                                                <xs:enumeration value="DateTime" />
                                                <xs:enumeration value="LogicalOperationStack" />
                                                <xs:enumeration value="None" />
                                                <xs:enumeration value="ProcessId" />
                                                <xs:enumeration value="ThreadId" />
                                                <xs:enumeration value="Timestamp" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.diagnostics/sharedListeners/remove">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="filter" vs:help="configuration/system.diagnostics/sharedListeners/ListenerElement/filter">
                                            <xs:complexType>
                                                <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="sources" vs:help="configuration/system.diagnostics/sources">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="source" vs:help="configuration/system.diagnostics/sources/source">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="listeners" vs:help="configuration/system.diagnostics/sources/SourceElement/listeners">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.diagnostics/sources/SourceElement/listeners/add">
                                                        <xs:complexType>
                                                            <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                                <xs:element name="filter" vs:help="configuration/system.diagnostics/sources/SourceElement/listeners/ListenerElement/filter">
                                                                    <xs:complexType>
                                                                        <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                                        <xs:attribute name="type" type="xs:string" use="required" />
                                                                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                                    </xs:complexType>
                                                                </xs:element>
                                                            </xs:choice>
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                            <xs:attribute name="traceOutputOptions" use="optional">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:NMTOKEN">
                                                                        <xs:enumeration value="Callstack" />
                                                                        <xs:enumeration value="DateTime" />
                                                                        <xs:enumeration value="LogicalOperationStack" />
                                                                        <xs:enumeration value="None" />
                                                                        <xs:enumeration value="ProcessId" />
                                                                        <xs:enumeration value="ThreadId" />
                                                                        <xs:enumeration value="Timestamp" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                            <xs:attribute name="type" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="remove" vs:help="configuration/system.diagnostics/sources/SourceElement/listeners/remove">
                                                        <xs:complexType>
                                                            <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                                <xs:element name="filter" vs:help="configuration/system.diagnostics/sources/SourceElement/listeners/ListenerElement/filter">
                                                                    <xs:complexType>
                                                                        <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                                        <xs:attribute name="type" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                                    </xs:complexType>
                                                                </xs:element>
                                                            </xs:choice>
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                    <xs:attribute name="switchName" type="xs:string" use="optional" />
                                    <xs:attribute name="switchType" type="xs:string" use="optional" />
                                    <xs:attribute name="switchValue" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="switches" vs:help="configuration/system.diagnostics/switches">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.diagnostics/switches/add">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                    <xs:attribute name="value" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.diagnostics/switches/remove">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.diagnostics/switches/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="trace" vs:help="configuration/system.diagnostics/trace">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="listeners" vs:help="configuration/system.diagnostics/trace/listeners">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.diagnostics/trace/listeners/add">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="filter" vs:help="configuration/system.diagnostics/trace/listeners/ListenerElement/filter">
                                                        <xs:complexType>
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="traceOutputOptions" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="Callstack" />
                                                            <xs:enumeration value="DateTime" />
                                                            <xs:enumeration value="LogicalOperationStack" />
                                                            <xs:enumeration value="None" />
                                                            <xs:enumeration value="ProcessId" />
                                                            <xs:enumeration value="ThreadId" />
                                                            <xs:enumeration value="Timestamp" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="initializeData" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.diagnostics/trace/listeners/remove">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="filter" vs:help="configuration/system.diagnostics/trace/listeners/ListenerElement/filter">
                                                        <xs:complexType>
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.diagnostics/trace/listeners/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="autoflush" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="indentsize" type="xs:int" use="optional" />
                        <xs:attribute name="useGlobalLock" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                    </xs:complexType>
                </xs:element>
            </xs:choice>
            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockElements" type="xs:string" use="optional" />
            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
            <xs:attribute name="configSource" type="xs:string" use="optional" />
        </xs:complexType>
    </xs:element>
    <xs:element name="system.runtime.remoting" vs:help="configuration/system.runtime.remoting" />
    <xs:element name="system.webServer" vs:help="configuration/system.webServer" />
    <xs:element name="system.windows.forms" vs:help="configuration/system.windows.forms">
        <xs:complexType>
            <xs:attribute name="jitDebugging" type="small_boolean_Type" use="optional" />
            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockElements" type="xs:string" use="optional" />
            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
            <xs:attribute name="configSource" type="xs:string" use="optional" />
        </xs:complexType>
    </xs:element>
    <xs:element name="windows" vs:help="configuration/windows" />
    <xs:element name="system.net" vs:help="configuration/system.net">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="authenticationModules" vs:help="configuration/system.net/authenticationModules">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.net/authenticationModules/add">
                                <xs:complexType>
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.net/authenticationModules/remove">
                                <xs:complexType>
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.net/authenticationModules/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="connectionManagement" vs:help="configuration/system.net/connectionManagement">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.net/connectionManagement/add">
                                <xs:complexType>
                                    <xs:attribute name="address" type="xs:string" use="required" />
                                    <xs:attribute name="maxconnection" type="xs:int" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.net/connectionManagement/remove">
                                <xs:complexType>
                                    <xs:attribute name="address" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.net/connectionManagement/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="defaultProxy" vs:help="configuration/system.net/defaultProxy">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="bypasslist" vs:help="configuration/system.net/defaultProxy/bypasslist">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.net/defaultProxy/bypasslist/add">
                                            <xs:complexType>
                                                <xs:attribute name="address" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.net/defaultProxy/bypasslist/remove">
                                            <xs:complexType>
                                                <xs:attribute name="address" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.net/defaultProxy/bypasslist/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="module" vs:help="configuration/system.net/defaultProxy/module">
                                <xs:complexType>
                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="proxy" vs:help="configuration/system.net/defaultProxy/proxy">
                                <xs:complexType>
                                    <xs:attribute name="autoDetect" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="False" />
                                                <xs:enumeration value="True" />
                                                <xs:enumeration value="Unspecified" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="bypassonlocal" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="False" />
                                                <xs:enumeration value="True" />
                                                <xs:enumeration value="Unspecified" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="proxyaddress" type="xs:string" use="optional" />
                                    <xs:attribute name="scriptLocation" type="xs:string" use="optional" />
                                    <xs:attribute name="usesystemdefault" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="False" />
                                                <xs:enumeration value="True" />
                                                <xs:enumeration value="Unspecified" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="useDefaultCredentials" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="requestCaching" vs:help="configuration/system.net/requestCaching">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="defaultFtpCachePolicy" vs:help="configuration/system.net/requestCaching/defaultFtpCachePolicy">
                                <xs:complexType>
                                    <xs:attribute name="policyLevel" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="BypassCache" />
                                                <xs:enumeration value="CacheIfAvailable" />
                                                <xs:enumeration value="CacheOnly" />
                                                <xs:enumeration value="Default" />
                                                <xs:enumeration value="NoCacheNoStore" />
                                                <xs:enumeration value="Reload" />
                                                <xs:enumeration value="Revalidate" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="defaultHttpCachePolicy" vs:help="configuration/system.net/requestCaching/defaultHttpCachePolicy">
                                <xs:complexType>
                                    <xs:attribute name="maximumAge" type="xs:string" use="optional" />
                                    <xs:attribute name="maximumStale" type="xs:string" use="optional" />
                                    <xs:attribute name="minimumFresh" type="xs:string" use="optional" />
                                    <xs:attribute name="policyLevel" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="BypassCache" />
                                                <xs:enumeration value="CacheIfAvailable" />
                                                <xs:enumeration value="CacheOnly" />
                                                <xs:enumeration value="CacheOrNextCacheOnly" />
                                                <xs:enumeration value="Default" />
                                                <xs:enumeration value="NoCacheNoStore" />
                                                <xs:enumeration value="Refresh" />
                                                <xs:enumeration value="Reload" />
                                                <xs:enumeration value="Revalidate" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="defaultPolicyLevel" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="BypassCache" />
                                    <xs:enumeration value="CacheIfAvailable" />
                                    <xs:enumeration value="CacheOnly" />
                                    <xs:enumeration value="Default" />
                                    <xs:enumeration value="NoCacheNoStore" />
                                    <xs:enumeration value="Reload" />
                                    <xs:enumeration value="Revalidate" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="disableAllCaching" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="isPrivateCache" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="unspecifiedMaximumAge" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="settings" vs:help="configuration/system.net/settings">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="httpWebRequest" vs:help="configuration/system.net/settings/httpWebRequest">
                                <xs:complexType>
                                    <xs:attribute name="maximumErrorResponseLength" type="xs:int" use="optional" />
                                    <xs:attribute name="maximumResponseHeadersLength" type="xs:int" use="optional" />
                                    <xs:attribute name="maximumUnauthorizedUploadLength" type="xs:int" use="optional" />
                                    <xs:attribute name="useUnsafeHeaderParsing" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="ipv6" vs:help="configuration/system.net/settings/ipv6">
                                <xs:complexType>
                                    <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="performanceCounters" vs:help="configuration/system.net/settings/performanceCounters">
                                <xs:complexType>
                                    <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="servicePointManager" vs:help="configuration/system.net/settings/servicePointManager">
                                <xs:complexType>
                                    <xs:attribute name="checkCertificateName" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="checkCertificateRevocationList" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="dnsRefreshTimeout" type="xs:int" use="optional" />
                                    <xs:attribute name="enableDnsRoundRobin" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="expect100Continue" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="useNagleAlgorithm" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="socket" vs:help="configuration/system.net/settings/socket">
                                <xs:complexType>
                                    <xs:attribute name="alwaysUseCompletionPortsForAccept" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="alwaysUseCompletionPortsForConnect" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="webProxyScript" vs:help="configuration/system.net/settings/webProxyScript">
                                <xs:complexType>
                                    <xs:attribute name="downloadTimeout" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="webRequestModules" vs:help="configuration/system.net/webRequestModules">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.net/webRequestModules/add">
                                <xs:complexType>
                                    <xs:attribute name="prefix" type="xs:string" use="required" />
                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.net/webRequestModules/remove">
                                <xs:complexType>
                                    <xs:attribute name="prefix" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.net/webRequestModules/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="mailSettings" vs:help="configuration/system.net/mailSettings">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="smtp" vs:help="configuration/system.net/mailSettings/smtp">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="network" vs:help="configuration/system.net/mailSettings/smtp/network">
                                            <xs:complexType>
                                                <xs:attribute name="defaultCredentials" type="small_boolean_Type" use="optional" />
                                                <xs:attribute name="host" type="xs:string" use="optional" />
                                                <xs:attribute name="password" type="xs:string" use="optional" />
                                                <xs:attribute name="port" type="xs:int" use="optional" />
                                                <xs:attribute name="userName" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="specifiedPickupDirectory" vs:help="configuration/system.net/mailSettings/smtp/specifiedPickupDirectory">
                                            <xs:complexType>
                                                <xs:attribute name="pickupDirectoryLocation" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="deliveryMethod" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="Network" />
                                                <xs:enumeration value="PickupDirectoryFromIis" />
                                                <xs:enumeration value="SpecifiedPickupDirectory" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="from" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="configSource" type="xs:string" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="system.transactions" vs:help="configuration/system.transactions">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="defaultSettings" vs:help="configuration/system.transactions/defaultSettings">
                    <xs:complexType>
                        <xs:attribute name="distributedTransactionManagerName" type="xs:string" use="optional" />
                        <xs:attribute name="timeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="machineSettings" vs:help="configuration/system.transactions/machineSettings">
                    <xs:complexType>
                        <xs:attribute name="maxTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="system.web" vs:help="configuration/system.web">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="anonymousIdentification" vs:help="configuration/system.web/anonymousIdentification">
                    <xs:complexType>
                        <xs:attribute name="cookieless" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="AutoDetect" />
                                    <xs:enumeration value="UseCookies" />
                                    <xs:enumeration value="UseDeviceProfile" />
                                    <xs:enumeration value="UseUri" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieName" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookiePath" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieProtection" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="All" />
                                    <xs:enumeration value="Encryption" />
                                    <xs:enumeration value="None" />
                                    <xs:enumeration value="Validation" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieRequireSSL" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieSlidingExpiration" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="domain" type="xs:string" use="optional" />
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="authentication" vs:help="configuration/system.web/authentication">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="forms" vs:help="configuration/system.web/authentication/forms">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="credentials" vs:help="configuration/system.web/authentication/forms/credentials">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="user" vs:help="configuration/system.web/authentication/forms/credentials/user">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="0" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="password" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="0" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="passwordFormat" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="Clear" />
                                                            <xs:enumeration value="MD5" />
                                                            <xs:enumeration value="SHA1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="cookieless" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="AutoDetect" />
                                                <xs:enumeration value="UseCookies" />
                                                <xs:enumeration value="UseDeviceProfile" />
                                                <xs:enumeration value="UseUri" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="defaultUrl" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="domain" type="xs:string" use="optional" />
                                    <xs:attribute name="enableCrossAppRedirects" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="loginUrl" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="name" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="path" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="protection" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="All" />
                                                <xs:enumeration value="Encryption" />
                                                <xs:enumeration value="None" />
                                                <xs:enumeration value="Validation" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="requireSSL" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="slidingExpiration" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="timeout" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="passport" vs:help="configuration/system.web/authentication/passport">
                                <xs:complexType>
                                    <xs:attribute name="redirectUrl" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="0" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="mode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Forms" />
                                    <xs:enumeration value="None" />
                                    <xs:enumeration value="Passport" />
                                    <xs:enumeration value="Windows" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="authorization" vs:help="configuration/system.web/authorization">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="allow" vs:help="configuration/system.web/authorization/allow">
                                <xs:complexType>
                                    <xs:attribute name="roles" type="xs:string" use="optional" />
                                    <xs:attribute name="users" type="xs:string" use="optional" />
                                    <xs:attribute name="verbs" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="deny" vs:help="configuration/system.web/authorization/deny">
                                <xs:complexType>
                                    <xs:attribute name="roles" type="xs:string" use="optional" />
                                    <xs:attribute name="users" type="xs:string" use="optional" />
                                    <xs:attribute name="verbs" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="browserCaps" vs:help="configuration/system.web/browserCaps" />
                <xs:element name="clientTarget" vs:help="configuration/system.web/clientTarget">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.web/clientTarget/add">
                                <xs:complexType>
                                    <xs:attribute name="alias" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="userAgent" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.web/clientTarget/remove">
                                <xs:complexType>
                                    <xs:attribute name="alias" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.web/clientTarget/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="compilation" vs:help="configuration/system.web/compilation">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="assemblies" vs:help="configuration/system.web/compilation/assemblies">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/compilation/assemblies/add">
                                            <xs:complexType>
                                                <xs:attribute name="assembly" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/compilation/assemblies/remove">
                                            <xs:complexType>
                                                <xs:attribute name="assembly" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/compilation/assemblies/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="buildProviders" vs:help="configuration/system.web/compilation/buildProviders">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/compilation/buildProviders/add">
                                            <xs:complexType>
                                                <xs:attribute name="extension" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/compilation/buildProviders/remove">
                                            <xs:complexType>
                                                <xs:attribute name="extension" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/compilation/buildProviders/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="codeSubDirectories" vs:help="configuration/system.web/compilation/codeSubDirectories">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/compilation/codeSubDirectories/add">
                                            <xs:complexType>
                                                <xs:attribute name="directoryName" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:whiteSpace value="collapse" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="expressionBuilders" vs:help="configuration/system.web/compilation/expressionBuilders">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/compilation/expressionBuilders/add">
                                            <xs:complexType>
                                                <xs:attribute name="expressionPrefix" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/compilation/expressionBuilders/remove">
                                            <xs:complexType>
                                                <xs:attribute name="expressionPrefix" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/compilation/expressionBuilders/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="assemblyPostProcessorType" type="xs:string" use="optional" />
                        <xs:attribute name="batch" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="batchTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="debug" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="defaultLanguage" type="xs:string" use="optional" />
                        <xs:attribute name="explicit" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="maxBatchGeneratedFileSize" type="xs:int" use="optional" />
                        <xs:attribute name="maxBatchSize" type="xs:int" use="optional" />
                        <xs:attribute name="numRecompilesBeforeAppRestart" type="xs:int" use="optional" />
                        <xs:attribute name="strict" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="tempDirectory" type="xs:string" use="optional" />
                        <xs:attribute name="urlLinePragmas" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="customErrors" vs:help="configuration/system.web/customErrors">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="error" vs:help="configuration/system.web/customErrors/error">
                                <xs:complexType>
                                    <xs:attribute name="redirect" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="statusCode" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:int">
                                                <xs:minInclusive value="100" />
                                                <xs:maxInclusive value="999" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="defaultRedirect" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="mode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Off" />
                                    <xs:enumeration value="On" />
                                    <xs:enumeration value="RemoteOnly" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="deployment" vs:help="configuration/system.web/deployment">
                    <xs:complexType>
                        <xs:attribute name="retail" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="deviceFilters" vs:help="configuration/system.web/deviceFilters">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="filter" vs:help="configuration/system.web/deviceFilters/filter">
                                <xs:complexType>
                                    <xs:attribute name="argument" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="compare" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                    <xs:attribute name="method" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="globalization" vs:help="configuration/system.web/globalization">
                    <xs:complexType>
                        <xs:attribute name="culture" type="xs:string" use="optional" />
                        <xs:attribute name="enableBestFitResponseEncoding" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableClientBasedCulture" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="fileEncoding" type="xs:string" use="optional" />
                        <xs:attribute name="requestEncoding" type="xs:string" use="optional" />
                        <xs:attribute name="resourceProviderFactoryType" type="xs:string" use="optional" />
                        <xs:attribute name="responseEncoding" type="xs:string" use="optional" />
                        <xs:attribute name="responseHeaderEncoding" type="xs:string" use="optional" />
                        <xs:attribute name="uiCulture" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="healthMonitoring" vs:help="configuration/system.web/healthMonitoring">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="bufferModes" vs:help="configuration/system.web/healthMonitoring/bufferModes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/healthMonitoring/bufferModes/add">
                                            <xs:complexType>
                                                <xs:attribute name="maxBufferSize" use="required">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="1" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="maxBufferThreads" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="1" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="maxFlushSize" use="required">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="1" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="regularFlushInterval" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="urgentFlushInterval" type="xs:string" use="required" />
                                                <xs:attribute name="urgentFlushThreshold" use="required">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="1" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/healthMonitoring/bufferModes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/healthMonitoring/bufferModes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="eventMappings" vs:help="configuration/system.web/healthMonitoring/eventMappings">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/healthMonitoring/eventMappings/add">
                                            <xs:complexType>
                                                <xs:attribute name="endEventCode" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="0" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="startEventCode" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="0" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/healthMonitoring/eventMappings/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/healthMonitoring/eventMappings/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="profiles" vs:help="configuration/system.web/healthMonitoring/profiles">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/healthMonitoring/profiles/add">
                                            <xs:complexType>
                                                <xs:attribute name="custom" type="xs:string" use="optional" />
                                                <xs:attribute name="maxLimit" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="0" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="minInstances" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="minInterval" type="xs:string" use="optional" />
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/healthMonitoring/profiles/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/healthMonitoring/profiles/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="providers" vs:help="configuration/system.web/healthMonitoring/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/healthMonitoring/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/healthMonitoring/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/healthMonitoring/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="rules" vs:help="configuration/system.web/healthMonitoring/rules">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/healthMonitoring/rules/add">
                                            <xs:complexType>
                                                <xs:attribute name="custom" type="xs:string" use="optional" />
                                                <xs:attribute name="eventName" type="xs:string" use="required" />
                                                <xs:attribute name="maxLimit" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union memberTypes="xs:int Infinite">
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:int">
                                                                    <xs:minInclusive value="0" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="minInstances" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="minInterval" type="xs:string" use="optional" />
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="profile" type="xs:string" use="optional" />
                                                <xs:attribute name="provider" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/healthMonitoring/rules/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/healthMonitoring/rules/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="heartbeatInterval" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="hostingEnvironment" vs:help="configuration/system.web/hostingEnvironment">
                    <xs:complexType>
                        <xs:attribute name="idleTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="shadowCopyBinAssemblies" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="shutdownTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="httpCookies" vs:help="configuration/system.web/httpCookies">
                    <xs:complexType>
                        <xs:attribute name="domain" type="xs:string" use="optional" />
                        <xs:attribute name="httpOnlyCookies" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="requireSSL" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="httpHandlers" vs:help="configuration/system.web/httpHandlers">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.web/httpHandlers/add">
                                <xs:complexType>
                                    <xs:attribute name="path" type="xs:string" use="required" />
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                    <xs:attribute name="validate" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="verb" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.web/httpHandlers/remove">
                                <xs:complexType>
                                    <xs:attribute name="path" type="xs:string" use="required" />
                                    <xs:attribute name="verb" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.web/httpHandlers/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="httpModules" vs:help="configuration/system.web/httpModules">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.web/httpModules/add">
                                <xs:complexType>
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.web/httpModules/remove">
                                <xs:complexType>
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.web/httpModules/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="httpRuntime" vs:help="configuration/system.web/httpRuntime">
                    <xs:complexType>
                        <xs:attribute name="apartmentThreading" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="appRequestQueueLimit" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="delayNotificationTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="enable" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableHeaderChecking" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableKernelOutputCache" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableVersionHeader" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="executionTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="maxRequestLength" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="maxWaitChangeNotification" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="minFreeThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="minLocalRequestFreeThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="requestLengthDiskThreshold" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="requireRootedSaveAsPath" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="sendCacheControlHeader" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="shutdownTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="useFullyQualifiedRedirectUrl" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="waitChangeNotification" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="identity" vs:help="configuration/system.web/identity">
                    <xs:complexType>
                        <xs:attribute name="impersonate" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="password" type="xs:string" use="optional" />
                        <xs:attribute name="userName" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="machineKey" vs:help="configuration/system.web/machineKey">
                    <xs:complexType>
                        <xs:attribute name="decryption" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="decryptionKey" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="validation" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="AES" />
                                    <xs:enumeration value="MD5" />
                                    <xs:enumeration value="SHA1" />
                                    <xs:enumeration value="3DES" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="validationKey" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="membership" vs:help="configuration/system.web/membership">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="providers" vs:help="configuration/system.web/membership/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/membership/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/membership/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/membership/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="defaultProvider" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="hashAlgorithmType" type="xs:string" use="optional" />
                        <xs:attribute name="userIsOnlineTimeWindow" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="mobileControls" vs:help="configuration/system.web/mobileControls">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="device" vs:help="configuration/system.web/mobileControls/device">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="control" vs:help="configuration/system.web/mobileControls/DeviceElement/control">
                                            <xs:complexType>
                                                <xs:attribute name="adapter" type="xs:string" use="required" />
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/mobileControls/DeviceElement/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/mobileControls/DeviceElement/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="inheritsFrom" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="pageAdapter" type="xs:string" use="optional" />
                                    <xs:attribute name="predicateClass" type="xs:string" use="optional" />
                                    <xs:attribute name="predicateMethod" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.web/mobileControls/remove">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="control" vs:help="configuration/system.web/mobileControls/DeviceElement/control">
                                            <xs:complexType>
                                                <xs:attribute name="adapter" type="xs:string" use="required" />
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/mobileControls/DeviceElement/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/mobileControls/DeviceElement/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.web/mobileControls/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="allowCustomAttributes" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookielessDataDictionaryType" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="sessionStateHistorySize" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="pages" vs:help="configuration/system.web/pages">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="controls" vs:help="configuration/system.web/pages/controls">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/pages/controls/add">
                                            <xs:complexType>
                                                <xs:attribute name="assembly" type="xs:string" use="optional" />
                                                <xs:attribute name="namespace" type="xs:string" use="optional" />
                                                <xs:attribute name="src" type="xs:string" use="optional" />
                                                <xs:attribute name="tagName" type="xs:string" use="optional" />
                                                <xs:attribute name="tagPrefix" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="namespaces" vs:help="configuration/system.web/pages/namespaces">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/pages/namespaces/add">
                                            <xs:complexType>
                                                <xs:attribute name="namespace" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/pages/namespaces/remove">
                                            <xs:complexType>
                                                <xs:attribute name="namespace" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/pages/namespaces/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="autoImportVBNamespace" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="tagMapping" vs:help="configuration/system.web/pages/tagMapping">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/pages/tagMapping/add">
                                            <xs:complexType>
                                                <xs:attribute name="mappedTagType" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="tagType" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/pages/tagMapping/remove">
                                            <xs:complexType>
                                                <xs:attribute name="tagType" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/pages/tagMapping/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="asyncTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="autoEventWireup" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="buffer" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="compilationMode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Always" />
                                    <xs:enumeration value="Auto" />
                                    <xs:enumeration value="Never" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="enableEventValidation" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableSessionState" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="false" />
                                    <xs:enumeration value="ReadOnly" />
                                    <xs:enumeration value="true" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="enableViewState" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="enableViewStateMac" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="maintainScrollPositionOnPostBack" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="masterPageFile" type="xs:string" use="optional" />
                        <xs:attribute name="maxPageStateFieldLength" type="xs:int" use="optional" />
                        <xs:attribute name="pageBaseType" type="xs:string" use="optional" />
                        <xs:attribute name="pageParserFilterType" type="xs:string" use="optional" />
                        <xs:attribute name="smartNavigation" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="styleSheetTheme" type="xs:string" use="optional" />
                        <xs:attribute name="theme" type="xs:string" use="optional" />
                        <xs:attribute name="userControlBaseType" type="xs:string" use="optional" />
                        <xs:attribute name="validateRequest" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="viewStateEncryptionMode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Always" />
                                    <xs:enumeration value="Auto" />
                                    <xs:enumeration value="Never" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="processModel" vs:help="configuration/system.web/processModel">
                    <xs:complexType>
                        <xs:attribute name="autoConfig" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="clientConnectedCheck" type="xs:string" use="optional" />
                        <xs:attribute name="comAuthenticationLevel" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Call" />
                                    <xs:enumeration value="Connect" />
                                    <xs:enumeration value="Default" />
                                    <xs:enumeration value="None" />
                                    <xs:enumeration value="Pkt" />
                                    <xs:enumeration value="PktIntegrity" />
                                    <xs:enumeration value="PktPrivacy" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="comImpersonationLevel" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Anonymous" />
                                    <xs:enumeration value="Default" />
                                    <xs:enumeration value="Delegate" />
                                    <xs:enumeration value="Identify" />
                                    <xs:enumeration value="Impersonate" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cpuMask" type="xs:int" use="optional" />
                        <xs:attribute name="enable" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="idleTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="logLevel" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="All" />
                                    <xs:enumeration value="Errors" />
                                    <xs:enumeration value="None" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="maxAppDomains" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                    <xs:maxInclusive value="2147483646" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="maxIoThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                    <xs:maxInclusive value="2147483646" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="maxWorkerThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                    <xs:maxInclusive value="2147483646" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="memoryLimit" type="xs:int" use="optional" />
                        <xs:attribute name="minIoThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                    <xs:maxInclusive value="2147483646" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="minWorkerThreads" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                    <xs:maxInclusive value="2147483646" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="password" type="xs:string" use="optional" />
                        <xs:attribute name="pingFrequency" type="xs:string" use="optional" />
                        <xs:attribute name="pingTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="requestLimit" use="optional">
                            <xs:simpleType>
                                <xs:union memberTypes="xs:int Infinite">
                                    <xs:simpleType>
                                        <xs:restriction base="xs:int">
                                            <xs:minInclusive value="0" />
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:union>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="requestQueueLimit" use="optional">
                            <xs:simpleType>
                                <xs:union memberTypes="xs:int Infinite">
                                    <xs:simpleType>
                                        <xs:restriction base="xs:int">
                                            <xs:minInclusive value="0" />
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:union>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="responseDeadlockInterval" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="responseRestartDeadlockInterval" type="xs:string" use="optional" />
                        <xs:attribute name="restartQueueLimit" use="optional">
                            <xs:simpleType>
                                <xs:union memberTypes="xs:int Infinite">
                                    <xs:simpleType>
                                        <xs:restriction base="xs:int">
                                            <xs:minInclusive value="0" />
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:union>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="serverErrorMessageFile" type="xs:string" use="optional" />
                        <xs:attribute name="shutdownTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="timeout" type="xs:string" use="optional" />
                        <xs:attribute name="userName" type="xs:string" use="optional" />
                        <xs:attribute name="webGarden" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="profile" vs:help="configuration/system.web/profile">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="properties" vs:help="configuration/system.web/profile/properties">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/profile/properties/add">
                                            <xs:complexType>
                                                <xs:attribute name="allowAnonymous" type="small_boolean_Type" use="optional" />
                                                <xs:attribute name="customProviderData" type="xs:string" use="optional" />
                                                <xs:attribute name="defaultValue" type="xs:string" use="optional" />
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="provider" type="xs:string" use="optional" />
                                                <xs:attribute name="readOnly" type="small_boolean_Type" use="optional" />
                                                <xs:attribute name="serializeAs" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="Binary" />
                                                            <xs:enumeration value="ProviderSpecific" />
                                                            <xs:enumeration value="String" />
                                                            <xs:enumeration value="Xml" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/profile/properties/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/profile/properties/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="group" vs:help="configuration/system.web/profile/properties/group/group">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.web/profile/properties/group/ProfileGroupSettings/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="allowAnonymous" type="small_boolean_Type" use="optional" />
                                                            <xs:attribute name="customProviderData" type="xs:string" use="optional" />
                                                            <xs:attribute name="defaultValue" type="xs:string" use="optional" />
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                            <xs:attribute name="provider" type="xs:string" use="optional" />
                                                            <xs:attribute name="readOnly" type="small_boolean_Type" use="optional" />
                                                            <xs:attribute name="serializeAs" use="optional">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:NMTOKEN">
                                                                        <xs:enumeration value="Binary" />
                                                                        <xs:enumeration value="ProviderSpecific" />
                                                                        <xs:enumeration value="String" />
                                                                        <xs:enumeration value="Xml" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="type" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="remove" vs:help="configuration/system.web/profile/properties/group/ProfileGroupSettings/remove">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="clear" vs:help="configuration/system.web/profile/properties/group/ProfileGroupSettings/clear">
                                                        <xs:complexType>
                                                            <!--tag is empty-->
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="providers" vs:help="configuration/system.web/profile/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/profile/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/profile/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/profile/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="automaticSaveEnabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="defaultProvider" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="inherits" type="xs:string" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="roleManager" vs:help="configuration/system.web/roleManager">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="providers" vs:help="configuration/system.web/roleManager/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/roleManager/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/roleManager/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/roleManager/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="cacheRolesInCookie" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieName" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookiePath" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieProtection" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="All" />
                                    <xs:enumeration value="Encryption" />
                                    <xs:enumeration value="None" />
                                    <xs:enumeration value="Validation" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieRequireSSL" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieSlidingExpiration" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieTimeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="createPersistentCookie" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="defaultProvider" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                    <xs:whiteSpace value="collapse" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="domain" type="xs:string" use="optional" />
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="maxCachedResults" type="xs:int" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="securityPolicy" vs:help="configuration/system.web/securityPolicy">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="trustLevel" vs:help="configuration/system.web/securityPolicy/trustLevel">
                                <xs:complexType>
                                    <xs:attribute name="name" use="required">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="policyFile" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="sessionPageState" vs:help="configuration/system.web/sessionPageState">
                    <xs:complexType>
                        <xs:attribute name="historySize" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="sessionState" vs:help="configuration/system.web/sessionState">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="providers" vs:help="configuration/system.web/sessionState/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/sessionState/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/sessionState/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/sessionState/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="allowCustomSqlDatabase" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="cookieless" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="AutoDetect" />
                                    <xs:enumeration value="UseCookies" />
                                    <xs:enumeration value="UseDeviceProfile" />
                                    <xs:enumeration value="UseUri" />
                                    <xs:enumeration value="true" />
                                    <xs:enumeration value="false" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="cookieName" type="xs:string" use="optional" />
                        <xs:attribute name="customProvider" type="xs:string" use="optional" />
                        <xs:attribute name="mode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Custom" />
                                    <xs:enumeration value="InProc" />
                                    <xs:enumeration value="Off" />
                                    <xs:enumeration value="SQLServer" />
                                    <xs:enumeration value="StateServer" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="partitionResolverType" type="xs:string" use="optional" />
                        <xs:attribute name="regenerateExpiredSessionId" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="sessionIDManagerType" type="xs:string" use="optional" />
                        <xs:attribute name="sqlCommandTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="sqlConnectionString" type="xs:string" use="optional" />
                        <xs:attribute name="stateConnectionString" type="xs:string" use="optional" />
                        <xs:attribute name="stateNetworkTimeout" type="xs:string" use="optional" />
                        <xs:attribute name="timeout" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:pattern value="([0-9.]+:){0,1}([0-9]+:){0,1}[0-9.]+" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="useHostingIdentity" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="siteMap" vs:help="configuration/system.web/siteMap">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="providers" vs:help="configuration/system.web/siteMap/providers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/siteMap/providers/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/siteMap/providers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/siteMap/providers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="defaultProvider" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="trace" vs:help="configuration/system.web/trace">
                    <xs:complexType>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="localOnly" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="mostRecent" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="pageOutput" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="requestLimit" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:int">
                                    <xs:minInclusive value="0" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="traceMode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="SortByCategory" />
                                    <xs:enumeration value="SortByTime" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="writeToDiagnosticsTrace" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="trust" vs:help="configuration/system.web/trust">
                    <xs:complexType>
                        <xs:attribute name="level" use="required">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="originUrl" type="xs:string" use="optional" />
                        <xs:attribute name="processRequestInApplicationTrust" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="urlMappings" vs:help="configuration/system.web/urlMappings">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.web/urlMappings/add">
                                <xs:complexType>
                                    <xs:attribute name="mappedUrl" type="xs:string" use="required" />
                                    <xs:attribute name="url" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.web/urlMappings/remove">
                                <xs:complexType>
                                    <xs:attribute name="url" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.web/urlMappings/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="webControls" vs:help="configuration/system.web/webControls">
                    <xs:complexType>
                        <xs:attribute name="clientScriptsLocation" use="required">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:minLength value="1" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="webParts" vs:help="configuration/system.web/webParts">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="personalization" vs:help="configuration/system.web/webParts/personalization">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="authorization" vs:help="configuration/system.web/webParts/personalization/authorization">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="allow" vs:help="configuration/system.web/webParts/personalization/authorization/allow">
                                                        <xs:complexType>
                                                            <xs:attribute name="roles" type="xs:string" use="optional" />
                                                            <xs:attribute name="users" type="xs:string" use="optional" />
                                                            <xs:attribute name="verbs" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="deny" vs:help="configuration/system.web/webParts/personalization/authorization/deny">
                                                        <xs:complexType>
                                                            <xs:attribute name="roles" type="xs:string" use="optional" />
                                                            <xs:attribute name="users" type="xs:string" use="optional" />
                                                            <xs:attribute name="verbs" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="providers" vs:help="configuration/system.web/webParts/personalization/providers">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.web/webParts/personalization/providers/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                            <xs:attribute name="type" type="xs:string" use="required" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                            <xs:anyAttribute processContents="skip" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="remove" vs:help="configuration/system.web/webParts/personalization/providers/remove">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" type="xs:string" use="required" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="clear" vs:help="configuration/system.web/webParts/personalization/providers/clear">
                                                        <xs:complexType>
                                                            <!--tag is empty-->
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="defaultProvider" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                                <xs:minLength value="1" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="transformers" vs:help="configuration/system.web/webParts/transformers">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webParts/transformers/add">
                                            <xs:complexType>
                                                <xs:anyAttribute processContents="skip" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webParts/transformers/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="required">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webParts/transformers/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="enableExport" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="webServices" vs:help="configuration/system.web/webServices">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="conformanceWarnings" vs:help="configuration/system.web/webServices/conformanceWarnings">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/conformanceWarnings/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:NMTOKEN">
                                                                    <xs:enumeration value="BasicProfile1_1" />
                                                                    <xs:enumeration value="None" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:string" />
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/conformanceWarnings/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:NMTOKEN">
                                                                    <xs:enumeration value="BasicProfile1_1" />
                                                                    <xs:enumeration value="None" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:string" />
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/conformanceWarnings/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="diagnostics" vs:help="configuration/system.web/webServices/diagnostics">
                                <xs:complexType>
                                    <xs:attribute name="suppressReturningExceptions" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="protocols" vs:help="configuration/system.web/webServices/protocols">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/protocols/add">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:NMTOKEN">
                                                                    <xs:enumeration value="AnyHttpSoap" />
                                                                    <xs:enumeration value="Documentation" />
                                                                    <xs:enumeration value="HttpGet" />
                                                                    <xs:enumeration value="HttpPost" />
                                                                    <xs:enumeration value="HttpPostLocalhost" />
                                                                    <xs:enumeration value="HttpSoap" />
                                                                    <xs:enumeration value="HttpSoap12" />
                                                                    <xs:enumeration value="Unknown" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:string" />
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/protocols/remove">
                                            <xs:complexType>
                                                <xs:attribute name="name" use="optional">
                                                    <xs:simpleType>
                                                        <xs:union>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:NMTOKEN">
                                                                    <xs:enumeration value="AnyHttpSoap" />
                                                                    <xs:enumeration value="Documentation" />
                                                                    <xs:enumeration value="HttpGet" />
                                                                    <xs:enumeration value="HttpPost" />
                                                                    <xs:enumeration value="HttpPostLocalhost" />
                                                                    <xs:enumeration value="HttpSoap" />
                                                                    <xs:enumeration value="HttpSoap12" />
                                                                    <xs:enumeration value="Unknown" />
                                                                </xs:restriction>
                                                            </xs:simpleType>
                                                            <xs:simpleType>
                                                                <xs:restriction base="xs:string" />
                                                            </xs:simpleType>
                                                        </xs:union>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/protocols/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="serviceDescriptionFormatExtensionTypes" vs:help="configuration/system.web/webServices/serviceDescriptionFormatExtensionTypes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/serviceDescriptionFormatExtensionTypes/add">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/serviceDescriptionFormatExtensionTypes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/serviceDescriptionFormatExtensionTypes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapEnvelopeProcessing" vs:help="configuration/system.web/webServices/soapEnvelopeProcessing">
                                <xs:complexType>
                                    <xs:attribute name="strict" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="readTimeout" use="optional">
                                        <xs:simpleType>
                                            <xs:union memberTypes="xs:int Infinite">
                                                <xs:simpleType>
                                                    <xs:restriction base="xs:int" />
                                                </xs:simpleType>
                                            </xs:union>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapExtensionImporterTypes" vs:help="configuration/system.web/webServices/soapExtensionImporterTypes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/soapExtensionImporterTypes/add">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/soapExtensionImporterTypes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/soapExtensionImporterTypes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapExtensionReflectorTypes" vs:help="configuration/system.web/webServices/soapExtensionReflectorTypes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/soapExtensionReflectorTypes/add">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/soapExtensionReflectorTypes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/soapExtensionReflectorTypes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapExtensionTypes" vs:help="configuration/system.web/webServices/soapExtensionTypes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/soapExtensionTypes/add">
                                            <xs:complexType>
                                                <xs:attribute name="group" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="High" />
                                                            <xs:enumeration value="Low" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="priority" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="0" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/soapExtensionTypes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="group" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="High" />
                                                            <xs:enumeration value="Low" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="priority" use="optional">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:int">
                                                            <xs:minInclusive value="0" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/soapExtensionTypes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapServerProtocolFactory" vs:help="configuration/system.web/webServices/soapServerProtocolFactory">
                                <xs:complexType>
                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="soapTransportImporterTypes" vs:help="configuration/system.web/webServices/soapTransportImporterTypes">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.web/webServices/soapTransportImporterTypes/add">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.web/webServices/soapTransportImporterTypes/remove">
                                            <xs:complexType>
                                                <xs:attribute name="type" type="xs:string" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.web/webServices/soapTransportImporterTypes/clear">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="wsdlHelpGenerator" vs:help="configuration/system.web/webServices/wsdlHelpGenerator">
                                <xs:complexType>
                                    <xs:attribute name="href" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="xhtmlConformance" vs:help="configuration/system.web/xhtmlConformance">
                    <xs:complexType>
                        <xs:attribute name="mode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Legacy" />
                                    <xs:enumeration value="Strict" />
                                    <xs:enumeration value="Transitional" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="caching" vs:help="configuration/system.web/caching">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="cache" vs:help="configuration/system.web/caching/cache">
                                <xs:complexType>
                                    <xs:attribute name="disableExpiration" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="disableMemoryCollection" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="percentagePhysicalMemoryUsedLimit" use="optional">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:int">
                                                <xs:minInclusive value="0" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="privateBytesLimit" type="xs:int" use="optional" />
                                    <xs:attribute name="privateBytesPollTime" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="configSource" type="xs:string" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="outputCache" vs:help="configuration/system.web/caching/outputCache">
                                <xs:complexType>
                                    <xs:attribute name="enableFragmentCache" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="enableKernelCacheForVaryByStar" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="enableOutputCache" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="omitVaryStar" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="sendCacheControlHeader" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="configSource" type="xs:string" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="outputCacheSettings" vs:help="configuration/system.web/caching/outputCacheSettings">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="outputCacheProfiles" vs:help="configuration/system.web/caching/outputCacheSettings/outputCacheProfiles">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.web/caching/outputCacheSettings/outputCacheProfiles/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="duration" type="xs:int" use="optional" />
                                                            <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                                                            <xs:attribute name="location" use="optional">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:NMTOKEN">
                                                                        <xs:enumeration value="Any" />
                                                                        <xs:enumeration value="Client" />
                                                                        <xs:enumeration value="Downstream" />
                                                                        <xs:enumeration value="None" />
                                                                        <xs:enumeration value="Server" />
                                                                        <xs:enumeration value="ServerAndClient" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="name" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="1" />
                                                                        <xs:whiteSpace value="collapse" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="noStore" type="small_boolean_Type" use="optional" />
                                                            <xs:attribute name="sqlDependency" type="xs:string" use="optional" />
                                                            <xs:attribute name="varyByControl" type="xs:string" use="optional" />
                                                            <xs:attribute name="varyByCustom" type="xs:string" use="optional" />
                                                            <xs:attribute name="varyByHeader" type="xs:string" use="optional" />
                                                            <xs:attribute name="varyByParam" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="remove" vs:help="configuration/system.web/caching/outputCacheSettings/outputCacheProfiles/remove">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="1" />
                                                                        <xs:whiteSpace value="collapse" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="clear" vs:help="configuration/system.web/caching/outputCacheSettings/outputCacheProfiles/clear">
                                                        <xs:complexType>
                                                            <!--tag is empty-->
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="configSource" type="xs:string" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="sqlCacheDependency" vs:help="configuration/system.web/caching/sqlCacheDependency">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="databases" vs:help="configuration/system.web/caching/sqlCacheDependency/databases">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.web/caching/sqlCacheDependency/databases/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="connectionStringName" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="1" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="name" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="1" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="pollTime" type="xs:int" use="optional" />
                                                            <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                            <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="remove" vs:help="configuration/system.web/caching/sqlCacheDependency/databases/remove">
                                                        <xs:complexType>
                                                            <xs:attribute name="name" use="required">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:string">
                                                                        <xs:minLength value="1" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                        </xs:complexType>
                                                    </xs:element>
                                                    <xs:element name="clear" vs:help="configuration/system.web/caching/sqlCacheDependency/databases/clear">
                                                        <xs:complexType>
                                                            <!--tag is empty-->
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                                <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                                <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="enabled" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="pollTime" type="xs:int" use="optional" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                    <xs:attribute name="configSource" type="xs:string" use="optional" />
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:complexType>
    </xs:element>
    <xs:element name="system.xml.serialization" vs:help="configuration/system.xml.serialization">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="dateTimeSerialization" vs:help="configuration/system.xml.serialization/dateTimeSerialization">
                    <xs:complexType>
                        <xs:attribute name="mode" use="optional">
                            <xs:simpleType>
                                <xs:restriction base="xs:NMTOKEN">
                                    <xs:enumeration value="Default" />
                                    <xs:enumeration value="Local" />
                                    <xs:enumeration value="Roundtrip" />
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:attribute>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="schemaImporterExtensions" vs:help="configuration/system.xml.serialization/schemaImporterExtensions">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="add" vs:help="configuration/system.xml.serialization/schemaImporterExtensions/add">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                    <xs:attribute name="type" type="xs:string" use="required" />
                                    <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockElements" type="xs:string" use="optional" />
                                    <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                                    <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.xml.serialization/schemaImporterExtensions/remove">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.xml.serialization/schemaImporterExtensions/clear">
                                <xs:complexType>
                                    <!--tag is empty-->
                                </xs:complexType>
                            </xs:element>
                        </xs:choice>
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
                <xs:element name="xmlSerializer" vs:help="configuration/system.xml.serialization/xmlSerializer">
                    <xs:complexType>
                        <xs:attribute name="checkDeserializeAdvances" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="lockAttributes" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllAttributesExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockElements" type="xs:string" use="optional" />
                        <xs:attribute name="lockAllElementsExcept" type="xs:string" use="optional" />
                        <xs:attribute name="lockItem" type="small_boolean_Type" use="optional" />
                        <xs:attribute name="configSource" type="xs:string" use="optional" />
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions