DtSearchHighlight — Generate DtSrHitwords table for
highlighting DtSearch document
#include &<Dt/Search.h>
intDtSearchHighlight(
char *dbname,
char *cleartext,
DtSrHitword **hitwptr,
long *hitwcount,
int search_type,
char *stems,
int stemcount);
The DtSearchHighlight function generates an array of
offsets and lengths (DtSrHitword) of parsed linguistic terms (stems) in the
passed document cleartext to enable a browser to highlight the words in the
text as appropriate for its user interface.
- dbname
- Specifies which database is to be searched. It is any one of the database
name strings returned from DtSearchInit or DtSearchReinit.
If dbname is NULL, the first database name string is used.
- cleartext
- Pointer to a zero terminated C string containing the document text to be
highlighted. Usually, but not necessarily, this value is returned from
DtSearchRetrieve.
- hitwptr and
hitwcount
- The hitwords array will be stored in hitwptr, the address of a
DtSrHitword pointer. The array is dynamically allocated by this function
and remains valid until the next call to this function. The size of the
hitwords array will be stored in hitwcount.
- search_type
- Specifies the search_type of the DtSearchQuery that
generated the stems array. It must be zero, 'P', 'W', or 'S'. If
zero is passed, the search_type of the last call to
DtSearchQuery is assumed.
- stems and
stemcount
- stems and stemcount are optional; they can be NULL and zero
respectively. However, if either is specified, both must be specified. If
specified, they refer to the stems array that was returned from the
previous call to DtSearchQuery that ultimately resulted in the
cleartext argument.
-
- If these arguments are not passed, the stems array from the most
recent call to DtSearchQuery is assumed.
This function returns DtSrOK, as well as a DtSrHitword
table, when the table generation is completely successful.
Any other return code signifies failure and user messages on the
MessageList explain why.
Any API function can also return DtSrREINIT and the return
codes for fatal engine errors at any time.
DtSrAPI(3),
DtSearchQuery(3),
DtSearchRetrieve(3)