Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
整个数据库中的MarkLogic单词搜索(元素属性)。寻找cts的扩展替代方案:word查询?_Marklogic_Marklogic 9_Marklogic 10 - Fatal编程技术网

整个数据库中的MarkLogic单词搜索(元素属性)。寻找cts的扩展替代方案:word查询?

整个数据库中的MarkLogic单词搜索(元素属性)。寻找cts的扩展替代方案:word查询?,marklogic,marklogic-9,marklogic-10,Marklogic,Marklogic 9,Marklogic 10,我想在整个MarkLogic数据库中搜索包含特定单词的文档(跨元素和属性)cts:word查询仅对元素有效。如何在MarkLogic中实现这一点 示例: 文件1数据更正查询 文件2 输出-如果搜索词为“更正”,则应返回上述两个文档/URI 包含该单词的一组可能元素属性不是固定的,因为这是一个数据更正练习。有没有可能在不知道属性名称的情况下扩展类似cts:word查询的元素之外的搜索?属性不包括在通用索引中,因此您不能只使用标准的cts:word查询 您可以为要定位的属性创建一个XPath,并启用

我想在整个MarkLogic数据库中搜索包含特定单词的文档(跨元素和属性)<代码>cts:word查询仅对元素有效。如何在MarkLogic中实现这一点

示例:

文件1<代码>数据更正查询

文件2<代码>

输出-如果搜索词为“更正”,则应返回上述两个文档/URI


包含该单词的一组可能元素属性不是固定的,因为这是一个数据更正练习。有没有可能在不知道属性名称的情况下扩展类似cts:word查询的元素之外的搜索?

属性不包括在通用索引中,因此您不能只使用标准的
cts:word查询

您可以为要定位的属性创建一个XPath,并启用单词搜索选项。根据数据库的大小,使用超级通用XPath(如
/*/@*
)可能不是一个好主意,但这是可能的

假设您创建了一个名为
attr
的字段,那么您可以使用如下方法进行搜索:

cts:search(doc(), 
  cts:or-query((
    cts:word-query("correction"), 
    cts:field-word-query("attr", "correction")
  ))
)

属性不包括在通用索引中,因此不能只使用标准的
cts:word查询

您可以为要定位的属性创建一个XPath,并启用单词搜索选项。根据数据库的大小,使用超级通用XPath(如
/*/@*
)可能不是一个好主意,但这是可能的

假设您创建了一个名为
attr
的字段,那么您可以使用如下方法进行搜索:

cts:search(doc(), 
  cts:or-query((
    cts:word-query("correction"), 
    cts:field-word-query("attr", "correction")
  ))
)

谢谢使用超泛型XPath是一个绝妙的技巧(我想不出来),但不幸的是,在生产环境中无法承受。奇怪的是,MarkLogic甚至在文本文档单词上创建通用索引,但不在属性值上创建。我很想在将来看到这一切。因此,到目前为止,我们将在数据收集方面清除数据异常。这将是一个缓慢的迭代过程。谢谢!使用超泛型XPath是一个绝妙的技巧(我想不出来),但不幸的是,在生产环境中无法承受。奇怪的是,MarkLogic甚至在文本文档单词上创建通用索引,但不在属性值上创建。我很想在将来看到这一切。因此,到目前为止,我们将在数据收集方面清除数据异常。这将是一个缓慢的迭代过程。