Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [%SYS] >  [%iFind] >  [Index] >  [Semantic]
Private  Storage   

index class %iFind.Index.Semantic extends %iFind.Index.Basic

This index class is a more advanced version of %iFind.Index.Basic, leveraging the semantic output of the iKnow engine processing the text being indexed. In addition to the search options provided by the Basic index, users can now also query for entities and their attributes:

Search stringWhat will be retrieved
logical structureAll records containing both the words "logical" and "structure" (implicit AND)
"logical structure"All records containing the word "structure" right behind "logical" (positional search)
{logical structure}Records containing the actual entity "logical structure"
<{logical structure}Expanded entity search for entities ending with "logical structure" (but something before too)
{logical structure}>Expanded entity search for entities starting with "logical structure" (but something after too)
<logical structureImplicit AND of entity search on entities ending with "logical" and simple word search on "structure"
<structureRecords containing entities ending with the word "structure"
<structure*Records containing entities ending with any word beginning with "structure"
<structure AND NOT "logical structure"Records containing entities ending with the word "structure", except if they also contain the exact string "logical structure" (positional search)

Note: In the above table, the first two examples are also supported using a Basic index, but are repeated here for comparison with the new entity search options.

If the IFINDMAPPINGS index is set to 1, the following additional SQL projections will be generated:

For a detailed description of the other configuration and query options, see the class reference for %iFind.Index.Basic.


Parameters Properties Methods Queries Indices ForeignKeys Triggers


DeleteIndex Embedded Find Highlight
InsertIndex Normalize PurgeIndex Rank
SegmentFinalize SegmentInitialize SegmentInsert SortBeginIndex
SortEndIndex StripCharacters StrippedEntityId StrippedWordId



• parameter IFINDATTRIBUTES = 0;

Whether or not to store attribute information, such as negation. If set to 1, the following additional projections will be generated in the "[package_name]_[class_name]" package if your IFINDMAPPINGS is set to 1, exposing attribute occurrence details:

The attribute values currently supported out of the box are:

  • 1: explicit negation within the entity
  • -1: negation implied by another entity within the path

Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.