XPath Java 库(也计算函数)

XPath Java library (evaluate functions also)

我正在使用 Saxon-HE 来解析 XPath 表达式

例如:有xpath表达式:

string(xfi:identifier-scheme(xfi:identifier(/jenv-bw2-i:LegalEntityName)))
eq 'http://www.kvk.nl/kvk-id'

它具有可以在 http://www.xbrl.org/Specification/XF-PWD-2006-12-07.htm#_Toc152670686

上找到的自定义函数

我尝试使用 Saxon-HE 但出现错误:

net.sf.saxon.trans.XPathException: Cannot find a 1-argument function named Q{http://www.xbrl.org/2005/function/instance}identifier()

我该如何解决这个问题?我是否需要自己实现这些功能,或者 Saxon-HE 是否能够对其进行评估,但可能是我在这里做错了什么? 我还尝试为此使用 Jaxen

问候,

文琪

XPath 规范定义了每个实现都必须提供的一组核心功能(从一个 XPath 版本发展到下一个版本的库)。它还允许由实现、用户或第三方提供附加功能(但以实现定义的方式)。

xfi:identifier() 等函数在不同的规范 (XBRL) 中定义为核心 XPath 函数库的扩展。 Saxon 不执行 XBRL 规范 "out of the box" 中定义的函数。

您将需要找到一种产品,该产品可提供与 Saxon 一起使用的这些功能的实现。

当然,您可以自己实现这些功能,在这种情况下,Saxon 文档会告诉您如何实现。但这听起来工作量很大,而且可能有 XBRL 软件包可以为您完成这项工作。寻找 XBRL 软件包,例如 https://www.reportingstandard.com/?lang=en