使用MarkLogic通过xdmp:http-get()或xdmp:http-post()从web服务中拉入数据,我希望在尝试处理数据之前能够检查返回的标头。在DQ中,我可以这样做:
let $result := xdmp:http-get($query,$options) (: $query and $options are fine, I promise. :)
return $result
我得到的结果是这样的:
<v:results v:warning="more than one node">
<response>
获取某个位置的文档,如果不存在,使用xdmp:document-insert()创建文档,然后使用fn:doc()检索文档。
我知道我在这里遗漏了一些简单的东西。单事务是否如此?这两个语句都在单独的行中,因此不确定它是否是单个事务情况。
declare function lk:createXmlIfNotPresent(){
let $xml_dir := "app/test"
let $xml_full_path := "app/test/test.xml"
let $dir_uri := cts:uri-m
我正在尝试列出MarkLogic数据库中几个目录中的文档。 我是XQuery的新手,所以我只需要30秒的时间来告诉我哪里出了问题以及如何修复。因为它在MarkLogic中,我不确定这是否会在上面增加额外的层复杂性,这我不能回答。 我的代码如下-我要做的就是在MarkLogic查询控制台中使用XQuery返回MarkLogic 9数据库目录/Engine/Cooling/Radiators中的所有文档: for d$ in xdmp:directory("/Engine/Cooling/Radiators","1")
return xdmp:node-uri(d
我使用下面的查询来返回MarkLogic服务器中每个数据库的大小。查询返回数据,但不确定查询返回的单位(KB/MB/GB等)。我试着手动找出每个集合的大致大小进行累加,但不知何故数字并不匹配。默认情况下,MarkLogic是否对文档应用压缩? xquery version "1.0-ml";
declare namespace forest = "http://marklogic.com/xdmp/status/forest";
for $db-id in xdmp:databases()
let $db-name := xdmp:database-nam
我有一段代码,在其中我想返回特定林中的文档总数。我想确定林文档计数是否为0或更多。
declare function local:forest-doc-count($db-name,
$f-id as xs:unsignedLong) as xs:integer {
let $_ := xdmp:log(xdmp:describe(fn:concat("$db-name -->", $db-name), (),()))
let $query
好的,我正在尝试在MarkLogic中解码一个base64编码的rtf文档。
xquery version "1.0-ml";
declare namespace cdm = "http://example.nl/cdm/1.2";
let $inh := <cdm:inhoud>
Large base64 encoded RTF doc here
</cdm:inhoud>
let $pv := $inh/text()
(:
let $decodedDoc := document {xdmp:docum
有没有办法,我们会得到调度任务的认证来认证调度任务内部的xdmp:http-put函数。
例如,:=调度任务每分钟运行一个xqyfile,该文件包含一个调用rest服务的http:put方法。
let $url :=
fn:concat('http://',xdmp:hostname($host),':',$PORT,'/v1/resources/example')
return
xdmp:http-put($url,
<options xml
对于MarkLogic来说是新手,我在使用MarkLogic REST的/suggest端点时遇到了一些问题。
我试图从测试数据库中的所有文档中生成基于“name”属性的建议。
这些文档如下所示:app-原型(3个文档)\ /gs/cobra.json
{
"name": "cobra",
"kind": "mammal",
"desc": "The cobra is a venomous, hooded snake of the family Elapidae."
}
调用总是返回一个空集,我
我在property_x上创建了property_x,我将scalar-type设置为int,并希望在它上执行jsonPropertyRangeQuery。但是对于技术上有效的值,它会抛出错误:No decimal element range index for property_x。
在执行jsonPropertyRangeQuery之前,我检查数字的类型是否在整数范围内,就像这样:xdmp.type(100000025131)和它返回'integer',所以我认为它是正确的值,因为xdmp.type(10000002513100000))将返回'double'
你好,我正在尝试用下面的代码读取一个模块:
(: Entry point - must be a read-only query. :)
xdmp:invoke(
'/path/mydocument.xqy',
(xs:QName('var1'), 'test',
xs:QName('var2'), "response"))
我是MarkLogic的新手,我使用groovy和api来连接它,但我也看到我可以用这个调用模块,我确实这样做了,但它返回了我。
your query returned an empty se
我使用xdmp:document-filter(doc())从文档(文档、docx、pdf等)中提取元数据。我们之所以使用它,是因为它适用于各种文档格式,并为各种类型的文档生成XHTML格式。但是这个命令的主要缺点是它减慢了查询的速度。如果数据库中有一两个文档,那么查询可以正常工作,但是如果有更多的文档(例如,10或15),则查询速度会减慢。我们希望从数据库中所有文档的元数据中提取和显示信息。
我们正在使用以下查询:-
for $d in fn:doc()
return xdmp:document-filter(doc(fn:base-uri($d)))
是否有任何方法使查询更快地工作,或者有
我是MLDataHubFramework新手,通过遵循marklogic文档,我开始创建一个新的实体流。
创建客户实体并将其纳入暂存数据库。
在试图进行协调的同时,我得到了以下问题。
错误输出:
java.lang.RuntimeException: com.marklogic.client.FailedRequestException: Local message: failed to apply resource at resources/ml:sjsFlow: Internal Server Error. Server Message: TDE-INDEX: xdmp:e
如何将xdmp:sql()值返回为csv (逗号分隔)结果?这是我到目前为止一直在尝试做的事情:
(: The "format" option returns queries delimited with | :)
(: In other words this would return something like this:
| foo| boo|
| 1| 2|
:)
(: We want this:
foo,boo
1,2
:)
let $x := xdmp:sql("SELECT foo, boo FROM TableName&
我在搜索查询中使用了cts.uris。我将它赋给一个变量,如下所示: var x = cts.uris(...); x的输出类型是什么? 我在我的应用程序中使用JSON文档,并希望在大约2个对象上使用xdmp.nodeReplace。在cts.uris中编写搜索查询后,我检查"x“的值是否有效,然后对我的文档执行更新。 if(x.toString().length>0)
//x is cts.uris output. Checking if it gets a value then do the update like this.
{
var newObject = x;
我使用下面的xquery在MarkLogic中将文档从一个数据库复制到另一个数据库。在复制的同时,我的要求是删除那些成功复制的文档。我不能完全删除集合,因为一些文档可能不会被复制,因为它们由于目标数据库中存在的模板文档错误而无法复制。
是否有方法获取由于模板错误而未复制和失败的文档列表,并将其保留在源数据库中并删除其余文档。
这里是我的xquery来复制文档-
xquery version "1.0-ml";
for $doc in cts:search(doc(), cts:collection-query('Collection1'))
let $docur
如何检查用户是否能够更新或插入marklogic数据库中的任何文档?
例如,有4个用户,其中一些用户具有更新权限,一些用户具有读取marklogic数据库中文档的权限
try{
let $uri := abc.xml
let $doc : <a/>
if (condition)
then check whether the current user is able to update or insert the doc in marklogic or not , if it is not then throw fn:error()
else