Interface IndexBuildSpecification

  • All Superinterfaces:
    java.io.Serializable, XMLizable
    All Known Implementing Classes:
    IndexBuildSpecification_impl

    public interface IndexBuildSpecification
    extends XMLizable, java.io.Serializable
    Determines how a CAS get indexed with a UIMA-compliant search engine. This is done by providing rules that describe how different types of Annotations in the CAS should be indexed.

    This object implements the XMLizable interface and can be parsed from an XML representation. The XML representation is as follows:

       <indexBuildSpecification>
         <indexBuildItem>
           <name> CAS_TYPE_NAME | CAS_TYPE_NAMESPACE_WILDCARD </name>
           <indexRule>
             <style name="NAME">
               <attribute name="NAME" value="STRING"/>
               ...
               [<attributeMappings>
                 <mapping>
                   <feature> STRING </feature>
                   <indexName> STRING </indexName>
                 </mapping>
                 ...
               </attributeMappings>]
             </style>
             ... 
           </indexRule>
           [<filter syntax="NAME"> FILTER_EXPRESSION </filter>]
         </indexBuildItem>
         ...
       </indexBuildSpecification>
     

    The ... indicates repeating elements of the same type - for example an indexBuildSpecification may have multiple indexBuildItems. The square brackets indicate optionality, hence filter is an optional element of indexRule.

    • CAS_TYPE_NAME is any valid type name in the CAS.
    • CAS_TYPE_NAMESPACE_WILDCARD is a CAS type namespace followed by .*, for example org.apache.myproject.*
    • NAME is a string that must be taken from the set of names recognized by the particular indexer implementation. Some standard names are defined in the Style and Filter classes.
    • FILTER_EXPRESSION is a string whose meaning is determined by the value of the syntax attribute on the filter element. See Filter for details.
    • STRING can be any string (although in some contexts this must match a valid CAS feature name). See Attribute and Mapping for details.
    • Method Detail

      • getIndexBuildItems

        IndexBuildItem[] getIndexBuildItems()
        Gets the IndexBuildItem objects that comprise this index build specification. Each of these identifies an annotation type and describes how it should be indexed.
        Returns:
        the build items
      • setIndexBuildItems

        void setIndexBuildItems​(IndexBuildItem[] aItems)
        Sets the IndexBuildItem objects that comprise this index build specification. Each of these identifies an annotation type and describes how it should be indexed.
        Parameters:
        aItems - the build items