Interface Type

  • All Known Implementing Classes:
    StringTypeImpl, TypeImpl

    public interface Type
    The interface describing types in the type system.

    Type names are Java strings that look like Java class names. For example, the built-in annotation type is called uima.tcas.Annotation. The whole string is called the (fully) qualified type name. The part after the last period is called the short or base name. The rest of the name is the name space of the type. This part can be empty, in which case the qualified and the base name are identical.

    Type system identifiers in general have the following syntax: they are non-empty strings whose first character is a letter (Unicode letter), followed by an arbitrary sequence of letters, digits and underscores. No other characters are legal parts of identifiers. A type name is then a non-empty sequence of identifiers separated by periods. See also Feature names.

    • Method Detail

      • getName

        java.lang.String getName()
        Get the fully qualified name of the type.
        Returns:
        The name of the type.
      • getShortName

        java.lang.String getShortName()
        Get the unqualified, short name of this type.
        Returns:
        The short name of this type.
      • getAppropriateFeatures

        @Deprecated
        java.util.Vector<Feature> getAppropriateFeatures()
        Deprecated.
        Use getFeatures() instead.
        Get a vector of the features for which this type is a subtype of the features' domain (i.e., inherited features are also returned). If you need to know which type introduces a feature, use Feature.getDomain. Features will be listed in no particular order.
        Returns:
        The Vector of features.
      • getFeatures

        java.util.List<Feature> getFeatures()
        Get a vector of the features for which this type is a subtype of the features' domain (i.e., inherited features are also returned). If you need to know which type introduces a feature, use Feature.getDomain. Features will be listed in no particular order.
        Returns:
        The List of features defined for this type.
      • getNumberOfFeatures

        int getNumberOfFeatures()
        Get the number of features for which this type defines the domain. This includes inherited features.
        Returns:
        The number of features.
      • getFeatureByBaseName

        Feature getFeatureByBaseName​(java.lang.String featureName)
        Retrieve a feature for this type. Inherited features can also be retrieved this way.
        Parameters:
        featureName - The short, unqualified name of the feature.
        Returns:
        The feature, if it exists; null, else.
      • isFeatureFinal

        boolean isFeatureFinal()
        Check if type is feature final, i.e., if no more new features may be defined for it.
        Returns:
        If type is feature final.
      • isInheritanceFinal

        boolean isInheritanceFinal()
        Check if type is inheritance final, i.e., if new types can be derived from it.
        Returns:
        If type is inheritance final.
      • isPrimitive

        boolean isPrimitive()
        Check if the type is one of the primitive types.
        Returns:
        true iff type is a primitive type.
      • isArray

        boolean isArray()
        Check if the type is an array type.
        Returns:
        true iff the type is an array type.
      • getComponentType

        Type getComponentType()
        For array types, returns the component type of the array type. For all other types, it will return null.
        Returns:
        The component type of an array type.