<?xml version="1.0" encoding="UTF-8"?>

<analysisEngineDescription xmlns="http://uima.apache.org/resourceSpecifier">
    <frameworkImplementation>org.apache.uima.java</frameworkImplementation>
    <primitive>true</primitive>
    <annotatorImplementationName>org.apache.uima.ruta.engine.RutaEngine</annotatorImplementationName>
    <analysisEngineMetaData>
        <name>BasicEngine</name>
        <description/>
        <version>1.0</version>
        <vendor/>
        <configurationParameters searchStrategy="language_fallback">
            <configurationParameter>
                <name>seeders</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>debug</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>additionalScripts</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>profile</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>debugWithMatches</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>statistics</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>additionalEngines</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>additionalExtensions</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>debugOnlyFor</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>scriptEncoding</name>
                <type>String</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>additionalEngineLoaders</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>resourcePaths</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>defaultFilteredTypes</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>mainScript</name>
                <type>String</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>scriptPaths</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>descriptorPaths</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>removeBasics</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>dynamicAnchoring</name>
                <description>Activates dynamic anchoring (possible speed up).</description>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>greedyRuleElement</name>
                <description>Activates greedy anchoring for rule elements.</description>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>greedyRule</name>
                <description>Activates greedy anchoring for complete rules.</description>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>lowMemoryProfile</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>createdBy</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>simpleGreedyForComposed</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>additionalUimafitEngines</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>strictImports</name>
                <type>Boolean</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>varNames</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>varValues</name>
                <type>String</type>
                <multiValued>true</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
            <configurationParameter>
                <name>rules</name>
                <type>String</type>
                <multiValued>false</multiValued>
                <mandatory>false</mandatory>
            </configurationParameter>
        </configurationParameters>
        <configurationParameterSettings>
            <nameValuePair>
                <name>debug</name>
                <value>
                    <boolean>false</boolean>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>profile</name>
                <value>
                    <boolean>false</boolean>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>debugWithMatches</name>
                <value>
                    <boolean>true</boolean>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>defaultFilteredTypes</name>
                <value>
                    <array>
                        <string>org.apache.uima.ruta.type.SPACE</string>
                        <string>org.apache.uima.ruta.type.BREAK</string>
                        <string>org.apache.uima.ruta.type.MARKUP</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>removeBasics</name>
                <value>
                    <boolean>false</boolean>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>seeders</name>
                <value>
                    <array>
                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>createdBy</name>
                <value>
                    <boolean>false</boolean>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>mainScript</name>
                <value>
                    <string>Main</string>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>scriptPaths</name>
                <value>
                    <array>
                        <string>D:/work/ws-tutorial/GermanNovels/script</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>descriptorPaths</name>
                <value>
                    <array>
                        <string>D:/work/ws-tutorial/GermanNovels/target/classes</string>
                        <string>D:/work/ws-tutorial/GermanNovels/descriptor</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>resourcePaths</name>
                <value>
                    <array>
                        <string>D:\work\ws-tutorial\GermanNovels\resources</string>
                        <string>D:\work\ws-tutorial\GermanNovels\target\resources</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>additionalScripts</name>
                <value>
                    <array>
                        <string>uima.ruta.example.Name</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>additionalEngines</name>
                <value>
                    <array/>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>additionalUimafitEngines</name>
                <value>
                    <array>
                        <string>de.tudarmstadt.ukp.dkpro.core.stanfordnlp.StanfordSegmenter</string>
                        <string>de.tudarmstadt.ukp.dkpro.core.treetagger.TreeTaggerPosLemmaTT4J</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>additionalExtensions</name>
                <value>
                    <array>
                        <string>org.apache.uima.ruta.example.extensions.ExampleConditionExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleActionExtension</string>
                        <string>org.apache.uima.ruta.string.bool.BooleanOperationsExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleBooleanFunctionExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleNumberFunctionExtension</string>
                        <string>org.apache.uima.ruta.string.StringOperationsExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleStringFunctionExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleTypeFunctionExtension</string>
                        <string>org.apache.uima.ruta.block.OnlyFirstBlockExtension</string>
                        <string>org.apache.uima.ruta.block.OnlyOnceBlockExtension</string>
                        <string>org.apache.uima.ruta.block.fst.FSTBlockExtension</string>
                        <string>org.apache.uima.ruta.example.extensions.ExampleBlockExtension</string>
                    </array>
                </value>
            </nameValuePair>
            <nameValuePair>
                <name>additionalEngineLoaders</name>
                <value>
                    <array/>
                </value>
            </nameValuePair>
        </configurationParameterSettings>
        <typeSystemDescription>
            <imports>
                <import location="MainTypeSystem.xml"/>
            </imports>
        </typeSystemDescription>
        <typePriorities>
            <priorityList>
                <type>org.apache.uima.ruta.type.RutaFrame</type>
                <type>uima.tcas.Annotation</type>
                <type>org.apache.uima.ruta.type.RutaBasic</type>
            </priorityList>
        </typePriorities>
        <fsIndexCollection/>
        <capabilities>
            <capability>
                <inputs/>
                <outputs/>
                <languagesSupported/>
            </capability>
        </capabilities>
        <operationalProperties>
            <modifiesCas>true</modifiesCas>
            <multipleDeploymentAllowed>true</multipleDeploymentAllowed>
            <outputsNewCASes>true</outputsNewCASes>
        </operationalProperties>
    </analysisEngineMetaData>
    <resourceManagerConfiguration/>
</analysisEngineDescription>
