如何通过使用 MarkLogic 指定特定节点进行搜索并使用片段获取结果?
How can I search by specifying a specific node with MarkLogic and get results with a snippet?
我想对在 MarkLogic 数据库中注册的文档执行以下操作。
- 搜索前,将搜索词与其相关文档相关联
- 仅搜索与搜索词相关的文档并使用代码段获取结果
如果您想获得一个片段作为搜索结果,我想使用搜索 API 搜索:搜索或搜索:解析功能。
但是,与cts:search函数不同的是,这些函数不能指定一个节点作为参数,所以看起来你不能只搜索一个特定的节点(文档)。
cts:搜索:
cts:search(
$expression as node()*,
$query as cts:query?,
[$options as (cts:order|xs:string)*],
[$quality-weight as xs:double?],
[$forest-ids as xs:unsignedLong*]
) as node()*
搜索:解决:
search:resolve(
$query as element(),
[$options as element(search:options)?],
[$start as xs:unsignedLong?],
[$page-length as xs:unsignedLong?]
) as element(search:response)
如果您仅搜索特定文档(节点)并知道如何获取搜索结果片段,请告诉我。
我认为您正在寻找可以放入 <search:options>
的 <searchable-expression>
。另请参阅:
HTH!
我想对在 MarkLogic 数据库中注册的文档执行以下操作。
- 搜索前,将搜索词与其相关文档相关联
- 仅搜索与搜索词相关的文档并使用代码段获取结果
如果您想获得一个片段作为搜索结果,我想使用搜索 API 搜索:搜索或搜索:解析功能。 但是,与cts:search函数不同的是,这些函数不能指定一个节点作为参数,所以看起来你不能只搜索一个特定的节点(文档)。
cts:搜索:
cts:search(
$expression as node()*,
$query as cts:query?,
[$options as (cts:order|xs:string)*],
[$quality-weight as xs:double?],
[$forest-ids as xs:unsignedLong*]
) as node()*
搜索:解决:
search:resolve(
$query as element(),
[$options as element(search:options)?],
[$start as xs:unsignedLong?],
[$page-length as xs:unsignedLong?]
) as element(search:response)
如果您仅搜索特定文档(节点)并知道如何获取搜索结果片段,请告诉我。
我认为您正在寻找可以放入 <search:options>
的 <searchable-expression>
。另请参阅:
HTH!