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 Detail

      • 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:
        Constant Field Values
      • NAMESPACE_SEPARATOR

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

      • getType

        Type getType​(java.lang.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​(java.lang.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

        java.util.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
        java.util.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

        java.util.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

        java.util.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

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

        TypeNameSpace getTypeNameSpace​(java.lang.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.