Package com.netrics.likeit

## Class NetricsSearchResult

- java.lang.Object
- - com.netrics.likeit.NetricsBaseRecord
  - - com.netrics.likeit.NetricsRecord
    - - com.netrics.likeit.NetricsMappedRecord
      - - com.netrics.likeit.NetricsSearchResult

- All Implemented Interfaces:
    `java.io.Serializable`

      public class NetricsSearchResult
      extends NetricsMappedRecord

  This class extends NetricsMappedRecord adding information relevant to a search result (match score, etc.). For a joined search the result is a joined record, a record containing all the fields from all of the tables in the join. See the ibi™ Patterns - Search Concepts Guide for more information on joined records.
  See Also:
    `NetricsServerInterface.search(com.netrics.likeit.NetricsSearchCfg, com.netrics.likeit.NetricsSearchOpts)`, `NetricsSearchResponse`, Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.netrics.likeit.NetricsRecord

      `NetricsRecord.ChildType`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int[]` | `getCharMatchStrengths​(int fieldNo)` | Returns the match strength information for a searchable-text field in the record.
    `int[]` | `getCharMatchStrengths​(java.lang.String fieldName)` | Returns the match strength information for a searchable-text field in the record.
    `double[]` | `getDblCharMatchStrengths​(int fieldNo)` | Returns the precomputed visualization strengths for a searchable-text field.
    `double[]` | `getDblCharMatchStrengths​(java.lang.String fieldName)` | Returns the precomputed visualization strengths for a searchable-text field.
    `boolean` | `getDirtyState()` | The dirty state for this record.
    `java.lang.String` | `getHtml​(int fieldNo)` | Gets an HTML visualized field from the record.
    `java.lang.String` | `getHtml​(java.lang.String fieldName)` | Gets an HTML visualized field from the record.
    `double` | `getITMatchScore()` | A score from 0 to 1.0 indicating the information theoretic score for this record.
    `double[]` | `getITMatchScoreQlt()` | The per-querylet IT match scores.
    `int` | `getMatchRank()` | The ordinal ranking of this record.
    `double` | `getMatchScore()` | The score that was used to sort the record.
    `double[]` | `getMatchScoreQlt()` | Querylet match scores.
    `java.lang.String` | `getMatchType()` | The type of search which retrieved this record.
    `double` | `getMaxMatchScore()` | A score from 0 to 1.0 indicating the maximum of the normal and reverse match strengths for this record.
    `double` | `getMinMatchScore()` | A score from 0 to 1.0 indicating the minimum of the normal and reverse match strengths for this record.
    `double` | `getNamedQltConfidence​(java.lang.String qlet_name)` | Get the confidence measure of the named querylet.
    `double[]` | `getNamedQltConfidenceArray()` | Get the list of named querylet confidence measures, null if none.
    `java.lang.String[]` | `getNamedQlts()` | Get the list of named querylets, null if none.
    `double` | `getNamedQltScore​(java.lang.String qlet_name)` | Get the match score of the named querylet.
    `double[]` | `getNamedQltScoresArray()` | Get the list of named querylet scores, null if none.
    `double` | `getNormMatchScore()` | A score from 0 to 1.0 indicating the normal match strength for this record.
    `double[]` | `getNormMatchScoreQlt()` | The per-querylet normal match scores.
    `double` | `getRevMatchScore()` | A score from 0 to 1.0 indicating the reverse match strength for this record.
    `double[]` | `getRevMatchScoreQlt()` | The per-querylet reverse match scores.
    `double` | `getRlConfidence()` | Get the Learn Model (RLINK) confidence measure.
    `double` | `getRlScore()` | Deprecated. use `getMatchScore()` to get the Learn model score for RLink queries.
    `double[]` | `getRlSignificances()` | Get the Learn Model (RLINK) significance values.
    `java.lang.String` | `getSrcDbInfo()` | Deprecated. use `getSrcTblInfo()`
    `java.lang.String` | `getSrcDbName()` | Deprecated. use `getSrcTblName()`
    `java.lang.String` | `getSrcTblInfo()` | The table info field for the table from which the record came.
    `java.lang.String` | `getSrcTblName()` | The name of the table from which the record came.
    `double` | `getSymMatchScore()` | A score from 0 to 1.0 indicating the symmetric match strength for this record.
    `double[]` | `getSymMatchScoreQlt()` | The per-querylet symmetric match scores.

    - ### Methods inherited from class com.netrics.likeit.NetricsMappedRecord

      `getAttribute, getAttrNames, getField, getField, getFieldNames, getFieldTypes`

    - ### Methods inherited from class com.netrics.likeit.NetricsBaseRecord

      `compare, getAttribute, getAttrNames, getAttrValues, getFields, getKey, getParentKey, numBytes, toString`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### getCharMatchStrengths

          public int[] getCharMatchStrengths​(java.lang.String fieldName)
                                      throws NetricsException

      Returns the match strength information for a searchable-text field in the record.

      The core search algorithm creates match strengths for each character in a matching record. These strengths are represented as an integer where 0 indicates no match and higher numbers represent a better match.

      Parameters:
        `fieldName` - The name of the field for which to return its match strength information.
      Returns:
        An integer array with one value in the array for each character in the given field, or null if called for a field that is not searchable text.
      Throws:
        `NetricsException` - if the field name is invalid.

    - #### getCharMatchStrengths

          public int[] getCharMatchStrengths​(int fieldNo)

      Returns the match strength information for a searchable-text field in the record.

      Parameters:
        `fieldNo` - The number of the field for which to return its match strength information.
      Returns:
        An integer array with one value in the array for each character in the given field, or null if called for a field that is not searchable text.

    - #### getDblCharMatchStrengths

          public double[] getDblCharMatchStrengths​(java.lang.String fieldName)
                                            throws NetricsException

      Returns the precomputed visualization strengths for a searchable-text field.

      These are per character match quality score values where 0.0 represents no match and 1.0 represents a perfect match. These scores account for more factors than the integer match scores and are the preferred character strength scores to use.

      Parameters:
        `fieldName` - The name of the field for which to return its match strength information.
      Returns:
        An double array with one value in the array for each character in the given field, or null if called for a field that is not searchable text. Values are between 0.0 and 1.0.
      Throws:
        `NetricsException` - if the field name is not in the results.

    - #### getDblCharMatchStrengths

          public double[] getDblCharMatchStrengths​(int fieldNo)

      Returns the precomputed visualization strengths for a searchable-text field.

      These are per character match quality score values where 0.0 represents no match and 1.0 represents a perfect match. These scores account for more factors than the integer match scores and are the preferred character strength scores to use.

      Parameters:
        `fieldNo` - The number of the field for which to return its match strength information.
      Returns:
        An double array with one value in the array for each character in the given field, or null if called for a field that is not searchable text. Values are between 0.0 and 1.0.

    - #### getHtml

          public java.lang.String getHtml​(java.lang.String fieldName)
                                   throws NetricsException

      Gets an HTML visualized field from the record.

      Gets the content of a given field with matching characters visualized using HTML. Parameters for the visualization can be set in the NetricsSearchOpts object.

      Parameters:
        `fieldName` - The name of the field for which to get the HTML visualized string.
      Returns:
        visualization results as an HTML string.
      Throws:
        `NetricsException` - if the field name is not in the results.
      See Also:
        `NetricsSearchOpts`

    - #### getHtml

          public java.lang.String getHtml​(int fieldNo)

      Gets an HTML visualized field from the record.

      Gets the content of a given field with matching characters visualized using HTML. Parameters for the visualization can be set in the NetricsSearchOpts object.

      Parameters:
        `fieldNo` - The index of the field for which to get the HTML visualized string.
      Returns:
        visualization results as an HTML string.
      See Also:
        `NetricsSearchOpts`

    - #### getMatchScore

          public double getMatchScore()

      The score that was used to sort the record. This is the same as one of the explicit score types (default is NORMAL). See the scoreType method in NetricsQuery for a description of the possible score types.
      Returns:
        the score that was used to sort the record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getNormMatchScore

          public double getNormMatchScore()

      A score from 0 to 1.0 indicating the normal match strength for this record.
      Returns:
        the normal match strength for this record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getRevMatchScore

          public double getRevMatchScore()

      A score from 0 to 1.0 indicating the reverse match strength for this record.
      Returns:
        the reverse match strength for this record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getSymMatchScore

          public double getSymMatchScore()

      A score from 0 to 1.0 indicating the symmetric match strength for this record.
      Returns:
        the symmetric match strength for this record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getMinMatchScore

          public double getMinMatchScore()

      A score from 0 to 1.0 indicating the minimum of the normal and reverse match strengths for this record.
      Returns:
        the minimum of the normal and reverse match strengths for this record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getMaxMatchScore

          public double getMaxMatchScore()

      A score from 0 to 1.0 indicating the maximum of the normal and reverse match strengths for this record.
      Returns:
        the maximum of the normal and reverse match strengths for this record.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getRlScore

          @Deprecated
          public double getRlScore()

      Deprecated.
      use `getMatchScore()` to get the Learn model score for RLink queries.
      Returns the Learn model score for this record (from 0 to 1.0).
      Returns:
        the Learn model score for this record.

    - #### getITMatchScore

          public double getITMatchScore()

      A score from 0 to 1.0 indicating the information theoretic score for this record. Contact your ibi representative if you're interested in learning how IT scores are computed.
      Returns:
        the information theoretic score for this record.

    - #### getMatchScoreQlt

          public double[] getMatchScoreQlt()

      Querylet match scores.

      If the top level query is a score combiner these are the match scores of the individual querylets of the score combiner. E.g. if you have a simple query for each field in the record combined with an AND these would be the scores of the simple queries, and thus the scores for the individual fields.

      Returns:
        An array of match scores for the querylets, or null if the top level query is not a score combiner.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getNormMatchScoreQlt

          public double[] getNormMatchScoreQlt()

      The per-querylet normal match scores.
      Returns:
        the per-querylet normal match scores, or null if result does not contain such scores.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getRevMatchScoreQlt

          public double[] getRevMatchScoreQlt()

      The per-querylet reverse match scores.
      Returns:
        the per-querylet reverse match scores, or null if result does not contain such scores.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getSymMatchScoreQlt

          public double[] getSymMatchScoreQlt()

      The per-querylet symmetric match scores.
      Returns:
        the per-querylet symmetric match scores, or null if result does not contain such scores.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getITMatchScoreQlt

          public double[] getITMatchScoreQlt()

      The per-querylet IT match scores.
      Returns:
        the per-querylet IT match scores, or null if result does not contain such scores.
      See Also:
        `NetricsQuery.scoreType(int)`

    - #### getRlSignificances

          public double[] getRlSignificances()

      Get the Learn Model (RLINK) significance values.

      This returns the significance array for RLINK queries. If the top level query was not an RLINK query null is returned. If this result does not represent what the Learn Model considers a match, null is returned.

      There is one significance value for each querylet input to the RLINK query. Note this is not per record field, it is per input querylet. Each entry is a value between 0.0 and 1.0. The value defines the relative importance of each querylet in determining this was a match. Querylets with high significance scores were considered relevant in making the decision, querylets with low scores were not relevant. The scores are proportional values and not based on an absolute scale.

      Returns:
        The significance array, or null if this result is not from an RLINK query.

    - #### getRlConfidence

          public double getRlConfidence()

      Get the Learn Model (RLINK) confidence measure.

      Only Rlink queries produce a confidence value other than 1.0. However confidence values are passed up, so score combiners may return a confidence value from a lower level Rlink query.

      The calculation of a confidence measure by an Rlink query can be turned off. When confidence calculation is turned off the special value: -999.0 is produced.

      The confidence measure is a value between 0.0 and 1.0. It gives an estimate of how confident the model is in the prediction it made. This is based primarily on how well trained the model is for the this particular match case. A value of 0.0 indicates no confidence at all in the prediction, i.e. the model was not trained in this case or the training was very contradictory, so the model is only estimating the score. A value of 1.0 means complete confidence. The dividing line between good confidence values and bad ones depends on the application and the confidence measure used.

      Returns:
        The confidence value, or -999.0 if no confidence was available.

    - #### getNamedQlts

          public java.lang.String[] getNamedQlts()

      Get the list of named querylets, null if none.
      Returns:
        the list of named querylets.

    - #### getNamedQltScoresArray

          public double[] getNamedQltScoresArray()

      Get the list of named querylet scores, null if none.
      Returns:
        the list of named querylet scores.

    - #### getNamedQltScore

          public double getNamedQltScore​(java.lang.String qlet_name)
                                  throws NetricsException

      Get the match score of the named querylet.
      Parameters:
        `qlet_name` - the name of the querylet.
      Returns:
        the match score of the named querylet.
      Throws:
        `NetricsException` - if qlet_name is null or there is no querylet with the given name.

    - #### getNamedQltConfidenceArray

          public double[] getNamedQltConfidenceArray()

      Get the list of named querylet confidence measures, null if none.
      Returns:
        the list of named querylet confidence measures.

    - #### getNamedQltConfidence

          public double getNamedQltConfidence​(java.lang.String qlet_name)
                                       throws NetricsException

      Get the confidence measure of the named querylet.
      Parameters:
        `qlet_name` - the name of the querylet.
      Returns:
        the confidence measure of the named querylet.
      Throws:
        `NetricsException` - if qlet_name is null or there is no querylet with the given name.

    - #### getSrcTblName

          public java.lang.String getSrcTblName()

      The name of the table from which the record came. This is useful for multi-table searches.
      Returns:
        name of the table from which the record came.

    - #### getSrcDbName

          @Deprecated
          public java.lang.String getSrcDbName()

      Deprecated.
      use `getSrcTblName()`
      Returns:
        name of the table from which the record came.

    - #### getSrcTblInfo

          public java.lang.String getSrcTblInfo()

      The table info field for the table from which the record came. Will be null if tblinfo was not set at loadtime.
      Returns:
        the table info field for the table from which the record came.

    - #### getSrcDbInfo

          @Deprecated
          public java.lang.String getSrcDbInfo()

      Deprecated.
      use `getSrcTblInfo()`
      Returns:
        table info field for the table from which the record came.

    - #### getMatchType

          public java.lang.String getMatchType()

      The type of search which retrieved this record.
      Returns:
        "date" if custom date search was used, "typographic" otherwise.

    - #### getMatchRank

          public int getMatchRank()

      The ordinal ranking of this record.
      Returns:
        An integer ranking which will be between the requested start match and the start match plus the number requested.

    - #### getDirtyState

          public boolean getDirtyState()

      The dirty state for this record. This returns true if this record is in a dirty state. A dirty record is one that has been modified by a transaction that is still open, i.e. not yet committed or aborted. As the transaction is incomplete the dirty record may represent an intermediate state or it may get removed or rolled back if the transaction is aborted. The user may wish to ignore dirty records.
      Returns:
        the dirty state for this record.