Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.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
javascript中带命名空间的Marklogic 8 pathRangeQuery_Marklogic_Marklogic 8_Marklogic 9_Sjs - Fatal编程技术网

javascript中带命名空间的Marklogic 8 pathRangeQuery

javascript中带命名空间的Marklogic 8 pathRangeQuery,marklogic,marklogic-8,marklogic-9,sjs,Marklogic,Marklogic 8,Marklogic 9,Sjs,我需要为具有命名空间的路径构建pathRangeQuery。在MarkLogic 9中,这可以通过使用和构建一个cts.reference。 前ML9: var qname = fn.QName("http://mynamespace.com/example","name"); var elRef = cts.elementReference(qname, ["type=string", "collation=http://marklogic.com/collation/codepoint"])

我需要为具有命名空间的路径构建pathRangeQuery。在MarkLogic 9中,这可以通过使用和构建一个
cts.reference
。 前ML9:

var qname = fn.QName("http://mynamespace.com/example","name");
var elRef = cts.elementReference(qname, ["type=string", "collation=http://marklogic.com/collation/codepoint"]);
var q = cts.rangeQuery(elRef,'>=','myname');
不幸的是,我在MarkLogic 8中找不到等价物


你知道怎么做吗?

正确,
cts:range query
cts.rangeQuery
是在MarkLogic 9中引入的。在旧版本中,您需要使用更具体的范围查询功能,如:

但是,在使用名称空间时,最新的注意事项是使用
cts.rangeQuery
而不是
cts.pathRangeQuery
。这不是MarkLogic 8的选项。使用XQuery,您可以在XQuery代码中声明一个名称空间,这样做会很好,但这在SJS中也不是一个选项

您需要在app server或组级别声明名称空间,以使其在MarkLogic 8中工作


好的,但是如何在具有名称空间的元素上创建pathRangeQuery。$path表达式是一个字符串,因此我无法编写book/myns:name,比如myns是什么?您通常会在服务器上预定义
路径名称空间
,然后使用与索引配置中完全相同的
路径表达式
字符串。我已将我的DB配置为:1-在路径名称空间中,我添加了一个ns:-前缀:myns-命名空间uri:2-在范围路径索引中,我添加了一个索引-类型:string,-路径表达式:myns:book/myns:name-排序规则:3-js语句
var rq=cts.pathRangeQuery(“myns:book/myns:name”、“=”、“xxx”)返回错误[javascript]XDMP-UNBPRFX:var rq=cts.pathRangeQuery(“myns:book/myns:name”,“=”--前缀myns没有名称空间绑定这是关于使用名称空间时的
,但是…
。如果看不到,请尝试重新加载页面。感谢您的回答。那么您的意思是,在ML8中,无法在SJS中定义具有声明名称空间的pathRangeQuery吗?