如何使用 MarkLogic 搜索在 rest API 中使用 transform-result?
How do I use transform-result in rest API using MarkLogic search?
如何使用其余部分转换搜索结果 API;特别是片段部分?
我正在看这个
document 但我不知道该放在哪里,因为有很多方法可以添加这样的东西。
我正在尝试将整个文档放入片段部分。
<transform-results apply="snippet">
<per-match-tokens>30</per-match-tokens>
<max-matches>4</max-matches>
<max-snippet-chars>200</max-snippet-chars>
<preferred-matches/>
</transform-results>
如果有一些例子会很有帮助。
这是一个非常常见的默认片段示例,以及不同片段的一些结果状态:
<options xmlns="http://marklogic.com/appservices/search">
<!-- The default snippeting behavior, average size snippets, if no results state was specified -->
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>2</max-matches>
<max-snippet-chars>200</max-snippet-chars>
<per-match-tokens>20</per-match-tokens>
</transform-results>
<!-- Pass in operator-state or use results: to select one of these states -->
<operator name="results">
<!-- results:compact, returns smallest snippets -->
<state name="compact">
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>1</max-matches>
<max-snippet-chars>100</max-snippet-chars>
<per-match-tokens>10</per-match-tokens>
</transform-results>
</state>
<!-- results:detailed, returns largest snippets -->
<state name="detailed">
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>3</max-matches>
<max-snippet-chars>300</max-snippet-chars>
<per-match-tokens>30</per-match-tokens>
</transform-results>
</state>
<!-- results:raw, returns full documents -->
<state name="raw">
<transform-results apply="raw"/>
</state>
</operator>
</options>
您可以轻松地在搜索字符串中加入运算符状态选择,只需添加类似 results:detailed
的内容即可。您还可以在结构化查询中使用 operator-state
。
HTH!
如何使用其余部分转换搜索结果 API;特别是片段部分?
我正在看这个 document 但我不知道该放在哪里,因为有很多方法可以添加这样的东西。
我正在尝试将整个文档放入片段部分。
<transform-results apply="snippet">
<per-match-tokens>30</per-match-tokens>
<max-matches>4</max-matches>
<max-snippet-chars>200</max-snippet-chars>
<preferred-matches/>
</transform-results>
如果有一些例子会很有帮助。
这是一个非常常见的默认片段示例,以及不同片段的一些结果状态:
<options xmlns="http://marklogic.com/appservices/search">
<!-- The default snippeting behavior, average size snippets, if no results state was specified -->
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>2</max-matches>
<max-snippet-chars>200</max-snippet-chars>
<per-match-tokens>20</per-match-tokens>
</transform-results>
<!-- Pass in operator-state or use results: to select one of these states -->
<operator name="results">
<!-- results:compact, returns smallest snippets -->
<state name="compact">
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>1</max-matches>
<max-snippet-chars>100</max-snippet-chars>
<per-match-tokens>10</per-match-tokens>
</transform-results>
</state>
<!-- results:detailed, returns largest snippets -->
<state name="detailed">
<transform-results apply="snippet">
<preferred-elements>
<element ns="" name="body"/>
</preferred-elements>
<max-matches>3</max-matches>
<max-snippet-chars>300</max-snippet-chars>
<per-match-tokens>30</per-match-tokens>
</transform-results>
</state>
<!-- results:raw, returns full documents -->
<state name="raw">
<transform-results apply="raw"/>
</state>
</operator>
</options>
您可以轻松地在搜索字符串中加入运算符状态选择,只需添加类似 results:detailed
的内容即可。您还可以在结构化查询中使用 operator-state
。
HTH!