<?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.
 -->

<typeSystemDescription xmlns="http://uima.apache.org/resourceSpecifier">
  <types>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.EntityAnnotation</name>
      <description/>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>links</name>
          <description/>
          <rangeTypeName>uima.cas.FSList</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>mentionType</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.RelationAnnotation</name>
      <description/>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>links</name>
          <description/>
          <rangeTypeName>uima.cas.FSList</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>predicate</name>
          <description/>
          <rangeTypeName>uima.tcas.Annotation</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>relationArgs</name>
          <description/>
          <rangeTypeName>org.apache.uima.testTypeSystem.RelationArgs</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.RelationArgs</name>
      <description/>
      <supertypeName>uima.cas.TOP</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.BinaryRelationArgs</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.RelationArgs</supertypeName>
      <features>
        <featureDescription>
          <name>domainValue</name>
          <description/>
          <rangeTypeName>uima.tcas.Annotation</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>rangeValue</name>
          <description/>
          <rangeTypeName>uima.tcas.Annotation</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.GenericRelationArgs</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.RelationArgs</supertypeName>
      <features>
        <featureDescription>
          <name>args</name>
          <description/>
          <rangeTypeName>uima.cas.FSList</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Referent</name>
      <description/>
      <supertypeName>uima.cas.TOP</supertypeName>
      <features>
        <featureDescription>
          <name>links</name>
          <description/>
          <rangeTypeName>uima.cas.FSList</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>classes</name>
          <description/>
          <rangeTypeName>uima.cas.StringArray</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>canonicalForm</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>variantForms</name>
          <description/>
          <rangeTypeName>uima.cas.StringList</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>id</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Entity</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Referent</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Relation</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Referent</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Link</name>
      <description/>
      <supertypeName>uima.cas.TOP</supertypeName>
      <features>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>from</name>
          <description/>
          <rangeTypeName>uima.cas.TOP</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>to</name>
          <description/>
          <rangeTypeName>uima.cas.TOP</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.HasOccurrence</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Link</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Argument</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Link</supertypeName>
      <features>
        <featureDescription>
          <name>role</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>    
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.TopEntity</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.EntityAnnotation</supertypeName>
      <features>
        <featureDescription>
          <name>confidence</name>
          <description/>
          <rangeTypeName>uima.cas.Float</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Person</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.GeographicEntity</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Location</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GeographicEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.RegionInternational</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Location</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Facility</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Location</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.GPE</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GeographicEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Continent</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GPE</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Nation</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GPE</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.NationalAdministrativeDivision</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GPE</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.UsState</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.NationalAdministrativeDivision</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.City</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GPE</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Organization</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.EducationalOrganization</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Organization</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.College</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.EducationalOrganization</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Weapon</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Timex</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
      <features>
        <featureDescription>
          <name>tid</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>value</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>functionInDocument</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>temporalFunction</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>anchorTimeId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Duration</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Timex</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.HistoricalDuration</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Duration</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Time</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Timex</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Date</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Timex</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.TimeOfYear</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Date</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Year</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Date</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Clothing</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Number</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.WholeNumber</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Number</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.SmallWholeNumber</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.WholeNumber</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.LargeWholeNumber</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.WholeNumber</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Measurement</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Money</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Measurement</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.BodyPart</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.PhoneNumber</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Tool</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.MiscellaneousEntity</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>    
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.URL</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopEntity</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.TopRelation</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.RelationAnnotation</supertypeName>
      <features>
        <featureDescription>
          <name>confidence</name>
          <description/>
          <rangeTypeName>uima.cas.Float</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>    
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Physical</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopRelation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.PartOf</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Physical</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.SubPlace</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.PartOf</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.OrganizationalRelationship</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopRelation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Staff</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.OrganizationalRelationship</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.ManagerOf</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.Staff</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Subsidiary</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.OrganizationalRelationship</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.AgentArtifact</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopRelation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Owner</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.AgentArtifact</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.GpeAffiliation</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopRelation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.BasedIn</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.GpeAffiliation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.HoldsDuring</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.TopRelation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.LexicalAnnotation</name>
      <description/>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>confidence</name>
          <description/>
          <rangeTypeName>uima.cas.Float</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Thing</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.LexicalAnnotation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.CharacteristicAnnotation</name>
      <description/>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>componentId</name>
          <description/>
          <rangeTypeName>uima.cas.String</rangeTypeName>
        </featureDescription>
        <featureDescription>
          <name>confidence</name>
          <description/>
          <rangeTypeName>uima.cas.Float</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Occupation</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.CharacteristicAnnotation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.NondefiningRole</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.CharacteristicAnnotation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.EventCharacteristic</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.CharacteristicAnnotation</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Method</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.EventCharacteristic</supertypeName>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.Symptom</name>
      <description/>
      <supertypeName>org.apache.uima.testTypeSystem.CharacteristicAnnotation</supertypeName>
    </typeDescription>    
    <typeDescription>
      <name>sofa.test.CrossAnnotation</name>
      <description></description>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>otherAnnotation</name>
          <description></description>
          <rangeTypeName>uima.tcas.Annotation</rangeTypeName>
        </featureDescription>
      </features>
    </typeDescription>
    <typeDescription>
      <name>org.apache.uima.testTypeSystem.AnnotationArrayTest</name>
      <description></description>
      <supertypeName>uima.tcas.Annotation</supertypeName>
      <features>
        <featureDescription>
          <name>arrayOfAnnotations</name>
          <description></description>
          <rangeTypeName>uima.cas.FSArray</rangeTypeName>
          <elementType>uima.tcas.Annotation</elementType>
        </featureDescription>
      </features>
    </typeDescription>   
  </types>
</typeSystemDescription>
