Interface IndexBuildSpecification

All Superinterfaces:
Serializable, XMLizable
All Known Implementing Classes:
IndexBuildSpecification_impl

public interface IndexBuildSpecification extends XMLizable, 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 Details

    • 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