#develop (short for SharpDevelop) is a free IDE for .NET programming languages.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1015 lines
40 KiB

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:app-config"
xmlns="urn:app-config"
elementFormDefault="qualified">
<xs:annotation>
<xs:documentation>
Copyright (C) 2005 Matthew Ward
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
</xs:documentation>
</xs:annotation>
<xs:element name="configuration">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="startup" type="startup" minOccurs="0" maxOccurs="1"/>
<xs:element name="runtime" type="runtime" minOccurs="0" maxOccurs="1"/>
<xs:element name="system.runtime.remoting" type="system.runtime.remoting" minOccurs="0" maxOccurs="1"/>
<xs:element name="system.network" type="system.network" minOccurs="0" maxOccurs="1"/>
<xs:element name="mscorlib" type="mscorlib" minOccurs="0" maxOccurs="1"/>
<xs:element name="configSections" type="configSections" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="system.diagnostics" type="system.diagnostics" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="location" type="location" minOccurs="0" maxOccurs="1"/>
<xs:element name="system.web" type="system.web" minOccurs="0" maxOccurs="1"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:complexType name="startup">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="requiredRuntime" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="version" type="xs:string"/>
<xs:attribute name="safemode" type="trueFalseEnum"/>
</xs:complexType>
</xs:element>
<xs:element name="supportedRuntime" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="version" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="runtime">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="developmentMode" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="developerInstallation" type="trueFalseEnum"/>
</xs:complexType>
</xs:element>
<xs:element name="assemblyBinding" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:choice>
<xs:element name="dependentAssembly" type="dependentAssembly" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="probing" type="probing" minOccurs="0" maxOccurs="1"/>
<xs:element name="publisherPolicy" type="publisherPolicy" minOccurs="0" maxOccurs="1"/>
<xs:element name="qualifyAssembly" type="qualifyAssembly" minOccurs="0" maxOccurs="1"/>
</xs:choice>
<xs:attribute name="appliesTo" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="gcConcurrent" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="enabled" type="trueFalseEnum" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="system.runtime.remoting">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="application" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="lifetime" type="lifetime" minOccurs="0" maxOccurs="1"/>
<xs:element name="service" type="service" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="client" type="client" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="channels" type="applicationChannels" minOccurs="0" maxOccurs="1"/>
<xs:element name="soapInterop" type="soapInterop" minOccurs="0" maxOccurs="1"/>
</xs:choice>
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="channels" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="channel" type="channel" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="channelSinkProviders" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="serverProviders" type="serverProviders" minOccurs="1" maxOccurs="1"/>
<xs:element name="clientProviders" type="clientProviders" minOccurs="1" maxOccurs="1"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="debug" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="loadTypes" type="trueFalseEnum" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="system.network">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="authenticationModules" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="connectionManagement" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="address" type="xs:string" use="required"/>
<xs:attribute name="maxconnection" type="xs:integer" default="2"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="defaultProxy" type="defaultProxy" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="webRequestModules" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="prefix" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="defaultProxy">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="proxy" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="usesystemdefault" type="trueFalseEnum"/>
<xs:attribute name="bypassonlocal" type="trueFalseEnum"/>
<xs:attribute name="proxyaddress" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="bypasslist" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="address" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="module" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="mscorlib">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="cryptographySettings">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="cryptoNameMappings" type="cryptoNameMappings" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="oidMap" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="oidEntry" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="OID" type="xs:string" use="required"/>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="cryptoNameMappings">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="cryptoClasses" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="cryptoClass" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:anyAttribute/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="nameEntry" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="class" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="configSections">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="section" type="section" minOccurs="0" maxOccurs="unbounded">
</xs:element>
<xs:element name="sectionGroup" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="section" type="section" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="section">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="allowDefinition">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Everywhere"/>
<xs:enumeration value="MachineOnly"/>
<xs:enumeration value="MachineToApplication"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="allowLocation" type="trueFalseEnum"/>
</xs:complexType>
<xs:complexType name="system.diagnostics">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="assert" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="assertuienabled" type="trueFalseEnum" default="true"/>
<xs:attribute name="logfilename" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="switches" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="trace" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="listeners" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="initializeData" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="autoflush" type="xs:string"/>
<xs:attribute name="indentsize" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="location">
<xs:attribute name="path" type="xs:string"/>
<xs:attribute name="allowOverride" type="trueFalseEnum"/>
</xs:complexType>
<xs:simpleType name="trueFalseEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="yesNoEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="dependentAssembly">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="assemblyIdentity" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="publicKeyToken" type="xs:string"/>
<xs:attribute name="culture" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="codeBase" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="version" type="xs:string" use="required"/>
<xs:attribute name="href" type="xs:anyURI" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="bindingRedirect" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="oldVersion" type="xs:string" use="required"/>
<xs:attribute name="newVersion" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="publisherPolicy" type="publisherPolicy" minOccurs="0" maxOccurs="1"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="probing">
<xs:attribute name="privatePath" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="publisherPolicy">
<xs:attribute name="apply" type="yesNoEnum" use="required"/>
</xs:complexType>
<xs:complexType name="qualifyAssembly">
<xs:attribute name="partialName" type="xs:string" use="required"/>
<xs:attribute name="fullName" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="lifetime">
<xs:attribute name="leaseTime" type="xs:string" default="5M"/>
<xs:attribute name="sponsorshipTimeout" type="xs:string" default="2M"/>
<xs:attribute name="renewOnCallTime" type="xs:string" default="2M"/>
<xs:attribute name="leaseManagerPollTime" type="xs:string" default="10"/>
</xs:complexType>
<xs:complexType name="service">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="wellknown" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="displayName" type="xs:string"/>
<xs:attribute name="mode" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Singleton"/>
<xs:enumeration value="SingleCall"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="objectUri" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="activated" type="activated" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="client">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="wellknown" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="displayName" type="xs:string"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="url" type="xs:anyURI" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="activated" type="activated" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
<xs:attribute name="url" type="xs:string"/>
<xs:attribute name="displayName" type="xs:string"/>
</xs:complexType>
<xs:complexType name="applicationChannels">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="channel">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="serverProviders" type="serverProviders" minOccurs="0" maxOccurs="1"/>
<xs:element name="clientProviders" type="clientProviders" minOccurs="0" maxOccurs="1"/>
</xs:choice>
<xs:attribute name="ref" type="xs:string"/>
<xs:attribute name="displayName" type="xs:string"/>
<xs:attribute name="port" type="xs:string"/>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="customChannelProperty" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="soapInterop">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="preLoad" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="assembly" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="interopXmlElement" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="clr" type="xs:string" use="required"/>
<xs:attribute name="xml" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="interopXmlType" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="clr" type="xs:string" use="required"/>
<xs:attribute name="xml" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="channel">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="serverProviders" type="serverProviders" minOccurs="1" maxOccurs="1"/>
<xs:element name="clientProviders" type="clientProviders" minOccurs="1" maxOccurs="1"/>
</xs:choice>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="displayName" type="xs:string"/>
<xs:attribute name="customChannelProperty" type="xs:string"/>
<xs:attribute name="delayLoadAsClientChannel" type="trueFalseEnum"/>
</xs:complexType>
<xs:complexType name="activated">
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="serverProviders">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="formatter" type="formatter" minOccurs="0" maxOccurs="1"/>
<xs:element name="provider" type="provider" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="clientProviders">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="formatter" type="formatter" minOccurs="0" maxOccurs="1"/>
<xs:element name="provider" type="provider" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="formatter">
<xs:attribute name="ref" type="xs:string"/>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="customFormatterProperty" type="xs:string"/>
<xs:attribute name="includeVersions" type="trueFalseEnum" default="true"/>
<xs:attribute name="strictBinding" type="trueFalseEnum" default="false"/>
<xs:attribute name="typeFilterLevel" type="typeFilterLevelEnum" default="Low"/>
</xs:complexType>
<xs:simpleType name="typeFilterLevelEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="Low"/>
<xs:enumeration value="High"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="provider">
<xs:attribute name="ref" type="xs:string"/>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="customChannelSinkProperty" type="xs:string"/>
</xs:complexType>
<xs:complexType name="system.web">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="authentication" type="authentication" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="authorization" type="authorization" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="browserCaps" type="browserCaps" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="clientTarget" type="clientTarget" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="compilation" type="compilation" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="customErrors" type="customErrors" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="globalization" type="globalization" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="httpHandlers" type="httpHandlers" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="httpModules" type="httpModules" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="httpRuntime" type="httpRuntime" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="identity" type="identity" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="machineKey" type="machineKey" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="pages" type="pages" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="processModel" type="processModel" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="securityPolicy" type="securityPolicy" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="sessionState" type="sessionState" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trace" type="trace" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trust" type="trust" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="webServices" type="webServices" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="authentication">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="forms" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="credentials" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="user" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string"/>
<xs:attribute name="password" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="passwordFormat">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Clear"/>
<xs:enumeration value="MD5"/>
<xs:enumeration value="SHA1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="passport" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="redirectUrl" type="xs:anyURI" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="mode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Windows"/>
<xs:enumeration value="Forms"/>
<xs:enumeration value="Passport"/>
<xs:enumeration value="None"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="authorization">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="allow" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="users" type="xs:string"/>
<xs:attribute name="roles" type="xs:string"/>
<xs:attribute name="verbs" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="deny" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="users" type="xs:string"/>
<xs:attribute name="roles" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="browserCaps" mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="use" minOccurs="0" maxOccurs="unbounded">
<xs:complexType mixed="true">
<xs:attribute name="var" type="xs:string"/>
<xs:attribute name="as" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="filter" minOccurs="0" maxOccurs="unbounded">
<xs:complexType mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="case" minOccurs="0" maxOccurs="unbounded">
<xs:complexType mixed="true">
<xs:attribute name="match" type="xs:string" use="required"/>
<xs:attribute name="with" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="match" type="xs:string"/>
<xs:attribute name="with" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="result" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="clientTarget">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="add" type="xs:string" use="required"/>
<xs:attribute name="useragent" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="alias" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="compilation">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="compilers" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="compiler" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="language" type="xs:string" use="required"/>
<xs:attribute name="extension" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="warninglevel" type="xs:string"/>
<xs:attribute name="compilerOptions" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="assemblies" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="assembly" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="assembly" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="debug" type="trueFalseEnum" default="false"/>
<xs:attribute name="defaultLanguage" type="xs:string" default="vb"/>
<xs:attribute name="explicit" type="trueFalseEnum" default="true"/>
<xs:attribute name="batch" type="trueFalseEnum"/>
<xs:attribute name="batchTimeout" type="xs:string"/>
<xs:attribute name="maxBatchGeneratedFileSize" type="xs:string"/>
<xs:attribute name="maxBatchFileSize" type="xs:string"/>
<xs:attribute name="numRecompilesBeforeApprestart" type="xs:string"/>
<xs:attribute name="strict" type="trueFalseEnum"/>
<xs:attribute name="tempDirectory" type="xs:string"/>
</xs:complexType>
<xs:complexType name="customErrors">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="error" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="StatusCode" type="xs:string"/>
<xs:attribute name="Redirect" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="mode" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="On"/>
<xs:enumeration value="Off"/>
<xs:enumeration value="RemoteOnly"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="defaultRedirect" type="xs:string"/>
</xs:complexType>
<xs:complexType name="globalization">
<xs:attribute name="requestEncoding" type="xs:string"/>
<xs:attribute name="responseEncoding" type="xs:string"/>
<xs:attribute name="fileEncoding" type="xs:string"/>
<xs:attribute name="culture" type="xs:string"/>
<xs:attribute name="uiCulture" type="xs:string"/>
</xs:complexType>
<xs:complexType name="httpHandlers">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="verb" type="xs:string" use="required"/>
<xs:attribute name="path" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="validate" type="trueFalseEnum"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="verb" type="xs:string" use="required"/>
<xs:attribute name="path" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="httpModules">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="httpRuntime">
<xs:attribute name="appRequestQueueLimit" type="xs:string"/>
<xs:attribute name="executionTimeout" type="xs:string"/>
<xs:attribute name="maxRequestLength" type="xs:string"/>
<xs:attribute name="minFreeLocalRequestFreeThreads" type="xs:string"/>
<xs:attribute name="minFreeThreads" type="xs:string"/>
<xs:attribute name="useFullyQualifiedRedirectUrl" type="trueFalseEnum"/>
<xs:attribute name="versionHeader" type="xs:string"/>
</xs:complexType>
<xs:complexType name="machineKey">
<xs:attribute name="validationKey" type="xs:string" use="required"/>
<xs:attribute name="decryptionKey" type="xs:string" use="required"/>
<xs:attribute name="validation" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="SHA1"/>
<xs:enumeration value="MD5"/>
<xs:enumeration value="3DES"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="identity">
<xs:attribute name="impersonate" type="trueFalseEnum" use="required"/>
<xs:attribute name="userName" type="xs:string"/>
<xs:attribute name="password" type="xs:string"/>
</xs:complexType>
<xs:complexType name="pages">
<xs:attribute name="buffer" type="trueFalseEnum"/>
<xs:attribute name="enableSessionState">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
<xs:enumeration value="ReadOnly"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="enableViewState" type="trueFalseEnum"/>
<xs:attribute name="enableViewStateMac" type="trueFalseEnum"/>
<xs:attribute name="smartNavigation" type="trueFalseEnum"/>
<xs:attribute name="pageBaseType" type="xs:string"/>
<xs:attribute name="userControlBaseType" type="xs:string"/>
<xs:attribute name="autoEventWireUp" type="trueFalseEnum"/>
<xs:attribute name="validateRequest" type="trueFalseEnum" default="true"/>
</xs:complexType>
<xs:complexType name="processModel">
<xs:attribute name="clientConnectedCheck" type="xs:string"/>
<xs:attribute name="comAuthenticationLevel">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Default"/>
<xs:enumeration value="None"/>
<xs:enumeration value="Connect"/>
<xs:enumeration value="Call"/>
<xs:enumeration value="Pkt"/>
<xs:enumeration value="PktIntegrity"/>
<xs:enumeration value="PktPrivacy"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="comImpersonationLevel">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Default"/>
<xs:enumeration value="Anonymous"/>
<xs:enumeration value="Identify"/>
<xs:enumeration value="Impersonate"/>
<xs:enumeration value="Delegate"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cpuMask" type="xs:string"/>
<xs:attribute name="enable" type="trueFalseEnum"/>
<xs:attribute name="idleTimeout" type="xs:string"/>
<xs:attribute name="logLevel">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="All"/>
<xs:enumeration value="None"/>
<xs:enumeration value="Errors"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="maxWorkerThreads" type="xs:integer" default="20"/>
<xs:attribute name="maxIoThreads" type="xs:integer" default="20"/>
<xs:attribute name="password" type="xs:string"/>
<xs:attribute name="pingFrequency" type="xs:string"/>
<xs:attribute name="pingTimeout" type="xs:string" default="5"/>
<xs:attribute name="requestLimit" type="xs:string"/>
<xs:attribute name="requestQueueLimit" type="xs:string"/>
<xs:attribute name="responseDeadlockInterval" type="xs:string"/>
<xs:attribute name="responseRestartDeadlockInterval" type="xs:string"/>
<xs:attribute name="serverErrorMessageFile" type="xs:string"/>
<xs:attribute name="shutdownTimeout" type="xs:string"/>
<xs:attribute name="timeout" type="xs:string"/>
<xs:attribute name="userName" type="xs:string"/>
<xs:attribute name="webGarden" type="trueFalseEnum"/>
</xs:complexType>
<xs:complexType name="securityPolicy">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="securityPolicy">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="trustLevel">
<xs:complexType>
<xs:attribute name="policyFile" type="xs:string" use="required"/>
<xs:attribute name="name" type="trustLevelEnum" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:simpleType name="trustLevelEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="Full"/>
<xs:enumeration value="High"/>
<xs:enumeration value="Medium"/>
<xs:enumeration value="Low"/>
<xs:enumeration value="Minimal"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="sessionState">
<xs:attribute name="mode" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Off"/>
<xs:enumeration value="InProc"/>
<xs:enumeration value="StateServer"/>
<xs:enumeration value="SQLServer"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cookieless" type="trueFalseEnum"/>
<xs:attribute name="timeout" type="xs:string"/>
<xs:attribute name="stateConnectionString" type="xs:string"/>
<xs:attribute name="sqlConnectionString" type="xs:string"/>
<xs:attribute name="stateNetworkTimeout" type="xs:string"/>
</xs:complexType>
<xs:complexType name="trace">
<xs:attribute name="enabled" type="trueFalseEnum" default="false"/>
<xs:attribute name="localOnly" type="trueFalseEnum" default="true"/>
<xs:attribute name="pageOutput" type="trueFalseEnum" default="false"/>
<xs:attribute name="requestLimit" type="xs:integer" default="10"/>
<xs:attribute name="traceMode" default="SortByTime">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="SortByTime"/>
<xs:enumeration value="SortByCategory"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="trust">
<xs:attribute name="level" type="trustLevelEnum" use="required"/>
<xs:attribute name="orginUrl" type="xs:string"/>
</xs:complexType>
<xs:complexType name="webServices">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="protocols" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="serviceDescriptionTypes" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="soapExtensionTypes" type="soapExtension" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="soapExtensionReflectorTypes" type="soapExtension" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="soapExtensionImporterTypes" type="soapExtension" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="wsdlHelpGenerator" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="href" type="xs:anyURI" use="required"/>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:complexType name="soapExtension">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="add" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="priority" type="xs:string" use="required"/>
<xs:attribute name="group" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="remove" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="clear" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:schema>