<?xml version='1.0'?>
<!-- NOTE: this file is autogenerated by Apache XBean -->

<xs:schema elementFormDefault='qualified'
           targetNamespace='http://servicemix.apache.org/eip/1.0'
           xmlns:xs='http://www.w3.org/2001/XMLSchema'
           xmlns:tns='http://servicemix.apache.org/eip/1.0'>

  <!-- element for type: org.apache.servicemix.eip.patterns.AsyncBridge -->
  <xs:element name='async-bridge'>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='requestCorrId' type='xs:string'/>
      <xs:attribute name='responseCorrId' type='xs:string'/>
      <xs:attribute name='responseCorrIdProperty' type='xs:string'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timeout' type='xs:long'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='useRobustInOnly' type='xs:boolean'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.EIPComponent -->
  <xs:element name='component'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        An EIP component
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='endpoints' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='unbounded'>
              <xs:element ref='tns:async-bridge'/>
              <xs:element ref='tns:content-based-router'/>
              <xs:element ref='tns:content-enricher'/>
              <xs:element ref='tns:message-filter'/>
              <xs:element ref='tns:pipeline'/>
              <xs:element ref='tns:recipient-list-aggregator'/>
              <xs:element ref='tns:resequencer'/>
              <xs:element ref='tns:split-aggregator'/>
              <xs:element ref='tns:static-recipient-list'/>
              <xs:element ref='tns:static-routing-slip'/>
              <xs:element ref='tns:wire-tap'/>
              <xs:element ref='tns:xpath-splitter'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='executor' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='executorFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='executor' type='xs:string'/>
      <xs:attribute name='executorFactory' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.ContentBasedRouter -->
  <xs:element name='content-based-router'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A Content-Based Router
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='rules' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='unbounded'>
              <xs:element ref='tns:routing-rule'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='forwardOperation' type='xs:boolean'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.ContentEnricher -->
  <xs:element name='content-enricher'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A Content Enricher
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='enricherTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='copyAttachments' type='xs:boolean'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            If this is set to <code>true</code>, message attachments from the incoming exchange and the enricher exchange will be copied
to the outgoing message exchange. The default value is <code>false</code> (do not copy message atachments).
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='copyProperties' type='xs:boolean'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            If this is set to <code>true</code>, message properties from the incoming exchange and the enricher exchange will be copied
to the outgoing message exchange. The default value is <code>false</code> (do not copy message properties).
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='enricherElementName' type='xs:QName'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            returns the QName of the resulting root node
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='enricherTarget' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='requestElementName' type='xs:QName'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Returns the QName of the element which contains the 'IN Message'
within the response message
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='resultElementName' type='xs:QName'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Returns the QName of the element which contains the message
which was produced by the enricherTarget within the
response message
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.resequence.DefaultComparator -->
  <xs:element name='default-comparator'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        Compares {@link MessageExchange} sequence elements based on sequence numbers
defined by their in-{@link NormalizedMessage}s. This comparator works on
sequence numbers of type {@link Long}. Sequence numbers must be stored as
{@link NormalizedMessage} properties. The property name under which the
sequence number is stored is configured via this comparator's
<code>sequenceNumberKey</code> property.
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name='sequenceNumberAsString' type='xs:boolean'/>
      <xs:attribute name='sequenceNumberKey' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.ExchangeTarget -->
  <xs:element name='exchange-target'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        An ExchangeTarget may be used to specify the target of an exchange,
while retaining all the JBI features (interface based routing, service
name based routing or endpoint routing).
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='interface' type='xs:QName'/>
      <xs:attribute name='operation' type='xs:QName'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='uri' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.MessageFilter -->
  <xs:element name='message-filter'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A Message Filter
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='filter' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:switch-predicate'/>
              <xs:element ref='tns:xpath-predicate'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='filter' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='reportErrors' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.NamespaceContextImpl -->
  <xs:element name='namespace-context'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A NamespaceContext implementation
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='namespaces' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Keep the getter/setter to keep xbean annotation
            ]]></xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='unbounded'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='namespaces' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Keep the getter/setter to keep xbean annotation
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.Pipeline -->
  <xs:element name='pipeline'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A Pipeline
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='faultsTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='transformer' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='copyAttachments' type='xs:boolean'/>
      <xs:attribute name='copyProperties' type='xs:boolean'/>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='faultsTarget' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='sendFaultsToTarget' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='transformer' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.RecipientListAggregator -->
  <xs:element name='recipient-list-aggregator'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        An aggregator specifically written to aggregate messages that have been sent using
a StaticRecipientList pattern.
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='closedAggregatesStoreFactory' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Access the currently configured {@link StoreFactory} for storing closed aggregations
            ]]></xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='aggregateElementName' type='xs:QName'/>
      <xs:attribute name='closedAggregatesStoreFactory' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Access the currently configured {@link StoreFactory} for storing closed aggregations
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='copyAttachments' type='xs:boolean'/>
      <xs:attribute name='copyProperties' type='xs:boolean'/>
      <xs:attribute name='corrId' type='xs:string'/>
      <xs:attribute name='count' type='xs:string'/>
      <xs:attribute name='countAttribute' type='xs:string'/>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='index' type='xs:string'/>
      <xs:attribute name='indexAttribute' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='messageElementName' type='xs:QName'/>
      <xs:attribute name='rescheduleTimeouts' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='synchronous' type='xs:boolean'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timeout' type='xs:long'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.Resequencer -->
  <xs:element name='resequencer'>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='comparator' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:default-comparator'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='capacity' type='xs:integer'/>
      <xs:attribute name='comparator' type='xs:string'/>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timeout' type='xs:long'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.RoutingRule -->
  <xs:element name='routing-rule'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        The RoutingRule interface is used by content based routers.
If the rule predicate matches the MessageExchange, the
target defined on the rule will be used as the destination for
the given MessageExchange.
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='predicate' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:switch-predicate'/>
              <xs:element ref='tns:xpath-predicate'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='predicate' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.SplitAggregator -->
  <xs:element name='split-aggregator'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        Aggregator can be used to wait and combine several messages.
This component implements the
<a href="http://www.enterpriseintegrationpatterns.com/Aggregator.html">Aggregator</a>
pattern.

This aggregator collect messages with a count, index and correlationId properties.
These properties are automatically set by splitters.
A timeout may be specified so that the aggregator will not keep data forever if a message is missing.
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='closedAggregatesStoreFactory' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Access the currently configured {@link StoreFactory} for storing closed aggregations
            ]]></xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='aggregateElementName' type='xs:QName'/>
      <xs:attribute name='closedAggregatesStoreFactory' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Access the currently configured {@link StoreFactory} for storing closed aggregations
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='copyAttachments' type='xs:boolean'/>
      <xs:attribute name='copyProperties' type='xs:boolean'/>
      <xs:attribute name='corrId' type='xs:string'/>
      <xs:attribute name='count' type='xs:string'/>
      <xs:attribute name='countAttribute' type='xs:string'/>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='index' type='xs:string'/>
      <xs:attribute name='indexAttribute' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='messageElementName' type='xs:QName'/>
      <xs:attribute name='rescheduleTimeouts' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='synchronous' type='xs:boolean'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timeout' type='xs:long'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.StaticRecipientList -->
  <xs:element name='static-recipient-list'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A static Recipient List
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='recipients' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='unbounded'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='reportErrors' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.StaticRoutingSlip -->
  <xs:element name='static-routing-slip'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A static Routing Slip
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='targets' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='unbounded'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.SwitchPredicate -->
  <xs:element name='switch-predicate'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        switch (on/off) predicate based on a property that can come from
1. a system property
2. a property from a property file (specified as Spring resource)
3. a property from the exchange
4. swtich on/off via JMX MBean (not yet implemented)
<p/>
the property is interpreted as a boolean value
If fromExchange is true --> 3.
If propertyResource is specified --> 2.
else --> 1.
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name='fromExchange' type='xs:boolean'/>
      <xs:attribute name='on' type='xs:boolean'/>
      <xs:attribute name='propertyName' type='xs:string'/>
      <xs:attribute name='propertyResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.WireTap -->
  <xs:element name='wire-tap'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        A WireTap
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='faultListener' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='inListener' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='outListener' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='copyProperties' type='xs:boolean'/>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='faultListener' type='xs:string'/>
      <xs:attribute name='inListener' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='outListener' type='xs:string'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.support.XPathPredicate -->
  <xs:element name='xpath-predicate'>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='factory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='functionResolver' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='namespaceContext' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:namespace-context'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='transformer' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='variableResolver' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='XPath' type='xs:string'/>
      <xs:attribute name='factory' type='xs:string'/>
      <xs:attribute name='functionResolver' type='xs:string'/>
      <xs:attribute name='namespaceContext' type='xs:string'/>
      <xs:attribute name='transformer' type='xs:string'/>
      <xs:attribute name='useMessageContent' type='xs:boolean'/>
      <xs:attribute name='variableResolver' type='xs:string'/>
      <xs:attribute name='xpath' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


  <!-- element for type: org.apache.servicemix.eip.patterns.XPathSplitter -->
  <xs:element name='xpath-splitter'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        An XPath Splitter
      ]]></xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='definition' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='description' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='factory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='functionResolver' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='lockManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='namespaceContext' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:namespace-context'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='serviceUnit' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='store' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='storeFactory' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='target' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='timerManager' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='transformer' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='variableResolver' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:sequence minOccurs='0' maxOccurs='1'><xs:any namespace='##other'/></xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name='wsdlExchangeTarget' minOccurs='0' maxOccurs='1'>
          <xs:complexType>
            <xs:choice minOccurs='0' maxOccurs='1'>
              <xs:element ref='tns:exchange-target'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
      </xs:sequence>
      <xs:attribute name='definition' type='xs:string'/>
      <xs:attribute name='description' type='xs:string'/>
      <xs:attribute name='endpoint' type='xs:string'/>
      <xs:attribute name='factory' type='xs:string'/>
      <xs:attribute name='forwardAttachments' type='xs:boolean'/>
      <xs:attribute name='forwardProperties' type='xs:boolean'/>
      <xs:attribute name='functionResolver' type='xs:string'/>
      <xs:attribute name='interfaceName' type='xs:QName'/>
      <xs:attribute name='lockManager' type='xs:string'/>
      <xs:attribute name='namespaceContext' type='xs:string'/>
      <xs:attribute name='reportErrors' type='xs:boolean'/>
      <xs:attribute name='service' type='xs:QName'/>
      <xs:attribute name='serviceUnit' type='xs:string'/>
      <xs:attribute name='store' type='xs:string'/>
      <xs:attribute name='storeFactory' type='xs:string'/>
      <xs:attribute name='synchronous' type='xs:boolean'/>
      <xs:attribute name='target' type='xs:string'/>
      <xs:attribute name='timerManager' type='xs:string'/>
      <xs:attribute name='transformer' type='xs:string'/>
      <xs:attribute name='variableResolver' type='xs:string'/>
      <xs:attribute name='wsdlExchangeTarget' type='xs:string'/>
      <xs:attribute name='wsdlResource' type='xs:string'/>
      <xs:attribute name='xpath' type='xs:string'/>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


</xs:schema>
