The easiest way to implement a search within search results from a previous search is to search multiple search interfaces in the same query.

The URL parameters for multiple search interfaces would look like this:

Ntt=term1|term2&Ntk=interface1|interface2&Ntx=matchmode1|matchmode2

This will return a set of query results with term1 in interface1 with matchmode1 AND term2 in interface2 with matchmode2

To search within results by using multile search interfaces, it is necessary to set the search interfaces to be the same and send a query to the MDEX Engine which contains the previous term and the added new term, like this:

Ntt=term1|term2&Ntk=All|All&Ntx=mode+matchall|mode+matchall

The problem with this approach is that the ESearchReport uses the search interface to return report information. Because the keys are the same (All and All), only one report is returned, which causes a problem with feaures such as spell correction.

The other possibility is to append the new search terms to the existing search terms. This solution allows for the proper display of Did You Mean suggestions, spelling correction, and matches (for partial match)

The new search term (or terms) must be added to the existing terms so that the URL parameters look like this:

Ntt=term1+term2&Ntk=All&Ntx=mode+matchall

This solution is harder to manage in the UI code if the ability to modify the searches is required. In order for users to be able to remove terms that were added at a later stage, the UI code has to keep track of which terms were added when.

Endeca에서 결과 내 재검색 하는 방법이다. ^^;

+ Recent posts