MarkLogic - 启用词干提取还将搜索美式/英式拼写
MarkLogic - Enabling stemming will also search for American / British spelling
马克逻辑 9.0.8.2
我们有业务要求支持搜索查询中的 American/British 个词,例如
- 纤维或纤维
- 颜色或颜色
如果我们在数据库级别启用词干提取将解决此问题,还是我们需要配置更多才能使其正常工作?
是的,在数据库上启用词干提取是实现您的目标的最简单方法。
下面是一些代码,您可以用来快速试验并验证它是否适合您:
xquery version "1.0-ml";
(: enable stemmed searches :)
import module namespace admin = "http://marklogic.com/xdmp/admin" at "/MarkLogic/admin.xqy";
let $config := admin:get-configuration()
return
(: experiment with various settings: off, basic, advanced, decompounding :)
admin:database-set-stemmed-searches($config, xdmp:database("Documents"), "basic")
! admin:save-configuration(.)
;
(: insert two test documents with different spelling for color :)
("color","colour") ! xdmp:document-insert("/"||.||".xml", <doc>{.}</doc>)
;
(: search and see what is returned :)
cts:search(doc(), cts:word-query("colour"))
马克逻辑 9.0.8.2
我们有业务要求支持搜索查询中的 American/British 个词,例如
- 纤维或纤维
- 颜色或颜色
如果我们在数据库级别启用词干提取将解决此问题,还是我们需要配置更多才能使其正常工作?
是的,在数据库上启用词干提取是实现您的目标的最简单方法。
下面是一些代码,您可以用来快速试验并验证它是否适合您:
xquery version "1.0-ml";
(: enable stemmed searches :)
import module namespace admin = "http://marklogic.com/xdmp/admin" at "/MarkLogic/admin.xqy";
let $config := admin:get-configuration()
return
(: experiment with various settings: off, basic, advanced, decompounding :)
admin:database-set-stemmed-searches($config, xdmp:database("Documents"), "basic")
! admin:save-configuration(.)
;
(: insert two test documents with different spelling for color :)
("color","colour") ! xdmp:document-insert("/"||.||".xml", <doc>{.}</doc>)
;
(: search and see what is returned :)
cts:search(doc(), cts:word-query("colour"))