问题标签 [xpointer]
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.
xml - Xpointer:是否可以选择一个空的节点集?
问题
我有一个XInclude
包含由指定xpointer
属性的表达式产生的节点集。
是否可以使用 选择xpointer
一个空节点集,以便不包含任何内容?
问题
原因是我的xincluded & xpointed节点可能存在也可能不存在;所以我得到一个:
XInclude 错误:XPointer 评估失败
在指向节点不存在的情况下。
例子
表达式类似于:
我想更改 XPointer 以便在找不到节点的情况下XInclude 不包含任何内容(不引发错误)。
就像是:
有没有办法做到这一点?
xml - 使用 Xinclude 在 Log4J2 配置中仅包含子元素
我想为 log4j2 编写一个标准配置文件,并为特殊情况(测试环境、模块等)扩展它。这将允许我在主配置文件中进行更改,而无需在替代配置文件中重复它。
到目前为止,我已经尝试过 xinclude,它非常适合分离 xml 配置的主要元素,但我无法在包含之后向这些元素添加任何内容。我曾尝试使用 xPointer,但仅支持元素方案,我不确定是否可以将元素的所有子元素包含在元素方案中。
例子
附加程序文件:
这可行,但我想在包含后添加更多附加程序
由于 log4J2 只允许定义一个“Appenders”元素,我需要一种方法来执行仅返回子元素的包含。
我努力了
和使用 xpointer 的其他组合,但得到 xpointer 方案不受支持的错误。
有没有办法通过元素方案获得此功能?到目前为止,我只能使用 element(/1/n) 包含特定元素,其中 n 是元素的位置。
是否有另一种方法可以在 log4j2 支持的 xml 中获得此功能(我相信使用 Apache Xerces 解析器)?
更新:
经过大量研究,我无法找到 xerces/log4j2 的本机解决方案。我发现的两个可用替代方法是使用支持 XPointer 方案的第三方预处理器,或者扩展/重写 log4j2 XMLConfiguration 以支持多个配置文件。目前对我来说两者都不是一个可行的选择。
java - 使用特定的 xpointer 参考 Java 对 XML 进行签名
我需要用 Java 中的以下参考 URI 对 XML 文档进行签名:
xpointer(//*[@authenticate='true'])
因此,我尝试使用此参考对其进行签名:
我得到这个错误:
找不到 URI #xpointer(//*[@authenticate='true']) 和 Base null 的解析器
我在网上搜索如何修复它,我找到了这个类:
但是我没有找到如何使用它来使用我的 xpointer 对我的 XML 文档进行签名。
xml - 如何通过 XML 和 XSD 制作几何拓扑?
我需要找到使用拓扑表示来定义线的方法。现在我有类似的东西:
其中 Line/Point 是点唯一 id(UIDP) 的值。
问题
- 有没有办法让它更清楚,不仅得到 ID,而且使用参考或类似的东西得到孔点定义?
- 如何使用 XLink 或 XPointer 制作它?
- 如何在 XSD Schema 1.1 中定义它?
xml - XPath - 选择具有给定属性的元素(及其子元素)以外的所有元素
我正在使用 xinclude 将文档的某些部分包含在另一个文档中,例如,在我的主文档中:
我的included.xml 看起来像:
我的问题是,我怎样才能选择所有内容,保留属性 condition="cond2" 的正确结构,但也不是子元素?所以我想选择
我在那里的 xpointer 不起作用:
java - 尝试将 XInclude 与 Java 一起使用并使用 xml:id 解析片段
我一直在尝试让 XInclude 在我的 XML 文档中工作,最后让它在 Oxygen XML 中工作,我用它来创作 XML 文档。
然后我去了我的应用程序,它是用 Java 编写的,但它似乎不支持任何形式的 XPointer 分辨率,除非使用类似元素(/1/2)的东西。
显然,这是一个糟糕的方案,因为每次编辑文档时,XPointer 都需要更改以反映 XML 中节点的新位置!
我工作的方案只是在目标文档中使用了 xml:id :
然后,在另一个文件中:
我预计(并且正在进入氧气)会导致以下结果:
但是,在 Java 中它失败了:
以 XML 格式读取文件的资源错误 (href='data/target.xml')。原因:XPointer 解析不成功。
但是,如果我将包含标签更改为使用
那么它工作得非常好 - 但是,正如我所说,这是一个非常糟糕的解决方案。
我只是使用 Java 运行时 (1.8) 中包含的实现。
这是我正在使用的代码:
c# - XML 签名:验证所有必需的元素都已签名
我正在实现 XML 签名的验证。在我正在使用的(我希望它更多)技术文档中,(1)验证消息的所有必需元素(通过引用 Uri 使用 xpointer 指定)是否已签名和( 2)签名本身的验证。
是否可以在 C# .NET 中做出这种区分(即执行步骤 (1)),您将如何处理?
我唯一能想到的就是检查 SignedXML 类中的 Reference Uri(通过 SignedInfo 属性)。这样做的问题是,您永远无法确定是否使用了正确的 CustomSignedXML(您需要它来覆盖 GetIdElement 方法)来生成签名。
python - 带有递归 XInclude 语句的 XML
我对递归 XInclude 语句有疑问。我有一个主文件,其中 XInclude 存在于另一个文件中。包含的文件中还有进一步的 XInclude 语句。
我用 python 和库 lxml 解析我的 XML 文件。结果,不幸的是,我只得到以下信息。我的错误在哪里?还是不需要递归使用 XInlcude?
谢谢你的帮助。
主文件
拳头包括
第二个包含(Test_1_1.xml、Test_1_2.xml 和 Test_1_3.xml 与此示例相同)
我使用以下 python 代码的结果。
结果
但我本来期望并想要以下结果