Schema Name: cpp-cpa-2_0.xsd
Target Namespace: http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd
Collapse XSD Schema Code:

<!-- This is the schema that corresponds to the version 2.0 CPP/A spec -->
<!-- Some parsers may require explicit declaration of 'xmlns:xml="http://www.w3.org/XML/1998/namespace"'. 
     In that case, a copy of this schema augmented with the above declaration should be cached and used
     for the purpose of schema validation for CPPs and CPAs. -->
<schema
  targetNamespace="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd"
  xmlns:tns="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd"
  xmlns="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  elementFormDefault="qualified"
  attributeFormDefault="qualified" version="2_0b">
  <import namespace="http://www.w3.org/1999/xlink" schemaLocation="https://www.w3.org/XML/2008/06/xlink.xsd"/>
  <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="https://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
  <import namespace="http://www.w3.org/XML/1998/namespace"/>
  <attributeGroup name="pkg.grp">
    <attribute ref="tns:id" use="required"/>
    <attribute name="mimetype" type="tns:non-empty-string" use="required"/>
    <attribute name="mimeparameters" type="tns:non-empty-string"/>
  </attributeGroup>
  <attributeGroup name="xlink.grp">
    <attribute ref="xlink:type" fixed="simple"/>
    <attribute ref="xlink:href" use="required"/>
  </attributeGroup>
  <element name="CollaborationProtocolAgreement">
    <complexType>
      <sequence>
        <element ref="tns:Status"/>
        <element ref="tns:Start"/>
        <element ref="tns:End"/>
        <element ref="tns:ConversationConstraints" minOccurs="0"/>
        <element ref="tns:PartyInfo" minOccurs="2" maxOccurs="2"/>
        <element ref="tns:SimplePart" maxOccurs="unbounded"/>
        <element ref="tns:Packaging" maxOccurs="unbounded"/>
        <element ref="tns:Signature" minOccurs="0"/>
        <element ref="tns:Comment" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="cpaid" type="tns:non-empty-string" use="required"/>
      <attribute ref="tns:version" use="required"/>
    </complexType>
  </element>
  <element name="Signature">
    <complexType>
      <sequence>
        <element ref="ds:Signature" maxOccurs="3"/>
      </sequence>
    </complexType>
  </element>
  <element name="CollaborationProtocolProfile">
    <complexType>
      <sequence>
        <element ref="tns:PartyInfo" maxOccurs="unbounded"/>
        <element ref="tns:SimplePart" maxOccurs="unbounded"/>
        <element ref="tns:Packaging" maxOccurs="unbounded"/>
        <element ref="tns:Signature" minOccurs="0"/>
        <element ref="tns:Comment" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="cppid" type="tns:non-empty-string" use="required"/>
      <attribute ref="tns:version" use="required"/>
    </complexType>
  </element>
  <element name="ProcessSpecification">
    <complexType>
      <sequence>
        <element ref="ds:Reference" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="name" type="tns:non-empty-string" use="required"/>
      <attribute ref="tns:version" use="required"/>
      <attributeGroup ref="tns:xlink.grp"/>
      <attribute name="uuid" type="anyURI"/>
    </complexType>
  </element>
  <element name="Service" type="tns:service.type"/>
  <element name="Protocol" type="tns:protocol.type"/>
  <element name="SendingProtocol" type="tns:protocol.type"/>
  <element name="ReceivingProtocol" type="tns:protocol.type"/>
  <element name="OverrideMshActionBinding">
    <complexType>
      <attribute name="action" type="tns:non-empty-string" use="required"/>
      <attribute name="channelId" type="IDREF" use="required"/>
    </complexType>
  </element>
  <element name="ChannelId" type="IDREF"/>
  <complexType name="ActionBinding.type">
    <sequence>
      <element ref="tns:BusinessTransactionCharacteristics"/>
      <element ref="tns:ActionContext" minOccurs="0"/>
      <element ref="tns:ChannelId" maxOccurs="unbounded"/>
      <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    <attribute name="id" type="ID" use="required"/>
    <attribute name="action" type="tns:non-empty-string" use="required"/>
    <attribute name="packageId" type="IDREF" use="required"/>
    <attribute ref="xlink:href" use="optional"/>
    <attribute ref="xlink:type" fixed="simple"/>
  </complexType>
  <element name="ActionContext">
    <complexType>
      <sequence>
        <element ref="tns:CollaborationActivity" minOccurs="0"/>
        <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="binaryCollaboration" type="tns:non-empty-string" use="required"/>
      <attribute name="businessTransactionActivity" type="tns:non-empty-string" use="required"/>
      <attribute name="requestOrResponseAction" type="tns:non-empty-string" use="required"/>
    </complexType>
  </element>
  <element name="CollaborationActivity">
    <complexType>
      <sequence>
        <element ref="tns:CollaborationActivity" minOccurs="0"/>
      </sequence>
      <attribute name="name" type="tns:non-empty-string"/>
    </complexType>
  </element>
  <element name="CollaborationRole">
    <complexType>
      <sequence>
        <element ref="tns:ProcessSpecification"/>
        <element ref="tns:Role"/>
        <element name="ApplicationCertificateRef" type="tns:CertificateRef.type" minOccurs="0" maxOccurs="unbounded"/>
        <element name="ApplicationSecurityDetailsRef" type="tns:SecurityDetailsRef.type" minOccurs="0"/>
        <element ref="tns:ServiceBinding"/>
      </sequence>
    </complexType>
  </element>
  <element name="PartyInfo">
    <complexType>
      <sequence>
        <element ref="tns:PartyId" maxOccurs="unbounded"/>
        <element ref="tns:PartyRef" maxOccurs="unbounded"/>
        <element ref="tns:CollaborationRole" maxOccurs="unbounded"/>
        <element ref="tns:Certificate" minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:SecurityDetails" minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:DeliveryChannel" maxOccurs="unbounded"/>
        <element ref="tns:Transport" maxOccurs="unbounded"/>
        <element ref="tns:DocExchange" maxOccurs="unbounded"/>
        <element ref="tns:OverrideMshActionBinding" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="partyName" type="tns:non-empty-string" use="required"/>
      <attribute name="defaultMshChannelId" type="IDREF" use="required"/>
      <attribute name="defaultMshPackageId" type="IDREF" use="required"/>
    </complexType>
  </element>
  <element name="PartyId">
    <complexType>
      <simpleContent>
        <extension base="tns:non-empty-string">
          <attribute name="type" type="anyURI"/>
        </extension>
      </simpleContent>
    </complexType>
  </element>
  <element name="PartyRef">
    <complexType>
      <sequence>
      </sequence>
      <attributeGroup ref="tns:xlink.grp"/>
      <attribute name="type" type="anyURI"/>
      <attribute name="schemaLocation" type="anyURI"/>
    </complexType>
  </element>
  <element name="DeliveryChannel">
    <complexType>
      <sequence>
        <element ref="tns:MessagingCharacteristics"/>
      </sequence>
      <attribute name="channelId" type="ID" use="required"/>
      <attribute name="transportId" type="IDREF" use="required"/>
      <attribute name="docExchangeId" type="IDREF" use="required"/>
    </complexType>
  </element>
  <element name="Transport">
    <complexType>
      <sequence>
        <element ref="tns:TransportSender" minOccurs="0"/>
        <element ref="tns:TransportReceiver" minOccurs="0"/>
      </sequence>
      <attribute name="transportId" type="ID" use="required"/>
    </complexType>
  </element>
  <element name="AccessAuthentication" type="tns:accessAuthentication.type"/>
  <element name="TransportSender">
    <complexType>
      <sequence>
        <element name="TransportProtocol" type="tns:protocol.type"/>
        <element ref="tns:AccessAuthentication" minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:TransportClientSecurity" minOccurs="0"/>
      </sequence>
    </complexType>
  </element>
  <element name="TransportReceiver">
    <complexType>
      <sequence>
        <element name="TransportProtocol" type="tns:protocol.type"/>
        <element ref="tns:AccessAuthentication" minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:Endpoint" maxOccurs="unbounded"/>
        <element ref="tns:TransportServerSecurity" minOccurs="0"/>
      </sequence>
    </complexType>
  </element>
  <element name="Endpoint">
    <complexType>
      <attribute name="uri" type="anyURI" use="required"/>
      <attribute name="type" type="tns:endpointType.type" default="allPurpose"/>
    </complexType>
  </element>
  <element name="TransportClientSecurity">
    <complexType>
      <sequence>
        <element name="TransportSecurityProtocol" type="tns:protocol.type"/>
        <element name="ClientCertificateRef" type="tns:CertificateRef.type" minOccurs="0"/>
        <element name="ServerSecurityDetailsRef" type="tns:SecurityDetailsRef.type" minOccurs="0"/>
        <element ref="tns:EncryptionAlgorithm" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="TransportServerSecurity">
    <complexType>
      <sequence>
        <element name="TransportSecurityProtocol" type="tns:protocol.type"/>
        <element name="ServerCertificateRef" type="tns:CertificateRef.type"/>
        <element name="ClientSecurityDetailsRef" type="tns:SecurityDetailsRef.type" minOccurs="0"/>
        <element ref="tns:EncryptionAlgorithm" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="Certificate">
    <complexType>
      <sequence>
        <element ref="ds:KeyInfo"/>
      </sequence>
      <attribute name="certId" type="ID" use="required"/>
    </complexType>
  </element>
  <element name="DocExchange">
    <complexType>
      <sequence>
        <element ref="tns:ebXMLSenderBinding" minOccurs="0"/>
        <element ref="tns:ebXMLReceiverBinding" minOccurs="0"/>
      </sequence>
      <attribute name="docExchangeId" type="ID" use="required"/>
    </complexType>
  </element>
  <element name="ReliableMessaging">
    <complexType>
      <sequence>
        <element name="Retries" type="integer" minOccurs="0"/>
        <element name="RetryInterval" type="duration" minOccurs="0"/>
        <element name="MessageOrderSemantics" type="tns:messageOrderSemantics.type"/>
      </sequence>
    </complexType>
  </element>
  <element name="PersistDuration" type="duration"/>
  <element name="SenderNonRepudiation">
    <complexType>
      <sequence>
        <element name="NonRepudiationProtocol" type="tns:protocol.type"/>
        <element ref="tns:HashFunction"/>
        <element ref="tns:SignatureAlgorithm" maxOccurs="unbounded"/>
        <element name="SigningCertificateRef" type="tns:CertificateRef.type"/>
      </sequence>
    </complexType>
  </element>
  <element name="ReceiverNonRepudiation">
    <complexType>
      <sequence>
        <element name="NonRepudiationProtocol" type="tns:protocol.type"/>
        <element ref="tns:HashFunction"/>
        <element ref="tns:SignatureAlgorithm" maxOccurs="unbounded"/>
        <element name="SigningSecurityDetailsRef" type="tns:SecurityDetailsRef.type" minOccurs="0"/>
      </sequence>
    </complexType>
  </element>
  <element name="HashFunction" type="tns:non-empty-string"/>
  <element name="EncryptionAlgorithm">
    <complexType>
      <simpleContent>
        <extension base="tns:non-empty-string">
          <attribute name="minimumStrength" type="integer"/>
          <attribute name="oid" type="tns:non-empty-string"/>
          <attribute name="w3c" type="tns:non-empty-string"/>
          <attribute name="enumerationType" type="tns:non-empty-string"/>
        </extension>
      </simpleContent>
    </complexType>
  </element>
  <element name="SignatureAlgorithm">
    <complexType>
      <simpleContent>
        <extension base="tns:non-empty-string">
          <attribute name="oid" type="tns:non-empty-string"/>
          <attribute name="w3c" type="tns:non-empty-string"/>
          <attribute name="enumerationType" type="tns:non-empty-string"/>
        </extension>
      </simpleContent>
    </complexType>
  </element>
  <element name="SenderDigitalEnvelope">
    <complexType>
      <sequence>
        <element name="DigitalEnvelopeProtocol" type="tns:protocol.type"/>
        <element ref="tns:EncryptionAlgorithm" maxOccurs="unbounded"/>
        <element name="EncryptionSecurityDetailsRef" type="tns:SecurityDetailsRef.type" minOccurs="0"/>
      </sequence>
    </complexType>
  </element>
  <element name="ReceiverDigitalEnvelope">
    <complexType>
      <sequence>
        <element name="DigitalEnvelopeProtocol" type="tns:protocol.type"/>
        <element ref="tns:EncryptionAlgorithm" maxOccurs="unbounded"/>
        <element name="EncryptionCertificateRef" type="tns:CertificateRef.type"/>
      </sequence>
    </complexType>
  </element>
  <element name="ebXMLSenderBinding">
    <complexType>
      <sequence>
        <element ref="tns:ReliableMessaging" minOccurs="0"/>
        <element ref="tns:PersistDuration" minOccurs="0"/>
        <element ref="tns:SenderNonRepudiation" minOccurs="0"/>
        <element ref="tns:SenderDigitalEnvelope" minOccurs="0"/>
        <element ref="tns:NamespaceSupported" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute ref="tns:version" use="required"/>
    </complexType>
  </element>
  <element name="ebXMLReceiverBinding">
    <complexType>
      <sequence>
        <element ref="tns:ReliableMessaging" minOccurs="0"/>
        <element ref="tns:PersistDuration" minOccurs="0"/>
        <element ref="tns:ReceiverNonRepudiation" minOccurs="0"/>
        <element ref="tns:ReceiverDigitalEnvelope" minOccurs="0"/>
        <element ref="tns:NamespaceSupported" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute ref="tns:version" use="required"/>
    </complexType>
  </element>
  <element name="NamespaceSupported">
    <complexType>
      <simpleContent>
        <extension base="anyURI">
          <attribute name="location" type="anyURI" use="required"/>
          <attribute ref="tns:version"/>
        </extension>
      </simpleContent>
    </complexType>
  </element>
  <element name="BusinessTransactionCharacteristics">
    <complexType>
      <attribute name="isNonRepudiationRequired" type="boolean"/>
      <attribute name="isNonRepudiationReceiptRequired" type="boolean"/>
      <attribute name="isConfidential" type="tns:persistenceLevel.type"/>
      <attribute name="isAuthenticated" type="tns:persistenceLevel.type"/>
      <attribute name="isTamperProof" type="tns:persistenceLevel.type"/>
      <attribute name="isAuthorizationRequired" type="boolean"/>
      <attribute name="isIntelligibleCheckRequired" type="boolean"/>
      <attribute name="timeToAcknowledgeReceipt" type="duration"/>
      <attribute name="timeToAcknowledgeAcceptance" type="duration"/>
      <attribute name="timeToPerform" type="duration"/>
      <attribute name="retryCount" type="integer"/>
    </complexType>
  </element>
  <element name="MessagingCharacteristics">
    <complexType>
      <attribute ref="tns:syncReplyMode" default="none"/>
      <attribute name="ackRequested" type="tns:perMessageCharacteristics.type" default="perMessage"/>
      <attribute name="ackSignatureRequested" type="tns:perMessageCharacteristics.type" default="perMessage"/>
      <attribute name="duplicateElimination" type="tns:perMessageCharacteristics.type" default="perMessage"/>
      <attribute name="actor" type="tns:actor.type"/>
    </complexType>
  </element>
  <element name="ServiceBinding">
    <complexType>
      <sequence>
        <element ref="tns:Service"/>
        <element ref="tns:CanSend" minOccurs="0" maxOccurs="unbounded"/>
        <element ref="tns:CanReceive" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="CanSend">
    <complexType>
      <sequence>
        <element name="ThisPartyActionBinding" type="tns:ActionBinding.type"/>
        <element name="OtherPartyActionBinding" type="IDREF" minOccurs="0"/>
        <element ref="tns:CanReceive" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="CanReceive">
    <complexType>
      <sequence>
        <element name="ThisPartyActionBinding" type="tns:ActionBinding.type"/>
        <element name="OtherPartyActionBinding" type="IDREF" minOccurs="0"/>
        <element ref="tns:CanSend" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="Status">
    <complexType>
      <attribute name="value" type="tns:statusValue.type" use="required"/>
    </complexType>
  </element>
  <element name="Start" type="dateTime"/>
  <element name="End" type="dateTime"/>
  <element name="Type" type="tns:non-empty-string"/>
  <element name="ConversationConstraints">
    <complexType>
      <attribute name="invocationLimit" type="int"/>
      <attribute name="concurrentConversations" type="int"/>
    </complexType>
  </element>
  <element name="Role">
    <complexType>
      <attribute name="name" type="tns:non-empty-string" use="required"/>
      <attributeGroup ref="tns:xlink.grp"/>
    </complexType>
  </element>
  <element name="SignatureTransforms">
    <complexType>
      <sequence>
        <element ref="ds:Transform" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="EncryptionTransforms">
    <complexType>
      <sequence>
        <element ref="ds:Transform" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="Constituent">
    <complexType>
      <sequence>
        <element ref="tns:SignatureTransforms" minOccurs="0"/>
        <element ref="tns:EncryptionTransforms" minOccurs="0"/>
      </sequence>
      <attribute ref="tns:idref" use="required"/>
      <attribute name="excludedFromSignature" type="boolean" default="false"/>
      <attribute name="minOccurs" type="nonNegativeInteger"/>
      <attribute name="maxOccurs" type="nonNegativeInteger"/>
    </complexType>
  </element>
  <element name="Packaging">
    <complexType>
      <sequence>
        <element name="ProcessingCapabilities">
          <complexType>
            <attribute name="parse" type="boolean" use="required"/>
            <attribute name="generate" type="boolean" use="required"/>
          </complexType>
        </element>
        <element name="CompositeList" maxOccurs="unbounded">
          <complexType>
            <choice maxOccurs="unbounded">
              <element name="Encapsulation">
                <complexType>
                  <sequence>
                    <element ref="tns:Constituent"/>
                  </sequence>
                  <attributeGroup ref="tns:pkg.grp"/>
                </complexType>
              </element>
              <element name="Composite">
                <complexType>
                  <sequence>
                    <element ref="tns:Constituent" maxOccurs="unbounded"/>
                  </sequence>
                  <attributeGroup ref="tns:pkg.grp"/>
                </complexType>
              </element>
            </choice>
          </complexType>
        </element>
      </sequence>
      <attribute ref="tns:id" use="required"/>
    </complexType>
  </element>
  <element name="Comment">
    <complexType>
      <simpleContent>
        <extension base="tns:non-empty-string">
          <attribute ref="xml:lang"/>
        </extension>
      </simpleContent>
    </complexType>
  </element>
  <element name="SimplePart">
    <complexType>
      <sequence>
        <element ref="tns:NamespaceSupported" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attributeGroup ref="tns:pkg.grp"/>
      <attribute ref="xlink:role"/>
    </complexType>
  </element>
  <!-- COMMON -->
  <simpleType name="statusValue.type">
    <restriction base="NMTOKEN">
      <enumeration value="agreed"/>
      <enumeration value="signed"/>
      <enumeration value="proposed"/>
    </restriction>
  </simpleType>
  <simpleType name="endpointType.type">
    <restriction base="NMTOKEN">
      <enumeration value="login"/>
      <enumeration value="request"/>
      <enumeration value="response"/>
      <enumeration value="error"/>
      <enumeration value="allPurpose"/>
    </restriction>
  </simpleType>
  <simpleType name="non-empty-string">
    <restriction base="string">
      <minLength value="1"/>
    </restriction>
  </simpleType>
  <simpleType name="syncReplyMode.type">
    <restriction base="NMTOKEN">
      <enumeration value="mshSignalsOnly"/>
      <enumeration value="responseOnly"/>
      <enumeration value="signalsAndResponse"/>
      <enumeration value="signalsOnly"/>
      <enumeration value="none"/>
    </restriction>
  </simpleType>
  <complexType name="service.type">
    <simpleContent>
      <extension base="tns:non-empty-string">
        <attribute name="type" type="tns:non-empty-string"/>
      </extension>
    </simpleContent>
  </complexType>
  <complexType name="protocol.type">
    <simpleContent>
      <extension base="tns:non-empty-string">
        <attribute ref="tns:version"/>
      </extension>
    </simpleContent>
  </complexType>
  <attribute name="idref" type="IDREF"/>
  <attribute name="id" type="ID"/>
  <attribute name="version" type="tns:non-empty-string"/>
  <attribute name="syncReplyMode" type="tns:syncReplyMode.type"/>
  <complexType name="SecurityPolicy.type"/>
  <complexType name="CertificateRef.type">
    <attribute name="certId" type="IDREF" use="required"/>
  </complexType>
  <simpleType name="perMessageCharacteristics.type">
    <restriction base="NMTOKEN">
      <enumeration value="always"/>
      <enumeration value="never"/>
      <enumeration value="perMessage"/>
    </restriction>
  </simpleType>
  <simpleType name="actor.type">
    <restriction base="NMTOKEN">
      <enumeration value="urn:oasis:names:tc:ebxml-msg:actor:nextMSH"/>
      <enumeration value="urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH"/>
    </restriction>
  </simpleType>
  <simpleType name="messageOrderSemantics.type">
    <restriction base="Name">
      <enumeration value="Guaranteed"/>
      <enumeration value="NotGuaranteed"/>
    </restriction>
  </simpleType>
  <complexType name="SecurityDetailsRef.type">
    <attribute name="securityId" type="IDREF" use="required"/>
  </complexType>
  <simpleType name="persistenceLevel.type">
    <restriction base="Name">
      <enumeration value="none"/>
      <enumeration value="transient"/>
      <enumeration value="persistent"/>
      <enumeration value="transient-and-persistent"/>
    </restriction>
  </simpleType>
  <element name="SecurityDetailsRef" type="tns:SecurityDetailsRef.type"/>
  <element name="SecurityDetails">
    <complexType>
      <sequence>
        <element ref="tns:TrustAnchors" minOccurs="0"/>
        <element ref="tns:SecurityPolicy" minOccurs="0"/>
      </sequence>
      <attribute name="securityId" type="ID" use="required"/>
    </complexType>
  </element>
  <element name="TrustAnchors">
    <complexType>
      <sequence>
        <element name="AnchorCertificateRef" type="tns:CertificateRef.type" maxOccurs="unbounded"/>
      </sequence>
    </complexType>
  </element>
  <element name="SecurityPolicy">
    <complexType>
      <sequence>
      </sequence>
    </complexType>
  </element>
  <simpleType name="accessAuthentication.type">
    <restriction base="NMTOKEN">
      <enumeration value="basic"/>
      <enumeration value="digest"/>
    </restriction>
  </simpleType>
</schema>
Collapse Attributes:
Collapse AttributeGroups:
Collapse ComplexTypes:
Collapse Elements:
Collapse SimpleTypes: