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

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

  <!-- element for type: org.apache.servicemix.validation.ValidationComponent -->
  <xs:element name='component'>
    <xs:annotation>
      <xs:documentation><![CDATA[
        Validation
      ]]></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:endpoint'/>
              <xs:any namespace='##other'/>
            </xs:choice>
          </xs:complexType>
        </xs:element>
        <xs:element name='executorFactory' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              The executor factory to use to create the executor.
If none is provided, one will be retrieved from the JBI container when the component
is deployed into ServiceMix 3.x, or a default implementation will be used.
            ]]></xs:documentation>
          </xs:annotation>
          <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='executorFactory' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            The executor factory to use to create the executor.
If none is provided, one will be retrieved from the JBI container when the component
is deployed into ServiceMix 3.x, or a default implementation will be used.
          ]]></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.validation.ValidationEndpoint -->
  <xs:element name='endpoint'>
    <xs:complexType>
      <xs:sequence>
        <xs:element name='errorHandlerFactory' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Set a custom error handler to deal with validation errors. Defaults to a <code>CountingErrorHandlerFactory</code>.
            ]]></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='noNamespaceSchemaResource' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Set the validation schema to be used when no namespace is specified.
            ]]></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='schema' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Set the validation schema instance.
            ]]></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='schemaResource' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Set the validation schema as a Spring Resource.
            ]]></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='schemaSource' minOccurs='0' maxOccurs='1'>
          <xs:annotation>
            <xs:documentation><![CDATA[
              Set the validation schema as an XML Source.
            ]]></xs:documentation>
          </xs:annotation>
          <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='endpoint' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            <p>
Get the endpoint implementation.
</p>
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='errorHandlerFactory' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set a custom error handler to deal with validation errors. Defaults to a <code>CountingErrorHandlerFactory</code>.
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='handlingErrorMethod' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Configure how validation errors should be handled. Default value is <code>FAULT_JBI</code>.
<dl>
<dt><code>FAULT_JBI</code></dt>
<dd>A jbi exception is thrown on validation errors (depending on used MEP)</dd>
<dt><code>FAULT_FLOW</code></dt>
<dd>The validation result will be sent in out / fault message (depending on used MEP)</dd>
</dl>
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='interfaceName' type='xs:QName'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            <p>
Get the qualified name of the endpoint interface.
</p>
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='noNamespaceSchemaResource' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set the validation schema to be used when no namespace is specified.
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='schema' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set the validation schema instance.
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='schemaLanguage' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set the validation schema language. Defaults to <code>http://www.w3.org/2001/XMLSchema</code>
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='schemaResource' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set the validation schema as a Spring Resource.
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='schemaSource' type='xs:string'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            Set the validation schema as an XML Source.
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='service' type='xs:QName'>
        <xs:annotation>
          <xs:documentation><![CDATA[
            <p>
Get the service qualified name of the endpoint.
</p>
          ]]></xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name='id' type='xs:ID'/>
      <xs:anyAttribute namespace='##other' processContents='lax'/>
    </xs:complexType>
  </xs:element>


</xs:schema>
