Interface TypeSystem

All Known Subinterfaces:
TypeSystemMgr
All Known Implementing Classes:
TypeSystemImpl

public interface TypeSystem
The interface to the type system. Used to access information about existing types and features using their String identifiers. This is a pure access interface. Types and features are defined using Component Descriptors, written in XML.

Get the type system from a CAS object with getTypeSystem().

There are a few methods to list the existing types in a type system. Information about which feature is appropriate for which type is available through the Type and Feature classes.

  • Field Details

    • FEATURE_SEPARATOR

      static final char FEATURE_SEPARATOR
      This is the character that separates a type name from a feature name. Ex.: uima.cas.Annotation:begin.
      See Also:
    • NAMESPACE_SEPARATOR

      static final char NAMESPACE_SEPARATOR
      This is the character that separates name spaces. Ex.: uima.cas.Annotation
      See Also:
  • Method Details

    • getType

      Type getType(String typeName)
      Get a type object for a given type name. See documentation on type names.
      Parameters:
      typeName - The name of the type.
      Returns:
      A type object, or null if no such type exists.
    • getArrayType

      Type getArrayType(Type componentType)
      Obtain an array type with component type componentType.
      Parameters:
      componentType - The type of the elements of the resulting array type. This can be any type, even another array type.
      Returns:
      The array type with the corresponding component type.
    • getFeatureByFullName

      Feature getFeatureByFullName(String featureName)
      Get a feature object for a given name. See documentation on feature names.
      Parameters:
      featureName - The fully qualified name of the feature.
      Returns:
      An feature object, or null if no such feature exists.
    • getTypeIterator

      Iterator<Type> getTypeIterator()
      Get an iterator over all types, in no particular order.
      Returns:
      The iterator.
    • getTopType

      Type getTopType()
      Get the top type, i.e., the root of the type system.
      Returns:
      The top type.
    • getDirectlySubsumedTypes

      @Deprecated Vector<Type> getDirectlySubsumedTypes(Type type)
      Deprecated.
      Get a vector of the types directly subsumed by a given type.
      Parameters:
      type - The input type.
      Returns:
      A vector of the directly subsumed types.
    • getDirectSubtypes

      List<Type> getDirectSubtypes(Type type)
      Get a List of the types directly subsumed by a given type.
      Parameters:
      type - The input type.
      Returns:
      A List of the directly subsumed types.
    • getProperlySubsumedTypes

      List<Type> getProperlySubsumedTypes(Type type)
      Return the list of all types subsumed by the input type. Note: the list does not include the type itself.
      Parameters:
      type - Input type.
      Returns:
      The list of types subsumed by type.
    • getParent

      Type getParent(Type type)
      Get the parent type for input type.
      Parameters:
      type - The type we want to know the parent of.
      Returns:
      The parent type, or null for the top type.
    • subsumes

      boolean subsumes(Type superType, Type subType)
      Does one type inherit from the other?
      Parameters:
      superType - Supertype.
      subType - Subtype.
      Returns:
      true iff sub inherits from super.
    • getFeatures

      Iterator<Feature> getFeatures()
      Get a list of features, in no particular order.
      Returns:
      An iterator over the features.
    • getTypeNameSpace

      TypeNameSpace getTypeNameSpace(String name)
      Create a type name space object for the name parameter.
      Parameters:
      name - The name of the name space.
      Returns:
      A TypeNameSpace object corresponding to name, or null, if name is not a legal type name space identifier.
    • getLowLevelTypeSystem

      LowLevelTypeSystem getLowLevelTypeSystem()
      Return the low-level view of this type system.
      Returns:
      The LowLevelTypeSystem version of this type system.