假设,我有一堆带有根元素的医学期刊作为medicalJournal.All医学期刊属于'mj'集合,'mj'集合只有医学期刊.其他类型的期刊也有自己的集合(physicsJournal - >'pj')为了检索所有医学期刊,我写了世界上最简单的查询:
cts:search(/medicalJournal,cts:and-query(()))
Run Code Online (Sandbox Code Playgroud)
但是,我的同行说为什么不对'pj'而不是空和查询放置一个集合查询,从而添加一个额外的约束.理由是,这可能会避免获取所有片段id的列表虽然当我第一次运行集合查询时,查询表显示了一些列表缓存未命中.请告诉我应该选择哪个选项?
我已经相当粗略地环顾四周,找不到任何关于如何使用node.js中的marklogic模块的查询结果的例子......
大多数示例都会执行结果的console.log(),但是如果我需要查询结果(例如在JSON数组中并稍后使用这些结果,该怎么办?
似乎我在这里缺少一些node.js ascynch东西......
示例:
var marklogic = require('marklogic');
var my = require('./my-connection.js');
var db = marklogic.createDatabaseClient(my.connInfo);
var qb = marklogic.queryBuilder;
db.documents.query(
qb.where(qb.parsedFrom('oslo'))
).result( function(results) {
console.log(JSON.stringify(results, null, 2));
});
// I would like to use the results here
// console.log(JSON.stringify(results, null, 2))
Run Code Online (Sandbox Code Playgroud)
现在的问题是我想在稍后的脚本中使用结果对象.我试过使用.then(),或者将它传递给变量并返回该变量但没有运气.
问候,
雨果
如何lexicons从不同indexes的Marklogic。
请举例说明。
我试图通过Javascript(查询控制台)将一些三元组插入到表单的JSON文档中
declareUpdate();
xdmp.documentInsert('/aem/5/content/demo-spark/en_GB/automation_article.json',
{
"triple" : {
"subject" : "https://content.ea.com/aem/5/content/demo-spark/en_GB/automation_article2.json",
"predicate" : "https://content.ea.com/iri/author",
"object" : "jasonmoore"
},
"triple" : {
"subject" : "https://content.ea.com/aem/5/content/demo-spark/en_GB/automation_article2.json",
"predicate" : "https://content.ea.com/iri/id",
"object" : "automation_article2"
},
"triple" : {
"subject" : "https://content.ea.com/aem/5/content/demo-spark/en_GB/automation_article2.json",
"predicate" : "https://content.ea.com/iri/dateCreated",
"object" : "2015-08-14 09:38:10 GMT-7:00"
},
"content" : {
. . .
}
});
Run Code Online (Sandbox Code Playgroud)
但是,当我查看新创建的文档时,只有最后一个三元组,其他两个缺失.
我需要做什么才能在同一份文件中获得前两个三元组?
假设我有一堆结构如下定义的XMLS.
<root>
<child1>
<name>Dixit</name>
<age>25</age>
</child1>
<child2>
<name>Singla</name>
<age>45</age>
</child2>
</root>
Run Code Online (Sandbox Code Playgroud)
CTS search query 我已经写完了整个文件
我想按<name>元素排序文档<child2>.
我已经定义了cts:index-order用于<name>元素,但文件都过得去元素进行排序<name>的<child1>.
如何按<name>元素排序文档<child2>?
我正在使用ML8。我在数据库中有一堆json文档。一些文档具有某些属性“ summaryData”,例如:
{
...(other stuff)...
summaryData: {
count: 100,
total: 10000,
summaryDate: (date value)
}
}
Run Code Online (Sandbox Code Playgroud)
但是,并非所有文档都具有此属性。我想构造一个SJS查询来检索那些未定义此属性的文档。如果是SQL,我想等效的内容应该是“ WHERE summaryData IS NULL”
我不确定要在文档中搜索什么。任何建议都会有所帮助。
我在MarkLogic控制台上尝试此代码并收到此错误
意外的令牌语法错误,意外的If_
这是代码
let $name1 := "Bob"
let $name2 := "John"
if(fn:contains($name1, "Bo")) then
return "Bob is good"
else
return "John is good"
Run Code Online (Sandbox Code Playgroud) 我有一个超过一千个原始pdf的集合.如何排除不需要的原始pdf.我有一个代码,但不知道如何排除e001.pdf和e002.pdf.提前致谢.
收集:/ electric-pdf
我尝试在集合中排除两个pdf(e001.pdf,e002.pdf)
xquery version "1.0-ml";
let $pdf-uris := cts:uris(
(),(),
cts:and-query((
cts:collection-query("/electric-pdf"),
cts:not-query(what's cts function should I use exclude e001.pdf, e002.pdf in collection )
))
)
return $pdf-uris
Run Code Online (Sandbox Code Playgroud) 如果我想指定多个集合,如何修复以下代码?(比如'pdf'和'systemA')
for $doc in fn:collection("pdf")
Run Code Online (Sandbox Code Playgroud) marklogic ×10
xquery ×3
javascript ×2
json ×2
marklogic-8 ×2
indexing ×1
lexicon ×1
node.js ×1
semantic-web ×1
sjs ×1
sorting ×1