<?xml version='1.0' encoding='UTF-8'?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:prov="http://www.auerswald.de/prov"
            xmlns:abt="http://www.auerswald.de/auer_base_types"
            xmlns:html="http://www.w3.org/1999/xhtml"
            targetNamespace="http://www.auerswald.de/prov"
            elementFormDefault="unqualified">

    <xsd:import namespace="http://www.auerswald.de/auer_base_types" schemaLocation="auer_base_types.xsd"/>
    <xsd:element name="provider" type="prov:providerType">
    	<xsd:unique name="uniqueAccountId">
    		<xsd:selector xpath="generalAccount|trunkingAccount"/>
    		<xsd:field xpath="@accountId"/>
    	</xsd:unique>
    </xsd:element>

    <xsd:simpleType name="sipRegisterExpiryType">
         <xsd:restriction base="xsd:int">
             <xsd:minInclusive value="1"/>
             <xsd:maxInclusive value="60"/>
         </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="sipOutboundProxyUseType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring the Outbound Proxy:anbietertkanlage_outboundproxy"/>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="auto"/>
            <xsd:enumeration value="manually"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="sipSessionExpiryType">
		<xsd:annotation>
			<xsd:documentation source="help:Configuring the SIP Session Timer:anbietertkanlage_sipsessiontimer"/>
		</xsd:annotation>
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="5"/>
            <xsd:maxInclusive value="60"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="sipTransportType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configure the SIP transport protocol:anbietertkanlage_siptransportprotokoll">
    			Select the transport protocol to be used for exchanging SIP messages.
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="udp">
            	<xsd:annotation>
            		<xsd:documentation source="rfc:768"/>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="tcp">
            	<xsd:annotation>
            		<xsd:documentation source="rfc:761"/>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="tcptls">
            	<xsd:annotation>
            		<xsd:documentation source="rfc:2246">
            			Use TLS over TCP.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="enBlockDialingDelayType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="3"/>
            <xsd:maxInclusive value="15"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="fromAnonymousType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="displayOnly"/>
            <xsd:enumeration value="full"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="numberFormatType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="Format+495306"/>
            <xsd:enumeration value="Format00495306"/>
            <xsd:enumeration value="Format495306"/>
            <xsd:enumeration value="Format05306"/>
            <xsd:enumeration value="Format5306"/>
            <xsd:enumeration value="FormatMSNonly"/>
            <xsd:enumeration value="FormatDDIonly"/>
            <xsd:enumeration value="FormatUnchanged"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="numberIndicationOutgoingType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="standard"/>
            <xsd:enumeration value="standardUserpart"/>
            <xsd:enumeration value="RFC3325PAI"/>
            <xsd:enumeration value="RFC3323PPI"/>
            <xsd:enumeration value="userDefined"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="sipHeaderValue">
    	<xsd:restriction base="xsd:string">
    		<xsd:enumeration value=""/>
    		<xsd:enumeration value="username"/>
    		<xsd:enumeration value="networkProvided"/>
    		<xsd:enumeration value="userProvided"/>
    		<xsd:enumeration value="userProvidedName"/>
    	</xsd:restriction>
    </xsd:simpleType>
    
    <xsd:complexType name="sipHeaderType">
    	<xsd:all>
    		<xsd:element name="used" type="xsd:boolean" maxOccurs="1" minOccurs="1"/>
    		<xsd:element name="display" type="prov:sipHeaderValue" maxOccurs="1" minOccurs="0"/>
    		<xsd:element name="user" type="prov:sipHeaderValue" maxOccurs="1" minOccurs="0"/>
    	</xsd:all>
    </xsd:complexType>
  
    <xsd:complexType name="outgoingConfigType">
        <xsd:all>
            <xsd:element name="enBlockDialingOnly" type="xsd:boolean" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="enBlockDialingDelay" type="prov:enBlockDialingDelayType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="dialledNumberFormat" type="prov:numberFormatType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="transmittedNumberFormat" type="prov:numberFormatType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="transmittedCnsFormat" type="prov:numberFormatType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="fromAnonymous" type="prov:fromAnonymousType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="numberIndication" type="prov:numberIndicationOutgoingType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="niFrom" type="prov:sipHeaderType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="niPAI" type="prov:sipHeaderType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="niPPI" type="prov:sipHeaderType" maxOccurs="1" minOccurs="0"/>
        </xsd:all>
    </xsd:complexType>

	<xsd:simpleType name="callingPartyPrefixType">
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="10"/>
            <xsd:pattern value="[0-9+]*"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="sipNumberLocationType">
        <xsd:restriction base="xsd:string">
    		<xsd:enumeration value=""/>
            <xsd:enumeration value="fromDisplay"/>
            <xsd:enumeration value="fromUser"/>
            <xsd:enumeration value="pAssertedIdentityDisplay"/>
            <xsd:enumeration value="pAssertedIdentityUser"/>
            <xsd:enumeration value="pPreferredIdentityDisplay"/>
            <xsd:enumeration value="pPreferredIdentityUser"/>
            <xsd:enumeration value="remotePartyIdCallingUser"/>
            <xsd:enumeration value="remotePartyIdCallingDisplay"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="sipNumberLocationPrioType">
        <xsd:simpleContent>
            <xsd:extension base="prov:sipNumberLocationType">
                <xsd:attribute name="prio" use="required">
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:int">
                            <xsd:minInclusive value="1"/>
                            <xsd:maxInclusive value="3"/>
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:attribute>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>

    <xsd:simpleType name="numberIndicationIncomingType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="standard"/>
            <xsd:enumeration value="RFC3325"/>
            <xsd:enumeration value="userDefined"/>
            <xsd:enumeration value="standardUseFromHeaderForScreened"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="calledPartySourceType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="standard"/>
            <xsd:enumeration value="requestLine"/>
            <xsd:enumeration value="toHeader"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="incomingConfigType">
        <xsd:sequence>
            <xsd:element name="numberIndication" type="prov:numberIndicationIncomingType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="userProvidedNumber" type="prov:sipNumberLocationPrioType" maxOccurs="3" minOccurs="1"/>
            <xsd:element name="userProvidedName" type="prov:sipNumberLocationPrioType" maxOccurs="3" minOccurs="1"/>
            <xsd:element name="networkProvidedNumber" type="prov:sipNumberLocationPrioType" maxOccurs="3" minOccurs="0"/>
            <xsd:element name="unparsableNumberIsInternational" type="xsd:boolean" maxOccurs="1" minOccurs="0" />
            <xsd:element name="callingPartyPrefix" type="prov:callingPartyPrefixType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="calledPartySource" type="prov:calledPartySourceType" maxOccurs="1" minOccurs="0" />
            <xsd:element name="callTypeDetection" type="prov:callTypeDetectionType" maxOccurs="1" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="dnsServersType">
        <xsd:sequence>
            <xsd:element name="address" type="xsd:string"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="callTypeDetectionType">
        <xsd:all>
            <xsd:element name="internalCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="prioritizedInternalCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="externalCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="groupCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="alarmCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="callFromDoorStation" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="wakeUpCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="silentCall" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="customCallType1" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="customCallType2" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="customCallType3" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="customCallType4" type="xsd:string" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="customCallType5" type="xsd:string" maxOccurs="1" minOccurs="0"/>
        </xsd:all>
    </xsd:complexType>
    <xsd:complexType name="sipConfigType">
        <xsd:all>
        	<xsd:element name="domain" type="abt:urlType" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="useRegistration" type="xsd:boolean" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="registrarUrl" type="abt:urlType"	maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="registerExpiry" type="prov:sipRegisterExpiryType" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="useRFC6140" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
          	<xsd:element name="outboundProxyUse" type="prov:sipOutboundProxyUseType" maxOccurs="1" minOccurs="1"/>
          	<xsd:element name="outboundProxyUrl" type="abt:urlType"	maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="localSipPort" type="abt:portType" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="sessionTimerSupport" type="xsd:boolean" maxOccurs="1" minOccurs="1">
        		<xsd:annotation>
        			<xsd:documentation source="help:Configuring the SIP Session Timer:anbietertkanlage_sipsessiontimer"/>
        		</xsd:annotation>
        	</xsd:element>
        	<xsd:element name="deactivateRFC3262" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="sessionTimerExpiry" type="prov:sipSessionExpiryType" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="transport" type="prov:sipTransportType" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="useSipTlsForSips" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="rootCertificate" type="xsd:string" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="fingerprint" type="xsd:string" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="tlsCertNoHostNameCheck" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="outgoingConfig" type="prov:outgoingConfigType" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="incomingConfig" type="prov:incomingConfigType" maxOccurs="1" minOccurs="1"/>
        	<xsd:element name="unregisterOnNatChanged" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="stickyDns" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="usePubIpInVia" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="usePubIpInContact" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="pubIpForViaSdpContact" type="xsd:string"  maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="dnsServers" type="prov:dnsServersType" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="userIsPhone" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        	<xsd:element name="useMediaSec" type="xsd:boolean" maxOccurs="1" minOccurs="0"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="jitterBufferSizeType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring the Jitter Buffer:anbietertkanlage_jitterbuffer"/>
    	</xsd:annotation>
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="40"/>
            <xsd:maxInclusive value="160"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="srtpModeType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring SRTP:anbietertkanlage_srtp"/>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="srtpOff">
            	<xsd:annotation>
            		<xsd:documentation>
            			Never encrypt the voice data of a SIP session.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="srtpPreferred">
            	<xsd:annotation>
            		<xsd:documentation>
            			It is preferred to encrypt the communication but it is not required by the remote user agent.
            			If it does not support encryption, all voice data can be monitored by network analysis tools.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="srtpMandatory">
            	<xsd:annotation>
            		<xsd:documentation>
            			All voice communication should be encrypted. If a remote user agent does
            			not support encryption, the connection is rejected.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="dtmfModeType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring DTMF Signalling:anbietertkanlage_dtmf"/>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="dtmfInbandOnly"/>
            <xsd:enumeration value="dtmfOutbandOnly"/>
            <xsd:enumeration value="dtmfBoth"/>
            <xsd:enumeration value="dtmfOutbandQuit"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="echoCancelType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Switching Echo Cancellation on/off/auto:anbietertkanlage_echokompensation">
				true/false: An echo canceller will be (not) used
				auto: An echo canceller will be used automatically
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="false"/>
            <xsd:enumeration value="true"/>
            <xsd:enumeration value="auto"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="silenceSuppressionType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Controls silence suppression on/off/auto:anbietertkanlage_silenceSuppression">
				on/off: ?
				auto:  will be used automatically
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="on"/>
            <xsd:enumeration value="auto"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="comfortNoiseType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Controls Comfort Noise negotiation on/off/auto:anbietertkanlage_comfortNoise">
				on/off: ?
				auto:  will be used automatically
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="on"/>
            <xsd:enumeration value="auto"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="maxPtimeType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Controls MaxPtime">
    			suppress      field maxptime will not created
   				automatic     field maxptime will get the same valuue as ptime
   				20            time value 20ms
   				30            time value 30ms, default value
   				40		      time value 40ms
   				50			  time value 50ms
   				60			  time value 60ms
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="suppress"/>
            <xsd:enumeration value="automatic"/>
            <xsd:enumeration value="20"/>
            <xsd:enumeration value="30"/>
            <xsd:enumeration value="40"/>
            <xsd:enumeration value="50"/>
            <xsd:enumeration value="60"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="replacementToneType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Controls a replacement tone for the official tone">
				auto:  replacement tone will be used automatically, is defaults
				off:   no replacement tone will be used
				on:    a replacement tone will be used by default
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="auto"/>
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="on"/>
        </xsd:restriction>
    </xsd:simpleType>


    <xsd:simpleType name="codecSortType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring Codecs:anbietertkanlage_codec">
    			Determines which audio codecs to use and their priority in SDP messages.
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="quality">
            	<xsd:annotation>
            		<xsd:documentation>
            			G.722, G.711, G.726, iLBC
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="compression">
            	<xsd:annotation>
            		<xsd:documentation>
            			iLBC, G.726, G.711, G.722
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="forceG711">
            	<xsd:annotation>
            		<xsd:documentation>
            			G.711 only
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>

	<xsd:simpleType name="codecTypes">
    	<xsd:annotation>
    		<xsd:documentation>
    			Specifies a list of codec names
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="G711"/> 
            <xsd:enumeration value="G723"/> 
            <xsd:enumeration value="G726"/> 
            <xsd:enumeration value="G729"/> 
            <xsd:enumeration value="iLBC"/> 
            <xsd:enumeration value="G722"/> 
        </xsd:restriction>
    </xsd:simpleType>
	
	<xsd:complexType name="codecListType">
    	<xsd:annotation>
    		<xsd:documentation>
    			A list of codec names.
    		</xsd:documentation>
    	</xsd:annotation>
	    <xsd:sequence>
			<xsd:element name="codec" type="prov:codecTypes" minOccurs="1" maxOccurs="6"/>
	    </xsd:sequence>
	</xsd:complexType>

    <xsd:complexType name="rtpConfigType">
        <xsd:all>
            <xsd:element name="echoCancel" type="prov:echoCancelType" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="jitterBufferSize" type="prov:jitterBufferSizeType" minOccurs="1" maxOccurs="1"/>
            <xsd:element name="srtpMode" type="prov:srtpModeType" minOccurs="1" maxOccurs="1"/>            
            <xsd:element name="dtmfMode" type="prov:dtmfModeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="codecSort" type="prov:codecSortType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="codecPreferences" type="codecListType" minOccurs="0" maxOccurs="1">
            	<xsd:annotation>
		    		<xsd:documentation>
		    			Priority list of codecs to use for the Provider.
		    		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
			<xsd:element name="codecSupported" type="codecListType" minOccurs="0" maxOccurs="1">
            	<xsd:annotation>
		    		<xsd:documentation>
		    			Provider has a codec restriction, a list of codec names specifies the codecs.
		    		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="silenceSuppression" type="prov:silenceSuppressionType" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="comfortNoise" type="prov:comfortNoiseType" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="maxPtime" type="prov:maxPtimeType" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="replacementTone" type="replacementToneType" minOccurs="0" maxOccurs="1"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="natKeepAliveIntervalType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="1"/>
            <xsd:maxInclusive value="255"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="sipNatTraversalType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Configuring NAT Traversal:anbietertkanlage_nattraversal"/>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="rport"/>
            <xsd:enumeration value="stun"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="rtpNatTraversalType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="off"/>
            <xsd:enumeration value="stun"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="stunIntervalType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="1"/>
            <xsd:maxInclusive value="60"/>
        </xsd:restriction>
    </xsd:simpleType>                
    
    <xsd:complexType name="natConfigType">
        <xsd:all>
            <xsd:element name="natKeepAliveSupport" type="xsd:boolean" maxOccurs="1" minOccurs="1">
            	<xsd:annotation>
            		<xsd:documentation source="help:Configuring NAT Keep Alive:anbietertkanlage_natkeepalive"/>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="natKeepAliveInterval" type="prov:natKeepAliveIntervalType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="sipNatTraversal" type="prov:sipNatTraversalType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="rtpNatTraversal" type="prov:rtpNatTraversalType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="stunServerUrl" type="abt:urlType" maxOccurs="1" minOccurs="0">
            	<xsd:annotation>
            		<xsd:documentation source="help:Configuring the STUN Server:anbietertkanlage_stunserver"/>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="stunInterval" type="prov:stunIntervalType" maxOccurs="1" minOccurs="0"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="t38NegotiationModelType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="standard"/>
            <xsd:enumeration value="variant1"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="t38ConfigType">
        <xsd:all>
            <xsd:element name="t38Support" type="xsd:boolean"/>
            <xsd:element name="t38NegotiationModel" type="prov:t38NegotiationModelType" maxOccurs="1" minOccurs="1"/>
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="sipUserNameType">
        <xsd:restriction base="xsd:string">
            
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="sipPasswordType">
        <xsd:restriction base="xsd:string">
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="ringerRhythmType">
        <xsd:restriction base="xsd:string">
        	<xsd:enumeration value="long"/>
            <xsd:enumeration value="short"/>
            <xsd:enumeration value="special1"/>
            <xsd:enumeration value="special2"/>
            <xsd:enumeration value="special3"/>
            <xsd:enumeration value="special4"/>
            <xsd:enumeration value="special5"/>
            <xsd:enumeration value="special6"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="ddiNumberType">
        <xsd:restriction base="xsd:string">
            <xsd:pattern value="(\d)*"/>
            <xsd:minLength value="1"/>
            <xsd:maxLength value="4"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:complexType name="baseNumberType">
        <xsd:all>
            <xsd:element name="baseNumber" type="abt:numberType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="ddiFrom" type="prov:ddiNumberType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="ddiUntil" type="prov:ddiNumberType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="ringerRhythm" type="prov:ringerRhythmType" maxOccurs="1" minOccurs="0"/>
        </xsd:all>
    </xsd:complexType>
    
    <xsd:simpleType name="msnDdiTypeType">
    	<xsd:restriction base="xsd:string">
    		<xsd:enumeration value="ddi"/>
    		<xsd:enumeration value="msn"/>
    	</xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="melodyType">
    	<xsd:restriction base="xsd:string">
    		<xsd:minLength value="0"/>
    		<xsd:maxLength value="255"/>
    	</xsd:restriction>
    </xsd:simpleType>
        
    <xsd:simpleType name="announcementType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="0"/>
            <xsd:maxInclusive value="25"/>
        </xsd:restriction>
    </xsd:simpleType> 
    
    <xsd:simpleType name="call_acceptanceType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="0"/>
            <xsd:maxInclusive value="2"/>
        </xsd:restriction>
    </xsd:simpleType> 
    
    <xsd:simpleType name="call_acceptance_use">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="0"/>
            <xsd:maxInclusive value="1"/>
        </xsd:restriction>
    </xsd:simpleType> 
    
    <xsd:complexType name="msnDdiType">
        <xsd:all>
            <xsd:element name="sequence" type="prov:sipUserNameType" maxOccurs="1" minOccurs="1"/>
            <xsd:element name="displayName" type="abt:nameType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="ringerRhythm" type="prov:ringerRhythmType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="type" type="prov:msnDdiTypeType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="melody" type="prov:melodyType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="announcement" type="prov:announcementType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="call_acceptance" type="prov:call_acceptanceType" maxOccurs="1" minOccurs="0"/>
            <xsd:element name="call_acceptance_use" type="prov:call_acceptance_use" maxOccurs="1" minOccurs="0"/>                                   
        </xsd:all>
    	<xsd:attribute name="numberId" type="prov:msnIdType" use="required"/>
    </xsd:complexType>
    
    <xsd:simpleType name="providerIdType">
    	<xsd:restriction base="xsd:int">
            <xsd:minInclusive value="30000"></xsd:minInclusive>
            <xsd:maxInclusive value="39999"></xsd:maxInclusive>
    	</xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="profileVersionType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="0"></xsd:minInclusive>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="accountIdType">
    	<xsd:restriction base="xsd:int">
            <xsd:minInclusive value="30000"></xsd:minInclusive>
            <xsd:maxInclusive value="34999"></xsd:maxInclusive>
    	</xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="mailboxIdType">
        <xsd:restriction base="xsd:int">
            <xsd:minInclusive value="30000"></xsd:minInclusive>
            <xsd:maxInclusive value="39999"></xsd:maxInclusive>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="msnIdType" >
    	<xsd:restriction base="xsd:int">
            <xsd:minInclusive value="30000"></xsd:minInclusive>
            <xsd:maxInclusive value="39999"></xsd:maxInclusive>
    	</xsd:restriction>
    </xsd:simpleType>

	<xsd:simpleType name="dialPlanLevelType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="unknown"/>
			<xsd:enumeration value="Local level"/>
			<xsd:enumeration value="National level"/>
			<xsd:enumeration value="International level"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="countryCodeType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="D"/>
			<xsd:enumeration value="CH"/>
			<xsd:enumeration value="A"/>
			<xsd:enumeration value="F"/>
			<xsd:enumeration value="E"/>
			<xsd:enumeration value="NL"/>
			<xsd:enumeration value="N"/>
			<xsd:enumeration value="GB"/>
			<xsd:enumeration value="L"/>
			<xsd:enumeration value="SG"/>
			<xsd:enumeration value="DK"/>
			<xsd:enumeration value="GR"/>
			<xsd:enumeration value="CZ"/>
			<xsd:enumeration value="I"/>
			<xsd:enumeration value="P"/>
			<xsd:enumeration value="INT"/>
			<xsd:enumeration value="B"/>
			<xsd:enumeration value="S"/>
			<xsd:enumeration value="PL"/>
		</xsd:restriction>
	</xsd:simpleType>

    <xsd:complexType name="sipMailboxType">
    	<xsd:annotation>
    		<xsd:documentation source="rfc:3842">
    			Defines configuration parameters for a voicemail box.
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:all>
            <xsd:element name="mwiSubscription" type="xsd:boolean" maxOccurs="1" minOccurs="1">
            	<xsd:annotation>
            		<xsd:documentation>
            			Set this to <html:code>true</html:code>, if the provider only sends MWI notifications
            			after a user agent has successfully subscribed to a specific resource.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="mwiSubscriptionNumber" type="abt:numberType" maxOccurs="1" minOccurs="0">
            	<xsd:annotation>
            		<xsd:documentation>
            			The user part of a SIP URI which is used as the destination for a
            			<html:code>SUBSCRIBE</html:code> request. If it is left blank, the content of
            			<html:code>&lt;mailboxNumber&gt;</html:code> is used instead.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="mailboxNumber" type="abt:numberType" maxOccurs="1" minOccurs="1">
            	<xsd:annotation>
            		<xsd:documentation>
            			This string must match the user part of the URI which is contained
            			in the <html:code>Message-Account</html:code> line of the MWI event package.  
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="mailboxRetrieve" type="abt:numberType" maxOccurs="1" minOccurs="0">
            	<xsd:annotation>
            		<xsd:documentation>
            			If the user wants to listen to recorded messages, the specified number is dialed.
            			<html:code>&lt;mailboxNumber&gt;</html:code> is used when this field is empty.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
            <xsd:element name="mailboxName" type="abt:nameType" maxOccurs="1" minOccurs="0">
            	<xsd:annotation>
            		<xsd:documentation>
            			A string to display in the user interface for this voicemail box.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:element>
        </xsd:all>
        <xsd:attribute name="mailboxId" type="prov:mailboxIdType" use="required"/>
    </xsd:complexType>
    
    <xsd:complexType name="blfResourceListSubscriptionType">
    	<xsd:annotation>
    		<xsd:documentation>
    			Configures a resource list subscription for busy-lamp-fields.
    		</xsd:documentation>
    		<xsd:documentation source="rfc:4662"/>
    		<xsd:documentation source="rfc:4235"/>
    	</xsd:annotation>
    	<xsd:all>
    		<xsd:element name="enabled" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    		<xsd:element name="uriUser" type="abt:urlType" minOccurs="1" maxOccurs="1">
    			<xsd:annotation>
    				<xsd:documentation>
    					The user part of the subscription URI. Example: If the URI is "sip:foo@bar", just specifiy "foo".
    				</xsd:documentation>
    			</xsd:annotation>
    		</xsd:element>
    	</xsd:all>
    </xsd:complexType>
            
    <xsd:simpleType name="accountHintType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="unspecified"/>
            <xsd:enumeration value="general"/>
            <xsd:enumeration value="trunking"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="intercomType">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="disabled"/>
            <xsd:enumeration value="announcement"/>
            <xsd:enumeration value="handsfree"/>
        </xsd:restriction>
    </xsd:simpleType>
            
    <xsd:complexType name="sipAccountType">
    	<xsd:annotation>
    		<xsd:documentation>
    			Common configuration parameters for general SIP accounts and SIP trunking accounts.
    		</xsd:documentation>
    	</xsd:annotation>
    	<xsd:sequence>
    		<xsd:element name="used" type="xsd:boolean" maxOccurs="1" minOccurs="0">
    			<xsd:annotation>
    				<xsd:documentation source="help:Enabling/Disabling Use of an Account:account_nutzung_einaus">
    					If this flag is set to <html:code>false</html:code>, the account cannot be used
    					for receiving incoming or making outgoing calls.
    				</xsd:documentation>
    			</xsd:annotation>
    		</xsd:element>
    		<xsd:element name="name" type="abt:nameType" maxOccurs="1" minOccurs="1">
    		</xsd:element>
    		<xsd:element name="username" type="prov:sipUserNameType" maxOccurs="1" minOccurs="1" />
    		<xsd:element name="password" type="prov:sipPasswordType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="authId" type="prov:sipUserNameType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="auerswaldAccount" type="xsd:boolean" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="internationalPrefix" type="abt:numberType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="nationalPrefix" type="abt:numberType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="dialPlanLevel" type="prov:dialPlanLevelType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="trunkPrefix" type="abt:numberType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="countryCode" type="prov:countryCodeType" maxOccurs="1" minOccurs="0" />
    		<xsd:element name="mailbox" type="prov:sipMailboxType" maxOccurs="5" minOccurs="0" />
    		<xsd:element name="blfResourceListSubscription" type="prov:blfResourceListSubscriptionType" minOccurs="0" maxOccurs="1" />
    		<xsd:element name="intercom" type="prov:intercomType" minOccurs="0" maxOccurs="1" />
    	</xsd:sequence>
    	<xsd:attribute name="accountId" type="prov:accountIdType" use="required"/>
		<xsd:attribute name="defaultNumberId" type="prov:msnIdType" use="optional"/>
		<xsd:attribute name="defaultMailboxId" type="prov:mailboxIdType" use="optional"/>
    </xsd:complexType>


    <xsd:complexType name="sipGeneralAccountType">
        <xsd:annotation>
        	<xsd:documentation>
        		Configuration for a general SIP account.
        	</xsd:documentation>
        </xsd:annotation>
        <xsd:complexContent>
            <xsd:extension base="prov:sipAccountType">
                <xsd:sequence>
                    <xsd:element name="number" type="prov:msnDdiType" maxOccurs="100" minOccurs="0"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

    <xsd:complexType name="sipTrunkingAccountType">
    	<xsd:annotation>
    		<xsd:documentation>
    			Configuration for a SIP trunking account.
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:complexContent>
            <xsd:extension base="prov:sipAccountType">
                <xsd:sequence>
                    <xsd:element name="baseNumber" type="prov:baseNumberType" maxOccurs="1" minOccurs="1"/>
                    <xsd:element name="number" type="prov:msnDdiType" maxOccurs="350" minOccurs="0"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

    <xsd:simpleType name="profileType">
    	<xsd:restriction base="xsd:string">
    		<xsd:minLength value="0"></xsd:minLength>
    		<xsd:maxLength value="64"></xsd:maxLength>
    	</xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="specialNumberType">
    	<xsd:restriction base="abt:numberType">
    		<xsd:minLength value="0"/>
    		<xsd:maxLength value="64"/>
    	</xsd:restriction>
    </xsd:simpleType>
    
    <xsd:complexType name="keypadSequenceType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Entering Keypad Sequences:anbietertkanlage_keypadsequenz"/>
    	</xsd:annotation>
    	<xsd:all>
			<xsd:element name="exchange" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="pickup" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="intercomAnnouncement" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="intercom" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="acknowledgeAlert" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
	        <xsd:element name="waitingLoop" type="prov:specialNumberType" minOccurs="0" maxOccurs="1"/>
    	</xsd:all>
    </xsd:complexType>
    
    <xsd:simpleType name="networkInterfaceType">
    	<xsd:annotation>
		   	<xsd:documentation>
		   		Exchange SIP messages exclusively over the specified network interface.
		   	</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="default">
            	<xsd:annotation>
            		<xsd:documentation>
            			Use the standard ethernet network interface.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="vlan">
            	<xsd:annotation>
            		<xsd:documentation source="netzwerk_vlan">
            			Use the configured VLAN interface.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="vpn">
            	<xsd:annotation>
            		<xsd:documentation source="http://openvpn.net/index.php/open-source/documentation.html">
            			Use the first detected TUN or TAP interface.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="ipVersionType">
    	<xsd:annotation>
		   	<xsd:documentation>
		   		Exchange SIP messages exclusively over the specified ip version.
		   	</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="IPv4">
            	<xsd:annotation>
            		<xsd:documentation>
            			Use IPv4 only.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="IPv6">
            	<xsd:annotation>
            		<xsd:documentation>
            			Use IPv6 only.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="auto">
            	<xsd:annotation>
            		<xsd:documentation>
            			Try to find out automatically based on configuration and DNS results.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="serverTypeType">
    	<xsd:annotation>
		   	<xsd:documentation>
		        Auerswald SIP software can be configured to work with different SIP server types.
		   	</xsd:documentation>
    	</xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="general">
            	<xsd:annotation>
            		<xsd:documentation>
            			Standard implementation. 
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="Broadsoft">
            	<xsd:annotation>
            		<xsd:documentation>
            			Select if connecting to Broadsoft servers or servers using SIP forking. 
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
            <xsd:enumeration value="Estos CSTA">
            	<xsd:annotation>
            		<xsd:documentation>
            			For establishing uaCSTA control sessions with Estos servers.
            		</xsd:documentation>
            	</xsd:annotation>
            </xsd:enumeration>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="providerType">
    	<xsd:annotation>
    		<xsd:documentation source="help:Providers and PBXs:anbietertkanlage">
    			Define configuration parameters for a PBX with SIP support
    			or an internet telephony service provider (ITSP).
    		</xsd:documentation>
    	</xsd:annotation>
        <xsd:sequence>
			<xsd:element name="name" type="abt:nameType" minOccurs="1" maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation source="help:Entering a Name for the Provider/PBX:anbietertkanlage_name">
						A string to display for this provider in the unser interface.
					</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
        	<xsd:sequence minOccurs="0" maxOccurs="1">
	            <xsd:element name="profile" type="prov:profileType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="isPBX" type="xsd:boolean" minOccurs="1" maxOccurs="1">
	            	<xsd:annotation>
	            		<xsd:documentation source="help:Selecting the Type:anbietertkanlage_typ">
	            			If set to <html:code>true</html:code>,
	            			the configured provider is a local PBX,
	            			otherwise a general ITSP.
	            		</xsd:documentation>
	            	</xsd:annotation>
	            </xsd:element>
	            <xsd:element name="ctrloutgingaudio" type="xsd:boolean" minOccurs="0" maxOccurs="1">
	            	<xsd:annotation>
	            		<xsd:documentation source="help:Selecting the Type:anbietertkanlage_typ">
	            			If set to <html:code>true</html:code>,
	            			if the configured provider send a early media header,
	            			the PBX switches the outgoing audio channel to the provider. 
	            		</xsd:documentation>
	            	</xsd:annotation>
	            </xsd:element>
	            <xsd:element name="ctrlearlymediasupport" type="xsd:boolean" minOccurs="0" maxOccurs="1">
	            	<xsd:annotation>
	            		<xsd:documentation source="help:Selecting the Type:anbietertkanlage_typ">
	            			If set to <html:code>true</html:code>,
	            			if the configured provider receive a early media header,
	            			the PBX switches the incoming audio channel to the devices.
	            			If set to <html:code>false</html:code>,
	            			if the configured provider dong care about a early media header,
	            			the PBX play a ringtone itself to the devices.
	            		</xsd:documentation>
	            	</xsd:annotation>
	            </xsd:element>
                <xsd:element name="emergencyCalls" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="accountTypeHint" type="prov:accountHintType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="handlesETSINumbers" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
                <xsd:element name="disableAutomaticAreaCodes" type="xsd:boolean" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Within Auerswald VoipPhones: disables all automatic handling of area codes (default: false).
                            Needed for PBX's that don't know nor care about area-codes, e.g. when it uses alphanumeric SIP-URI's.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
	            <xsd:element name="sendsInbandRinging" type="xsd:boolean" minOccurs="1" maxOccurs="1"/>
	            <xsd:element name="playMusicOnHold" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="keypadSequence" type="prov:keypadSequenceType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="networkInterface" type="prov:networkInterfaceType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="ipVersion" type="prov:ipVersionType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="increasedSecurity" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="serverType" type="prov:serverTypeType" minOccurs="0" maxOccurs="1"/>
	            <xsd:element name="sip" type="prov:sipConfigType" minOccurs="1" maxOccurs="1"/>
	            <xsd:element name="rtp" type="prov:rtpConfigType" minOccurs="1" maxOccurs="1"/>
	            <xsd:element name="nat" type="prov:natConfigType" minOccurs="1" maxOccurs="1"/>
	            <xsd:element name="t38" type="prov:t38ConfigType" minOccurs="1" maxOccurs="1"/>
        	</xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="100">
                <xsd:element name="generalAccount" type="prov:sipGeneralAccountType" maxOccurs="1" minOccurs="1">
                	<xsd:key name="generalAccountNumberIdKey">
                		<xsd:selector xpath="number"/>
                		<xsd:field xpath="@numberId"/>
                	</xsd:key>
                	<xsd:key name="generalAccountMailboxIdKey">
                		<xsd:selector xpath="mailbox"/>
                		<xsd:field xpath="@mailboxId"/>
                	</xsd:key>
                	<xsd:keyref name="generalAccountNumberIdKeyref" refer="prov:generalAccountNumberIdKey">
                		<xsd:selector xpath="."/>
                		<xsd:field xpath="@defaultNumberId"/>
                	</xsd:keyref>
                	<xsd:keyref name="generalAccountMailboxIdKeyref" refer="prov:generalAccountMailboxIdKey">
                		<xsd:selector xpath="."/>
                		<xsd:field xpath="@defaultMailboxId"/>
                	</xsd:keyref>
                </xsd:element>
                <xsd:element name="trunkingAccount" type="prov:sipTrunkingAccountType" maxOccurs="1" minOccurs="1">
					<xsd:key name="trunkingAccountNumberIdKey">
                		<xsd:selector xpath="number"/>
                		<xsd:field xpath="@numberId"/>
                	</xsd:key>
					<xsd:key name="trunkingAccountMailboxIdKey">
                		<xsd:selector xpath="mailbox"/>
                		<xsd:field xpath="@mailboxId"/>
                	</xsd:key>
                	<xsd:keyref name="trunkingAccountNumberIdKeyref" refer="prov:trunkingAccountNumberIdKey">
                		<xsd:selector xpath="."/>
                		<xsd:field xpath="@defaultNumberId"/>
                	</xsd:keyref>
                	<xsd:keyref name="trunkingAccountMailboxIdKeyref" refer="prov:trunkingAccountMailboxIdKey">
                		<xsd:selector xpath="."/>
                		<xsd:field xpath="@defaultMailboxId"/>
                	</xsd:keyref>
                </xsd:element>
            </xsd:choice>
	    </xsd:sequence>
    	<xsd:attribute name="providerId" type="prov:providerIdType" use="optional"/>
    	<xsd:attribute name="profileVersion" type="prov:profileVersionType" use="optional"/>
    </xsd:complexType>
</xsd:schema>
