<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns:uima.pe="http://docs.oasis-open.org/uima/ns/pe.ecore" xmlns:uima.peMetadata="http://docs.oasis-open.org/uima/ns/peMetadata.ecore" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://docs.oasis-open.org/uima/ns/pe.ecore">
  <xsd:import namespace="http://docs.oasis-open.org/uima/ns/peMetadata.ecore" schemaLocation="uima.peMetadataXMI.xsd"/>
  <xsd:import namespace="http://www.omg.org/XMI" schemaLocation="../../../plugin/org.eclipse.emf.ecore/model/XMI.xsd"/>
  <xsd:complexType name="ProcessingElement">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ProcessingElement" type="uima.pe:ProcessingElement"/>
  <xsd:complexType name="Analyzer">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:Analytic"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="Analyzer" type="uima.pe:Analyzer"/>
  <xsd:complexType name="CasMultiplier">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:Analytic"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="CasMultiplier" type="uima.pe:CasMultiplier"/>
  <xsd:complexType name="FlowController">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:ProcessingElement"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="FlowController" type="uima.pe:FlowController"/>
  <xsd:complexType name="AnalyticMetadataMap">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="AnalyticMetadataMapEntry" type="uima.pe:AnalyticMetadataMapEntry"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="AnalyticMetadataMapEntry" type="xsd:string"/>
  </xsd:complexType>
  <xsd:element name="AnalyticMetadataMap" type="uima.pe:AnalyticMetadataMap"/>
  <xsd:complexType name="AnalyticMetadataMapEntry">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="ProcessingElementMetadata" type="uima.peMetadata:ProcessingElementMetadata"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="key" type="xsd:string"/>
    <xsd:attribute name="ProcessingElementMetadata" type="xsd:string"/>
  </xsd:complexType>
  <xsd:element name="AnalyticMetadataMapEntry" type="uima.pe:AnalyticMetadataMapEntry"/>
  <xsd:complexType name="Analytic">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:ProcessingElement"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="Analytic" type="uima.pe:Analytic"/>
  <xsd:complexType name="Step">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="Step" type="uima.pe:Step"/>
  <xsd:complexType name="SimpleStep">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:Step">
        <xsd:attribute name="analyticKey" type="xsd:string"/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="SimpleStep" type="uima.pe:SimpleStep"/>
  <xsd:complexType name="MultiStep">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:Step">
        <xsd:choice maxOccurs="unbounded" minOccurs="0">
          <xsd:element name="steps" type="uima.pe:Step"/>
        </xsd:choice>
        <xsd:attribute name="parallel" type="xsd:boolean"/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="MultiStep" type="uima.pe:MultiStep"/>
  <xsd:complexType name="FinalStep">
    <xsd:complexContent>
      <xsd:extension base="uima.pe:Step"/>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:element name="FinalStep" type="uima.pe:FinalStep"/>
  <xsd:complexType name="Keys">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="key" nillable="true" type="xsd:string"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="Keys" type="uima.pe:Keys"/>
  <xsd:complexType name="ObjectList">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="objects" type="xmi:Any"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="objects" type="xsd:string"/>
  </xsd:complexType>
  <xsd:element name="ObjectList" type="uima.pe:ObjectList"/>
  <xsd:complexType name="UimaException">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="message" type="xsd:string"/>
  </xsd:complexType>
  <xsd:element name="UimaException" type="uima.pe:UimaException"/>
  <xsd:complexType name="ConfigurationParameterSettings">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="ConfigurationParameterSetting" type="uima.pe:ConfigurationParameterSetting"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="ConfigurationParameterSettings" type="uima.pe:ConfigurationParameterSettings"/>
  <xsd:complexType name="ConfigurationParameterSetting">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="values" nillable="true" type="xsd:string"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="parameterName" type="xsd:string"/>
  </xsd:complexType>
  <xsd:element name="ConfigurationParameterSetting" type="uima.pe:ConfigurationParameterSetting"/>
  <xsd:complexType name="CasBatchInput">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="CasBatchInputElement" type="uima.pe:CasBatchInputElement"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="CasBatchInput" type="uima.pe:CasBatchInput"/>
  <xsd:complexType name="CasBatchInputElement">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="cas" type="xmi:Any"/>
      <xsd:element name="sofas" type="uima.pe:ObjectList"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="CasBatchInputElement" type="uima.pe:CasBatchInputElement"/>
  <xsd:complexType name="CasBatchResponse">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="CasBatchResponseElement" type="uima.pe:CasBatchResponseElement"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="CasBatchResponse" type="uima.pe:CasBatchResponse"/>
  <xsd:complexType name="CasBatchResponseElement">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="CAS" type="xmi:Any"/>
      <xsd:element name="UimaException" type="uima.pe:UimaException"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
  </xsd:complexType>
  <xsd:element name="CasBatchResponseElement" type="uima.pe:CasBatchResponseElement"/>
  <xsd:complexType name="GetNextCasBatchResponse">
    <xsd:choice maxOccurs="unbounded" minOccurs="0">
      <xsd:element name="CAS" type="xmi:Any"/>
      <xsd:element ref="xmi:Extension"/>
    </xsd:choice>
    <xsd:attribute ref="xmi:id"/>
    <xsd:attributeGroup ref="xmi:ObjectAttribs"/>
    <xsd:attribute name="hasMoreCASes" type="xsd:boolean"/>
    <xsd:attribute name="estimatedRemainingCASes" type="xsd:int"/>
  </xsd:complexType>
  <xsd:element name="GetNextCasBatchResponse" type="uima.pe:GetNextCasBatchResponse"/>
</xsd:schema>

