在我的函数update replace中,我试图通过调用xdmp:node replace动态替换MarkLogic中一个XML数据源文件中的XML节点,如下所示:
declare function update-lib:update-rec($doc as xs:string, $path as xs:string, $country as xs:string, $name as xs:string, $population as xs:integer, $latitude as xs:dec
我需要混淆元素的文本内容。比如说,,
计划ID。该计划ID可能在一个文档或多个文档中出现多次
不同的文件。我需要模糊的计划ID是唯一的和一致的
(始终将12345映射到abc72),并且仅限于5个字符。我不希望存在一个单独的文档,该文档将用作映射文件或包含键
由于字符的原因,简单的哈希函数无法工作
长度限制。还有其他想法吗?我想坚持用纯正的语言来做这件事
XQuery.您可以使用(类似于unix tr命令)可靠地
将一个字符转换为另一个字符。这类似于旧的rot13,但更灵活、更强大
您还可以在此
我正在尝试配置基于元素响应的if-else检查是否包含“Y”,但由于某些原因,下面的逻辑不起作用。在这里寻找你的帮助
如果$Response/Detail/REFER中的值为“Y”,则仅显示,否则显示其他标记
<ns0:CargoTypeCd>
let $_Reefer := data($Response/Detail/Reefer)
if ($_Reefer = 'Y') then
<LiveReefer>{data($Response/Detail/R
我使用cts:element-value-search根据参数搜索文档。虽然查询工作正常,但我希望它只搜索直接子元素中的元素
例如,我的文档树如下所示
document1.xml
<Person>
<FirstName>Johnson</FirstName>
<LastName>W</LastName>
<EmailAddress>john@abc.com</EmailAddress>
我正在使用mem:node replace替换内容。但是这花费了太多时间。我遇到了一个超时错误。
有没有别的办法
查找示例Xquery:
xquery version "1.0-ml";
declare namespace html = "http://www.w3.org/1999/xhtml";
import module namespace mem = "http://xqdev.com/in-mem-update"
at '/MarkLogic/appservices/utils/
有一个包含4个文档的集合。我想检索带有最新时间戳的文档
下面的查询有助于按降序排序,但我需要最新修改的文档
for $doc in fn:collection("/test")
order by $doc//timestamp descending
return $doc//id/text(),",",$doc//timestamp/text())
输出
1234, 2018-03-05T11:29:42.722Z
5678,2018-03-05T11:29:42.715Z
8976
我想知道是否有一种方法可以让我在MarkLogic中使用搜索函数的结果,并将其用于我的多个转换查询中
例如
let $uris := cts:uris(("/example/"),(),cts:element-query(xs:QName("cd:documentTitle"),cts:element-value-query(xs:QName("cd:id"),"abc")))
return (fn:count($uris), $uris)[1 to 20]
上面的查询返回20个文档的
我需要返回循环返回的5个最大元素。我正在尝试position()函数,但我不能
<IsolatedData>
<LleidaData>
{
for $dl in doc ("dadesLleida.xml")//row
where $dl/residence = 'No'
order by xs:integer($dl/confirmed_cases) descending
return
one attr.xml
我使用XQuery将id属性转换为元素。在70K个文档中只有两个文档,如two attr.xml。
显然,currency元素已经具有值USD。在转换两个attr.xml时,我在ML QConsole中发现以下错误。我在氧气方面也有类似的错误
我的XQuery模块:
集体成功的底层转换是针对one attr.xml模型的。Java | ML API、Oxygen、XSLT返回相同的结果:
,我希望以下结果能够帮助搜索引擎:
<executionReport xml
使用MarkLogic Xquery,我有一个函数(管理员:将集合添加到出版物),它调用另一个维护函数(管理员:检查集合是否存在),该函数检查元素是否存在,如果不存在,则创建该特定元素
我调用维护函数的方式是使用let。这似乎是一种奇怪的方式,要做到这一点,需要创建一个未使用的变量。我是否应该返回一个序列,调用admin:check collections exists作为序列中的第一项,然后后续处理作为第二项?只是想找一个标准优雅的方式来做这件事。我的职能是:
declare function
标签: Xquery
soaosboracle-service-bus
我试图用这个XQuery表达式生成器在这个内容中放入多个值。我试着使用这样的字符串函数fn:concat($body,$inbound,$inbound),但这似乎不能保留整个消息
有没有什么方法可以将所有这些变量放在一个报表操作中?如果这是可能的,那么在将这些值存储在数据库中之后,我应该如何读取它们(一些键值结构将是完美的)。不确定,但我会尝试以下方法:
<myroot>{$body, $inbound, $outbound}</myroot>
{$body,$in
我有一个cts:word查询,它的文本值是number。
cts:search(fn:doc(),cts:wordquery(“226”))
此查询将获取仅与文档中的226匹配的结果。但是我还需要得到包含0026的文件
例如:
这是abc.xml
<a>
<b>00226</b>
</a>
00226
这是abc1.xml
<a>
<b>226</b>
</a>
226
如果我将查询设置为
输入xml格式:
a.xml
<Global>
<CurrencyType>INR</CurrencyType>
<Amount>100.56</Amount>
</Global>
b.xml
<Global>
<CurrencyType>USD</CurrencyType>
<Amount>234.45</Amount>
</Global&
我需要提取出现次数最多的元素的计数,例如在下面的xml中,我需要将计数返回为2,这是电子邮件元素的计数
<root>
<_1>
<attributes>
<Email>
<ov>true</ov>
<value>
<Email>
<ov>tr
如果我愿意,如何修复以下代码
指定多个集合?(如“pdf”和“systemA”)
如果要获取中的文档,请选择“A”或“B”集合。在MarkLogic中,可以传递多个URI:fn:collection((“A”、“B”))。如果您希望文档同时位于的“A”和“B”集合中,则必须将其作为搜索来执行
cts:search(doc(),
cts:and-query((cts:collection-query("A"),cts:collection-query("B")),"unfiltered")
我需要测试一个节点的3个属性。
问题是,我必须为错误中的每个属性返回错误,我不知道如何以一种简单的方式实现这一点
xquery不是很灵活,所以。。。没有那么多尝试
for $theHoldingListsField in //DisplaySettingCol/theDisplaySetting/theHoldingListsFields
return
if ($theHoldingListsField/@AFL != "MANDATORY") then
当我在XQuery中使用cts:search时,通过访问文档的元素,我可以很容易地进行排序
cts:search(
fn:doc(),
cts:directory-query("/textdocuments/"),
cts:index-order(cts:element-reference(xs:QName("title")), "ascending")
)
问题是我想用于排序的值包含在另一个文档中,而找到的文档中的值只是一个引用。
例如,标题必须翻译,翻译存储在单独的文档中,
我想在输出中添加xml注释,并在注释中添加一些表达式。我如何在xquery中做到这一点?如果我有
<!-- {$var} -->
它是按字面意思插入的,但我希望在输出上有一个注释标记,其值为$var是否需要这项工作
for $x in /* return <x><![CDATA[<!--]]>{$x}<![CDATA[-->]]> </x>
中的$x/*返回]]>
输入
hello评论
输出
<!--hel
这个变量声明出现在我的一个代码中,$sorted有多个字符串类型值,它从映射文件中获取这些值
作为arg1获取错误的类型不是map:map
谁能告诉我代码中有什么错误吗?我建议您先学习XQuery的基础知识。请参阅,例如,了解一些介绍。错误消息告诉您函数调用的第一个参数不是映射。你确定$sorted是一张地图吗?尝试返回xdmp:descripe($sorted),而不是尝试使用map:get()查看返回的内容。共享较大的代码通常有助于理解问题。它也有助于用非技术性的术语描述您实际想要做的事情。
当我运行string join时,会得到如下奇怪的输出:
<clinic>
<Name>Olive Street Pediatrics</Name>
<Address>1500 Olive St, Los Angeles, CA 90015</Address>
<PhoneNumberList>'\u04bc','\u04e4'</PhoneNumberList>
<NumberOfPati
使用XQuery:
列出多个游戏支持的每个游戏的id、名称、发行商和平台
站台平台应包含在一个由逗号分隔的XML标记中
我在思考如何计算表格时遇到了问题。我需要计算的平台如上图所示。Playstation3、XBox是一款游戏的模板。在框的外面,在框的下面,给出了数据的格式。请帮我做一下。如果您的XQuery引擎支持XPath 2.0,您可以使用tokenize函数来计算逗号分隔列表中的项目:
count(tokenize("Playstation3,XBox",","))
这有用吗?如果没有
为什么我会在XQuery查询的末尾看到return()
e、 g
在您的示例中,return()表达式是let表达式的主体
对$updateSues的赋值是遍历一组节点,从调用local:updateSue()返回值,这些返回值的顺序被用作变量值
但是,然后,对变量不做任何处理,函数只向其调用者返回任何内容
我担心优化处理器可能会选择放弃赋值,因为被赋值的变量没有在任何地方使用,但如果您得到预期的更新结果,您使用的处理器可能不会这样做
所以,最后一行所做的就是在调用函数时总是返回一个空序列作为函
MarkLogic有没有办法不必在每个fn:函数前面加上前缀?我在网上看到了很多代码,它们告诉我我不需要它
事情会变得相当冗长,你知道吗fn:not(fn:contains(…),而不是not(contains(…)
想法
谢谢 和您一样,我不喜欢在我所有的fn:函数前面键入fn:
在普通的XQuery主模块中,您不需要fn:前缀,因为这是默认的函数名称空间,用于所有不固定的函数。但是,在库模块中确实需要fn:,因为它们将其默认函数名称空间更改为库模块名称空间的名称空间。这意味着库函数可以相互调
以下是我要重建的元素:
<element>
<1></1>
<2></2>
<3>
<3a>
<3a1>
</3a1>
</3a>
</3>
</element>
我想在结尾之前添加一个元素()。这就是我尝试过的:
return <
我想知道是否有人能为我的生锈的xquery指出正确的方向
我有一个简单的xml文件:
<factoids>
<set>
<head>smith, joe</head>
<factoid> <!-- contains set of elements --> </factoid>
<factoid> <!-- contains set of elements -->
BaseX文档使用“collection”一词的方式使其含义不清楚。集合只是数据库的另一个词,还是一个独特的结构?如果是后者,则使用哪些命令来操作集合?关于集合和数据库
不涉及数据库,而涉及集合-因此有一个名称集合符合规范。然而,规范没有定义集合是什么,这取决于实现。在其他系统中,BaseX将一个集合视为单个数据库
从:
在BaseX中,数据库是一个非常轻量级的概念,可以与集合相比较。
它包含任意数量的资源,由其唯一的数据库路径寻址
将来自多个集合/数据库的文档连接起来既简单又便宜,因此可以根据
我试图编写一个xquery语句,转换以下cdcatalog.xml,以便将“country”元素更改为“cd”元素上的一个属性,并向“cd”元素添加一个“id”属性,该属性是递增整数(1,2,3…)。Flower是否在此应用,或者我必须使用其他功能来添加和执行更改?
cdcatalog.xml如下所示:
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bo
在下一个XML中,如何获取国家位置唯一的标题书列表
<BooksLib>
<Book Title="Murder in NY" Year="1980">
<BookLocations>
<Location City="New York" Country="USA"/>
<Location City="Virginia" Country="USA"/>
</BookLocations&g
我想调用从XForms编写的XQuery函数。我知道如何执行对XQuery文档的请求:
<xf:submission resource="/exist/rest/apps/Main/modules/import.xql"/>
但是如果我想调用XQuery文档中的特定函数呢?看起来这可以通过带有导入模块名称空间的JavaScript来实现,但是在XForms中没有实现这一点的方法吗
我想我可以使用existdb的controller.xql来处理请求。这是最简单的方法吗?你不能!
我仍在为ePub制作构建我的应用程序。目前,我能够为更多作者生成记录,但无法解决一个奇怪的错误
我的代码:
{
for $i in (1 to 20)
let $authRequestGivenName := 'authorGivenName' || $i
let $authRequestSurname := 'authorSurname' || $i
let $authorGivenName := request:get-parameter($authReque
下面是一个XML文件的摘录,其中包含65个讲座:
<?xml version="1.0" encoding="iso-8859-1" ?>
<university>
<lecture>
<class>English</class>
<hours>3</hours>
<pupils>30</pupils>
</
为什么fn:last()函数在繁殖时不工作
这失败了:
xquery version "1.0-ml";
let $items := (1, 2, 3)
return xdmp:spawn-function(function () {
$items[3 to fn:last()]
})
过了一段时间,我取消了这项工作,因为它毫无用处
输出:取消失败,必须手动停止消息指示功能
这很好:
xquery version "1.0-ml";
let $items := (1, 2, 3)[3
我有以下xml格式
<root>
<node1>
<timestamp>2016-05-16T00:57:30.889</timsetamp>
</node1>
<node1>
<timestamp>2016-05-18T00:57:30.889</timsetamp>
</node1>
....
</r
我在尝试比较和计算同一节点的属性时遇到了一个问题,例如,我需要筛选在同一天内进行过多次手术的医生。我的示例xml如下所示:
<ops>
<med_operation pac="p1" doctor="David" date="2017-01-01" />
<med_operation pac="p2" doctor="David" date="2017-01-01" />
<med_operation pac="p3" doctor="Ana
我想知道是否有办法内省XQuery模块并动态访问函数。这将帮助我实现GOF策略模式,因为XQuery不支持同一接口的多个实现
当然,问题是除了检查变量类型之外,XQuery中似乎不支持内省
关于如何在XQuery中实现此模式,您有什么想法吗?(我使用MarkLogic 9)
非常感谢,
K
注:不幸的是,我发现大多数XQuery资源都集中在这个或那个功能的小细节上,但我找不到一个这样的资源,它将XQuery本身作为一种严肃的编程语言,并解决此类软件设计问题,XQuery 3.0+和MarkLog
我有一组XQuery函数,它们表示可以执行以转换数据值的各种操作。每个函数将取一个值,加上转换所需的一些参数。计划是执行一系列嵌套函数调用来计算最终值。其思想是,这些管道将被配置,然后在执行之前持久化,因为相同的函数管道将使用不同的起始值重复调用。因此,其思想是将调用堆栈表示为一系列嵌套的XML元素,即
<mylib:escape>
<value>
<mylib:select>
<config>
<in
直接在eXide(Eval)中运行以下xquery工作正常,将MyFSdirectory中的XML文件添加到MyCollectionPath中:
xquery version "3.1";
let $selected_directory:= 'MyFSdirectory'
let $source-directory := $selected_directory
let $target-collection := 'MyCollectionPath'
return
xmldb:stor
在Xquery 3.1(在eXist db中)中,我通过API调用接收XML内容,并将其转换为如下文本:
<content zapi:type="tei" type="text/xml"><?xml
version="1.0" encoding="UTF-8"?><listBibl
xmlns="http://www.tei-c.org/ns/1.0"></listBibl><
Xquery中的以下赋值在计算$x时有什么区别:
$x:=”
对
$x:=()
在评估是否存在序列的情况下,我试图确定评估$x的最佳方法
例如,()如何影响下面对$x的求值,而不是使用“”,在这里我测试HTTP请求参数的存在性并将它们放入序列中。()是否仍在序列中创建位置
let $x := if (request:get-parameter("keyword",()) != "")
then
for $kw in request:get-
我们有一个大型数据库,我应该只从整个数据库中获取CustomerId,而不会影响性能。最好的方法是什么?如果您希望报告来自大型数据库的所有CustomerId值,那么使用某种类型的备份索引将是最快和最有效的方法。使用索引,使用以下函数从词典中检索不同的值列表:
e、 g.cts:valuescts:element-reference'CustomerId'或cts:valuescts:path-reference'/Customer/CustomerId'
e、 g.cts:元素值SXS:QNa
谢谢你的快速回复。我试了两个答案。它没有像我预期的那样工作。请查找以下输入和预期输出。提前谢谢
输入:
130212192
1234567890
100.12
税收
一次性
100.12
一次性收费
访问
100.12
访问费
100.12
税收
功能
100.12
功能\u收费
100.12
调整
AIRTIME
100.12
播放时间\收费
长途
100.12
长途费
漫游
100.12
漫游费
100.12
调整
130212192
1
标签: Xquery
xquery-sqlxquery-updatexquery-3.0
当我尝试在xml文件上执行Xquery代码时,我在一个字段中得到了多个结果
这是我的xml文件
<Actors>
<Actor name="NTR">
<Movie TITLE="Yamadonga" Director="Rajamouli"></Movie>
<Movie TITLE="AADI" Director="VV vinayak">
</Movie>
</Actor>
我已经在管道中创建了一个代理服务,我想将传入的xml转换为其他结构。像
<body>
<prices>
<price>$100</price>
</prices>
<prices>
<price>E100</price>
</prices>
</body>
$100
E100
应该转化为
<body>
<pri
我正在使用BaseX以以下格式存储包含多个项节点的XML数据:
<root>
<item id="Root" parent_id="0" type="folder">
<content>
<name>Root</name>
</content>
</item>
<item id="One" parent_id="Root" type="file">
&
我是Marklogic数据库的新手。我尝试通过CTS查询检索数据。我在Eclipse中创建了一个html和一个xqy文件。如何将我的文件部署到MarkLogic server中?我强烈建议您使用其中的一些--它们是免费的,可以在线获取。另外,请查看可用和可用的
对于你的具体问题,我建议你从阅读开始
我试图在字典(baseX映射)中的for循环中计算字符串的出现次数。似乎字典的内容在每次迭代后都会被清除。有没有办法在整个循环中保存信息
declare variable $dict as map(*) := map:merge(());
for $x at $cnt in //a order by -$cnt
let $l := (if (map:contains($dict, $x/@line)) then (fn:number(map:get($dict, $x/@line))) el
我有一个遵循此DTD结构的XML文件
<!DOCTYPE report [
<!ELEMENT report (title,section+)>
<!ELEMENT section (title,body?,section*)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT body (para+)>
<!ELEMENT para(#PCDATA)>
<!ATTLIST book version
我得到了一些不同公司的广告数据集
比如说
<jobs>
<job>
<company>A</company>
<value>Testvalue</value>
</job>
<job>
<company>A</company>
<value>Testvalue</value
我正在尝试使用此方法将Optic query的SPARQL输出转换为CSV。我得到的响应是CSV格式的,但是,对于SPARQL输出中存在的尽可能多的行,列标题在每行之后重复。我如何纠正它
xdmp:set-response-output-method("sparql-results-csv"),
op:from-view("some-tde-view")
=> op:result()
请与MarkLogic支持部门合作,调查此可能的错误是否存在。请与MarkLogic支持部门合作,调查此
标签: Xquery
marklogic-10xpath-3.0
我正在尝试使用下面的简单映射运算符(!)
上面将返回1,7,2,4,5作为一个序列,但我需要按升序对值进行排序
是否可以将order by与此映射运算符一起使用?如果可以,请共享一个示例
谢谢 不幸的是,目前在MarkLogic中不可用
正如Martin Honnen所建议的,实现你想要的最简单的方法可能是一个FLWOR
for $i in (1,7,2,4,5)
order by $i
return $i
在MarkLogic中安装并提供了functx库,因此您可以利用:
或者,您可以创
上一页 1 2 3 4 5 6 7 8 9 ...
下一页 最后一页 共 29 页