<?xml version="1.0" encoding="UTF-8"?> | |
<!-- | |
*************************************************************** | |
* Licensed to the Apache Software Foundation (ASF) under one | |
* or more contributor license agreements. See the NOTICE file | |
* distributed with this work for additional information | |
* regarding copyright ownership. The ASF licenses this file | |
* to you under the Apache License, Version 2.0 (the | |
* "License"); you may not use this file except in compliance | |
* with the License. You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, | |
* software distributed under the License is distributed on an | |
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
* KIND, either express or implied. See the License for the | |
* specific language governing permissions and limitations | |
* under the License. | |
*************************************************************** | |
--> | |
<schema xmlns="http://www.w3.org/2001/XMLSchema" | |
targetNamespace="http://uima.apache.org/resourceSpecifier" | |
xmlns:rs="http://uima.apache.org/resourceSpecifier" | |
elementFormDefault="qualified"> | |
<annotation> | |
<documentation xml:lang="en"> | |
Schema for UIMA Resource Specifiers. This includes Analysis Engine Descriptors, | |
Collection Processing Component Descriptors, and Service Specifiers (client descriptors). | |
CPE Descriptors are currently not covered by this schema. | |
</documentation> | |
</annotation> | |
<!-- Top Level Element Definitions --> | |
<element name="resourceSpecifier" abstract="true" /> | |
<element name="taeDescription" substitutionGroup="rs:resourceSpecifier" type="rs:AnalysisEngineDescriptionType" /> | |
<element name="analysisEngineDescription" substitutionGroup="rs:resourceSpecifier" type="rs:AnalysisEngineDescriptionType" /> | |
<element name="resourceMetaData" type="rs:ResourceMetaDataType"/> | |
<complexType name="AnalysisEngineDescriptionType"> | |
<sequence> | |
<element name="frameworkImplementation" type="string" /> | |
<element name="primitive" type="boolean" /> | |
<choice> | |
<element name="annotatorImplementationName" type="rs:EnvVarType" /> | |
<element name="delegateAnalysisEngineSpecifiers"> | |
<complexType> | |
<sequence> | |
<element name="delegateAnalysisEngine" type="rs:DelegateAnalysisEngineType" minOccurs="0" maxOccurs="unbounded"/> | |
</sequence> | |
</complexType> | |
</element> | |
</choice> | |
<element name="flowController" type="rs:FlowControllerDeclarationType" minOccurs="0"/> | |
<element name="analysisEngineMetaData" type="rs:ProcessingResourceMetaDataType" /> | |
<element name="externalResourceDependencies" type="rs:ExternalResourceDependenciesType" minOccurs="0" /> | |
<element name="resourceManagerConfiguration" type="rs:ResourceManagerConfigurationType" minOccurs="0" /> | |
<element name="sofaMappings" type="rs:SofaMappingsType" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
<element name="fileResourceSpecifier" substitutionGroup="rs:resourceSpecifier"> | |
<complexType> | |
<sequence> | |
<element name="fileUrl" type="rs:EnvVarType" /> | |
<element name="localCache" type="rs:EnvVarType" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="fileLanguageResourceSpecifier" substitutionGroup="rs:resourceSpecifier"> | |
<complexType> | |
<sequence> | |
<element name="fileUrlPrefix" type="rs:EnvVarType" /> | |
<element name="fileUrlSuffix" type="rs:EnvVarType" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="configurableDataResourceSpecifier" substitutionGroup="rs:resourceSpecifier"> | |
<complexType> | |
<sequence> | |
<element name="url" type="rs:EnvVarType" /> | |
<element name="resourceMetaData" type="rs:ResourceMetaDataType" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="typeSystemDescription" type="rs:TypeSystemDescriptionType" /> | |
<element name="typePriorities" type="rs:TypePriorityType" /> | |
<element name="fsIndexes" type="rs:FsIndexCollectionType" /> | |
<element name="fsIndexCollection" type="rs:FsIndexCollectionType" /> | |
<element name="resourceManagerConfiguration" type="rs:ResourceManagerConfigurationType" /> | |
<!-- Type Definitions --> | |
<complexType name="ResourceMetaDataType"> | |
<sequence> | |
<element name="name" type="rs:EnvVarType" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="version" type="string" minOccurs="0" /> | |
<element name="vendor" type="string" minOccurs="0" /> | |
<element name="configurationParameters" type="rs:ConfigurationParametersType" minOccurs="0" /> | |
<element name="configurationParameterSettings" type="rs:ConfigurationParameterSettingsType" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
<complexType name="ProcessingResourceMetaDataType"> | |
<complexContent> | |
<extension base="rs:ResourceMetaDataType"> | |
<sequence> | |
<element name="flowConstraints" type="rs:FlowConstraintsType" minOccurs="0" /> | |
<element name="typeSystemDescription" type="rs:TypeSystemDescriptionType" minOccurs="0" /> | |
<element name="typePriorities" type="rs:TypePriorityType" minOccurs="0" /> | |
<choice> | |
<element name="fsIndexes" type="rs:FsIndexCollectionType" minOccurs="0" /> | |
<element name="fsIndexCollection" type="rs:FsIndexCollectionType" minOccurs="0" /> | |
</choice> | |
<element name="capabilities" type="rs:CapabilitiesType" minOccurs="0"/> | |
<element name="operationalProperties" type="rs:OperationalPropertiesType" minOccurs="0"/> | |
</sequence> | |
</extension> | |
</complexContent> | |
</complexType> | |
<complexType name="DelegateAnalysisEngineType"> | |
<choice> | |
<element ref="rs:resourceSpecifier" /> | |
<element name="import" type="rs:ImportType" /> | |
</choice> | |
<attribute name="key" type="Name" /> | |
</complexType> | |
<complexType name="FlowControllerDeclarationType"> | |
<choice> | |
<element ref="rs:resourceSpecifier" /> | |
<element name="import" type="rs:ImportType" /> | |
</choice> | |
<attribute name="key" type="Name" /> | |
</complexType> | |
<complexType name="EnvVarType" mixed="true"> | |
<sequence> | |
<element name="envVarRef" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="FlowConstraintsType"> | |
<sequence> | |
<choice minOccurs="0" maxOccurs="1"> | |
<element name="fixedFlow" minOccurs="0" maxOccurs="1"> | |
<complexType> | |
<sequence> | |
<element name="node" type="Name" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="capabilityLanguageFlow" minOccurs="0" maxOccurs="1"> | |
<complexType> | |
<sequence> | |
<element name="node" type="Name" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
</choice> | |
</sequence> | |
</complexType> | |
<complexType name="ConfigurationParametersType"> | |
<sequence> | |
<element name="configurationParameter" type="rs:ConfigurationParameterType" minOccurs="0" maxOccurs="unbounded" /> | |
<element name="commonParameters" type="rs:CommonParametersType" minOccurs="0" maxOccurs="1" /> | |
<element name="configurationGroup" type="rs:ConfigurationGroupType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
<attribute name="defaultGroup" type="Name" /> | |
<attribute name="searchStrategy" type="Name" /> | |
</complexType> | |
<complexType name="CommonParametersType"> | |
<sequence> | |
<element name="configurationParameter" type="rs:ConfigurationParameterType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="ConfigurationGroupType"> | |
<sequence> | |
<element name="configurationParameter" type="rs:ConfigurationParameterType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
<attribute name="names" type="string" /> | |
</complexType> | |
<complexType name="ConfigurationParameterType"> | |
<sequence> | |
<element name="name" type="Name" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="type" type="rs:CfgParamDataType" /> | |
<element name="multiValued" type="boolean" minOccurs="0" /> | |
<element name="mandatory" type="boolean" minOccurs="0" /> | |
<element name="overrides" minOccurs="0"> | |
<complexType> | |
<choice> | |
<sequence> | |
<element name="parameter" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
<!-- Use of tag "param" is deprectated but permitted for backwards compatibility --> | |
<sequence> | |
<element name="param" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</choice> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<simpleType name="CfgParamDataType"> | |
<restriction base="string"> | |
<enumeration value="String" /> | |
<enumeration value="Integer" /> | |
<enumeration value="Float" /> | |
<enumeration value="Boolean" /> | |
</restriction> | |
</simpleType> | |
<complexType name="ConfigurationParameterSettingsType"> | |
<sequence> | |
<element name="nameValuePair" type="rs:NameValuePairType" minOccurs="0" maxOccurs="unbounded" /> | |
<element name="settingsForGroup" type="rs:SettingsForGroupType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="SettingsForGroupType"> | |
<sequence> | |
<element name="nameValuePair" type="rs:NameValuePairType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
<attribute name="name" type="string" /> | |
</complexType> | |
<complexType name="NameValuePairType"> | |
<sequence> | |
<element name="name" type="Name" /> | |
<element name="value"> | |
<complexType> | |
<group ref="rs:ValueElement" /> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<group name="ValueElement"> | |
<choice> | |
<group ref="rs:BasicValueElement" /> | |
<element name="array"> | |
<complexType> | |
<sequence> | |
<group ref="rs:BasicValueElement" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
</choice> | |
</group> | |
<group name="BasicValueElement"> | |
<choice> | |
<element name="string" type="rs:EnvVarType" /> | |
<element name="integer" type="int" /> | |
<element name="float" type="float" /> | |
<element name="boolean" type="boolean" /> | |
</choice> | |
</group> | |
<complexType name="TypeSystemDescriptionType"> | |
<all> | |
<element name="name" type="string" minOccurs="0" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="version" type="string" minOccurs="0" /> | |
<element name="vendor" type="string" minOccurs="0" /> | |
<element name="imports" type="rs:ImportSequenceType" minOccurs="0" /> | |
<element name="types" minOccurs="0"> | |
<complexType> | |
<sequence> | |
<element name="typeDescription" type="rs:TypeDescriptionType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
</all> | |
</complexType> | |
<complexType name="ImportSequenceType"> | |
<sequence> | |
<element name="import" type="rs:ImportType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="ImportType"> | |
<attribute name="location" type="string" /> | |
<attribute name="name" type="Name" /> | |
</complexType> | |
<complexType name="TypeDescriptionType"> | |
<sequence> | |
<element name="name" type="Name" /> | |
<element name="description" type="string" minOccurs="0"/> | |
<element name="supertypeName" type="Name" /> | |
<choice> | |
<element name="allowedValues" minOccurs="0"> | |
<complexType> | |
<sequence> | |
<element name="value" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="string" type="string" /> | |
<element name="description" type="string" minOccurs="0"/> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="features" minOccurs="0"> | |
<complexType> | |
<sequence> | |
<element name="featureDescription" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="name" type="Name" /> | |
<element name="description" type="string" minOccurs="0"/> | |
<element name="rangeTypeName" type="Name" /> | |
<element name="elementType" type="string" minOccurs="0" /> | |
<element name="multipleReferencesAllowed" type="boolean" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
</element> | |
</choice> | |
</sequence> | |
</complexType> | |
<complexType name="TypePriorityType"> | |
<sequence> | |
<element name="name" type="string" minOccurs="0" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="version" type="string" minOccurs="0" /> | |
<element name="vendor" type="string" minOccurs="0" /> | |
<element name="imports" type="rs:ImportSequenceType" minOccurs="0" /> | |
<choice> | |
<element name="priorityLists"> | |
<complexType> | |
<sequence> | |
<element name="priorityList" type="rs:PriorityListType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="priorityList" type="rs:PriorityListType" minOccurs="0" maxOccurs="unbounded" /> | |
</choice> | |
</sequence> | |
</complexType> | |
<complexType name="PriorityListType"> | |
<sequence> | |
<element name="type" type="Name" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="FsIndexCollectionType"> | |
<sequence> | |
<element name="name" type="string" minOccurs="0" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="version" type="string" minOccurs="0" /> | |
<element name="vendor" type="string" minOccurs="0" /> | |
<element name="imports" type="rs:ImportSequenceType" minOccurs="0" /> | |
<choice> | |
<element name="fsIndexes"> | |
<complexType> | |
<sequence> | |
<element name="fsIndexDescription" type="rs:FsIndexType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="fsIndexDescription" type="rs:FsIndexType" minOccurs="0" maxOccurs="unbounded" /> | |
</choice> | |
</sequence> | |
</complexType> | |
<complexType name="FsIndexType"> | |
<sequence> | |
<element name="label" type="Name" /> | |
<element name="typeName" type="Name" /> | |
<element name="kind" minOccurs="0" maxOccurs="1"> | |
<simpleType> | |
<restriction base="string"> | |
<enumeration value="sorted" /> | |
<enumeration value="bag" /> | |
<enumeration value="set" /> | |
</restriction> | |
</simpleType> | |
</element> | |
<element name="keys" minOccurs="0" maxOccurs="1"> | |
<complexType> | |
<sequence> | |
<element name="fsIndexKey" type="rs:FSIndexKeyType" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<complexType name="FSIndexKeyType"> | |
<choice> | |
<element name="typePriority" /> | |
<sequence> | |
<element name="featureName" type="Name" /> | |
<element name="comparator" minOccurs="0"> | |
<simpleType> | |
<restriction base="string"> | |
<enumeration value="standard" /> | |
<enumeration value="reverse" /> | |
</restriction> | |
</simpleType> | |
</element> | |
</sequence> | |
</choice> | |
</complexType> | |
<complexType name="CapabilitiesType"> | |
<sequence> | |
<element name="capability" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="description" type="string" minOccurs="0"/> | |
<element name="inputs" type="rs:TypeOrFeatureNameListType" minOccurs="0" /> | |
<element name="outputs" type="rs:TypeOrFeatureNameListType" minOccurs="0" /> | |
<element name="inputSofas" type="rs:SofaListType" minOccurs="0" /> | |
<element name="outputSofas" type="rs:SofaListType" minOccurs="0" /> | |
<element name="languagesSupported" type="rs:LanguageListType" minOccurs="0" /> | |
<element name="mimeTypesSupported" type="rs:MimeTypeListType" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<complexType name="TypeOrFeatureNameListType"> | |
<sequence> | |
<group ref="rs:TypeOrFeature" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<group name="TypeOrFeature"> | |
<choice> | |
<element name="type" type="rs:TypeNameType" /> | |
<element name="feature" type="Name" /> | |
</choice> | |
</group> | |
<complexType name="TypeNameType"> | |
<simpleContent> | |
<extension base="Name"> | |
<attribute name="allAnnotatorFeatures" type="boolean" /> | |
</extension> | |
</simpleContent> | |
</complexType> | |
<complexType name="LanguageListType"> | |
<sequence> | |
<element name="language" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="MimeTypeListType"> | |
<sequence> | |
<element name="mimeType" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="SofaListType"> | |
<sequence> | |
<element name="sofaName" type="string" minOccurs="0" maxOccurs="unbounded" /> | |
</sequence> | |
</complexType> | |
<complexType name="OperationalPropertiesType"> | |
<sequence> | |
<element name="modifiesCas" minOccurs="0" type="boolean"/> | |
<element name="multipleDeploymentAllowed" minOccurs="0" type="boolean"/> | |
<element name="outputsNewCASes" minOccurs="0" type="boolean"/> | |
</sequence> | |
</complexType> | |
<complexType name="ExternalResourceDependenciesType"> | |
<sequence> | |
<element name="externalResourceDependency" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="key" type="string" /> | |
<element name="description" type="string" /> | |
<element name="interfaceName" type="string" minOccurs="0" /> | |
<element name="optional" type="boolean" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<complexType name="ResourceManagerConfigurationType"> | |
<all> | |
<element name="name" type="string" minOccurs="0" /> | |
<element name="description" type="string" minOccurs="0" /> | |
<element name="vendor" type="string" minOccurs="0" /> | |
<element name="version" type="string" minOccurs="0" /> | |
<element name="imports" type="rs:ImportSequenceType" minOccurs="0" /> | |
<element name="import" type="rs:ImportType" minOccurs="0"/> <!-- Old Style --> | |
<element name="externalResources" type="rs:ExternalResourcesType" minOccurs="0" /> | |
<element name="externalResourceBindings" type="rs:ExternalResourceBindingsType" minOccurs="0" /> | |
</all> | |
</complexType> | |
<complexType name="ExternalResourcesType"> | |
<sequence> | |
<element name="externalResource" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="name" type="string" /> | |
<element name="description" type="string" /> | |
<element ref="rs:resourceSpecifier" /> | |
<element name="implementationName" type="string" minOccurs="0" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<complexType name="ExternalResourceBindingsType"> | |
<sequence> | |
<element name="externalResourceBinding" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="key" type="string" /> | |
<element name="resourceName" type="string" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<complexType name="SofaMappingsType"> | |
<sequence> | |
<element name="sofaMapping" minOccurs="0" maxOccurs="unbounded"> | |
<complexType> | |
<sequence> | |
<element name="componentKey" type="string" /> | |
<element name="componentSofaName" type="string" minOccurs="0" /> | |
<element name="aggregateSofaName" type="string" /> | |
</sequence> | |
</complexType> | |
</element> | |
</sequence> | |
</complexType> | |
<!-- Top Level Element Definitions for Collection Processing Component Specifiers --> | |
<element name="collectionReaderDescription" type="rs:CollectionProcessingComponentDescriptionType"/> | |
<element name="casInitializerDescription" type="rs:CollectionProcessingComponentDescriptionType"/> | |
<element name="casConsumerDescription" type="rs:CollectionProcessingComponentDescriptionType"/> | |
<complexType name="CollectionProcessingComponentDescriptionType"> | |
<sequence> | |
<element name="frameworkImplementation" type="string" /> | |
<element name="implementationName" type="rs:EnvVarType"/> | |
<element name="processingResourceMetaData" type="rs:ProcessingResourceMetaDataType"/> | |
<element name="externalResourceDependencies" type="rs:ExternalResourceDependenciesType" minOccurs="0"/> | |
<element name="resourceManagerConfiguration" type="rs:ResourceManagerConfigurationType" minOccurs="0"/> | |
</sequence> | |
</complexType> | |
<!-- Top Level Element Definitions for FlowController Specifier | |
(currently same as a Collection Processing Component Specifier --> | |
<element name="flowControllerDescription" type="rs:CollectionProcessingComponentDescriptionType"/> | |
<!-- Top Level Element Definitions for Service Specifiers --> | |
<element name="uriSpecifier" substitutionGroup="rs:resourceSpecifier"> | |
<complexType> | |
<sequence> | |
<element name="resourceType" minOccurs="0"> | |
<simpleType> | |
<restriction base="string"> | |
<enumeration value="AnalysisEngine"/> | |
<enumeration value="CasConsumer"/> | |
</restriction> | |
</simpleType> | |
</element> | |
<element name="uri" type="string"/> | |
<element name="protocol"> | |
<simpleType> | |
<restriction base="string"> | |
<enumeration value="SOAP"/> | |
<enumeration value="SOAPwithAttachments"/> | |
<enumeration value="Vinci"/> | |
</restriction> | |
</simpleType> | |
</element> | |
<element name="timeout" type="integer" minOccurs="0"/> | |
</sequence> | |
</complexType> | |
</element> | |
</schema> |