Interface Feature

  • All Superinterfaces:
    java.lang.Comparable<Feature>
    All Known Implementing Classes:
    FeatureImpl

    public interface Feature
    extends java.lang.Comparable<Feature>
    The interface that describes features in the type system.

    Feature short or base names are type system identifiers. The (fully) qualified name of a feature is the name of the type it is defined on, followed by a colon, followed by the its short name. For example, the qualified name of the Annotation begin feature is uima.tcas.Annotation:begin.

    • Method Detail

      • getDomain

        Type getDomain()
        Get the domain type for this feature. The domain is the type which defines this feature.
        Returns:
        The domain type. This can not be null.
      • getRange

        Type getRange()
        Get the range type for this feature. The range defines the type of the feature value.
        Returns:
        The range type. This can not be null.
      • getName

        java.lang.String getName()
        Get the qualified name for this feature.
        Returns:
        The name.
      • getShortName

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

        boolean isMultipleReferencesAllowed()
        Checks if there can be multiple references to values of this feature. This is only meaningful for array-valued or list-values features.

        If this is false it indicates that this feature has exclusive ownership of the array or list, so changes to the array or list are localized. If this is true it indicates that the array or list may be shared, so changes to it may affect other objects in the CAS.

        Returns:
        true iff the value type of this feature is an array or list and has been declared to allow multiple references.