问题标签 [marklogic-9]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xslt-2.0 - 无效强制:() as xs:string in xdmp:xslt-eval
我正在利用 MarkLogic 在 XSL 转换中调用 XQuery 函数的能力。
假设我有一个 XQuery 库,其中的函数签名如下所示。这仅用于说明目的。
从 XQuery 中,我可以使用空序列作为参数调用此函数,没有问题,即
该函数只会返回一个空序列,但我没有收到任何错误。如果我尝试在我的 XSL 转换中使用所有这些功能,如:
如果/node/value不存在,并且传入了一个空序列,则会出现强制错误。
除了在选择之前检查 XSL 中的值之外,是否有人建议解决强制问题?这些是自动生成的 XSL 模板,这意味着大量的编码检查。
谢谢,
-tj
marklogic - 从marklogic中的二进制文档中提取元数据
我正在尝试从二进制文件中提取元数据并将它们设置为我执行以下代码的属性。
但是元数据以字符串格式存储,所以我无法比较日期、时间和数字。当我在最后一行删除fn:string()
元数据时,元数据被存储为名称标签中名为“内容”的属性。我正在使用节点 api 与 marklogic 进行通信,因此搜索属性的属性和比较变得越来越困难。
是否可以对代码进行任何修改,以便元数据可以存储在与原始数据类型相同的数据类型中?
templates - MarkLogic 中的 XQuery 模板不显示任何值,仅显示属性 (TDE)
我创建了一个 .xml 文件和一个模板来提取一些数据,但只显示属性。
这是我的 .xml 测试文件:
这里是相应的模板:
我更改了上下文以使用正确的 (?) 路径和命名空间(因为这部分应该嵌套到另一个模板中):
如果我使用tde:node-data-extract(fn:doc ( TESTFILE PATH ), $userNoteTDE)检查模板, 我会得到以下输出:
这表明,属性显示正确,但元素的值(文本、用户名、独特标题、personNameInverted)不知何故不起作用。我的猜测是,这些值需要更精细的路径或表达式,但我找不到任何信息。例如,如果我将文本值更改为<val>testns:text</val>
模板中的文本值,则会收到错误消息:XDMP-UNBPRFX: (err:XPST0081) Prefix testns has no namespace binding
所以不知何故,元素不能使用声明的命名空间,但属性可以。
我也跳过了<groups>
模板中的部分,因为他们需要自己的上下文,这没关系,不是吗?
提前感谢您提供任何有用的见解!
marklogic - marklogic中二进制文档的多个权限
我们可以为文档的不同部分添加不同的权限吗?
例如,将 PDF 格式的书插入到数据库中,第一章应该可供所有用户或普通用户免费访问,而整本书只能由高级用户或付费用户访问。
如何在 MarkLogic 中实现这一点,而无需维护原始版本的免费版本。
marklogic - marklogic的node js api中的qb.properties()方法
我无法在 marklogic 的节点 js api 中使用 qb.properties() 方法。代码如下
我收到错误,好像没有像 qb.properties() 这样的函数,但在节点 API 开发人员指南中,qb.properties() 函数被描述为 properties-fragment-query。
marklogic - 在 MarkLogic 中搜索文档属性的节点代码
上面的代码应该只适用于文档的属性,但它不是那样工作的。我得到了不相关的结果。请更正我的代码....
marklogic - MarkLogic:当 load_date 不是范围索引时,根据 load_date 过滤文档
我无法根据 load_date 过滤文档。我想计算在指定日期之前/之后加载的文档。我在数据库中有大约 2200 万个文档。我无法使用 cts:element-range-query,因为开发人员尚未在“加载日期”元素上创建范围索引。这阻止了我从测试的角度验证加载的内容。
请帮我选择。
问候, 哈里
marklogic - 在 marklogic 中搜索二进制文件
除了搜索PPT、PDF等二进制文件的内容之外,还有什么方法可以搜索吗?
使用 xdmp:document-filter() 函数将其转换为 X HTML 格式并对其进行搜索?
java - 使用 java 客户端 api 批量修补 Marklogic 数据库中的文档
我有几个 json 文档,如下所示:-
{状态:TO_BE_REPORTED,日期:2017/11/11 ....}
我想通过仅将状态字段值从 TO_BE_REPORTED 替换为 REPORTED 来更新或修补文档,并且我想进行批量更新,因为我有成千上万的文档。我正在使用 DocumentPatchBuilder,但它不支持批量更新。
另一方面,我可以看到 Marklogic 几乎没有使用 docManager.newWriteSet 进行批量写入然后向其中添加文档但它不支持文档修补的概念?
还有其他我可以尝试的东西吗?