Marklogic:“突出显示”似乎不适用于Node.js和QueryBuilder

我尝试使用JSON集合中突出显示的search词来获取文本摘录。 我的search语法是:

qb.word(qb.field('doc_text'),vartxt)

在Node.js应用程序中,将'doc_text'声明为字段(field type: root, include root: false, includes: doc_text)

search工作得很好,在这个领域做得很好……但是在txt[0].results[kl].matches[0]['match-text'] ,我find了JSON的前3个属性,而不是从'doc_text'find的单词的摘录。 我有另一个应用程序,其中的亮点正常工作,但它是基于XML。

我在字段声明中忘记了什么,或者JSON和XML数据之间的操作是不同的,还是不是通过Node.js和QueryBuilder在JSON上运行的高亮系统?

亲切的问候

在XML和JSON中,字段的工作方式不尽相同。 我认为你遇到了这个限制:

http://docs.marklogic.com/guide/app-dev/json#id_24090

XML中字段的值可以是所有文本节点的连接,但JSON中不适用。

我想我明白了!

这个查询提供了一个正确的代码片段,其中包含了摘录和高亮显示的单词:mkcq.and(mkcq.collection('document'),mkcq.word(mkcq.field('doc_text'),'connaitre'))

另一方面,这个查询给出了JSON的前三个字段:mkcq.and(mkcq.collection('document'),mkcq.word(mkcq.field('doc_text'),'connaitre'),mkcq.value (mkcq.element('','doc_user'),'mbp'))

我不知道这是否正常,但它应该能够通过简单的查询和在返回的logging上的select来纠正,晚上由特定snippeter来纠正。

亲切的问候