[MarkLogic Dev General] question regarding search
David Amusin
David.Amusin at marklogic.com
Tue Oct 6 12:00:24 PDT 2009
Hi Srini,
You can include additional information from the result document (such
as an article title) by using a custom snippet function. You will
need to include a transform-results node in your options XML with the
attributes @apply, @ns, and @at. For details, see section 2.2.6.2 of
the Search Developer's Guide here: http://developer.marklogic.com/pubs/4.1/books/search-dev-guide.pdf
Here is an example of a custom snippet that will include the node from
the result document with the local-name "name". A node with QName
"extra" will be included in the search:snippet node of every search
result when search:search() is called.
custom.xqy:
xquery version "1.0-ml";
module namespace custom = "http://test.com/search";
import module namespace search = "http://marklogic.com/appservices/search
"
at "/MarkLogic/appservices/search/search.xqy";
declare function custom:my-snippet(
$result as node(),
$ctsquery as schema-element(cts:query),
$options as element(search:transform-results)?
) as element(search:snippet)
{
<search:snippet>
{
(
search:snippet($result, $ctsquery, $options)/*,
<extra>{$result//*:name}</extra>
)
}
</search:snippet>
};
The call to search:search():
xquery version "1.0-ml";
import module namespace search = "http://marklogic.com/appservices/search
" at "/MarkLogic/appservices/search/search.xqy";
search:search(
"Gregory",
<options xmlns="http://marklogic.com/appservices/search">
<transform-results apply="my-snippet" ns="http://test.com/search"
at="/custom.xqy" />
</options>
)
Please let me know if the explanation or example are unclear at all.
Cheers,
David
David Amusin
Software Engineer
Mark Logic Corporation
999 Skyway Road
Suite 200
San Carlos, CA 94070
+1 650 207 2308 Cell
+1 650 655 2310 Fax
david.amusin at marklogic.com
www.marklogic.com
On Oct 5, 2009, at 9:06 AM, Srinivas Mandadapu wrote:
> Hi,
> I am trying out developing a sample search which gives out a search
> results with the highlighting tags. The simple search using
> search:search outputs search results along with the highlighting tags.
> If I need additional information in the search results, like an
> title of
> an article and any other additional information to appear in search
> results, how should i go about it?
>
> Thanks,
> Srini
> _______________________________________________
> General mailing list
> General at developer.marklogic.com
> http://xqzone.com/mailman/listinfo/general
More information about the General
mailing list