问题标签 [xinclude]

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.

0 投票
0 回答
38 浏览

xml - “构建”一个整理所有 XInclude 的 XML 文件

我目前正在使用 XInclude 来减少我的 XML log4j2 配置文件中的重复量。但是,我想知道是否有一个工具可以整理所有文件 XInclude-ed (...) 并生成单个 XML 文件?

使用 XInclude 并不是一个坚如磐石的要求。我目前的构建工具是 Gradle。

0 投票
2 回答
1113 浏览

android - 如何指定要使用的 XML 解析器实现?

我目前正在尝试编写一个应用程序(游戏),我希望它可以在桌面和 Android 上运行。我选择使用的数据格式是 XML,因为它比 JSON 更灵活、更强大,它比数据库执行得更好,而且我熟悉并喜欢它。

但是,我开始怀疑是否真的可以使用 XML。

除了普通的旧 XML,我还在我的数据结构和 XPath 中使用 XInclude 来定位相关节点。这似乎要求我在解析期间也验证我的 XML,这很好,因为我在开发 XML 时已经编写了 XML 模式。

我已经设法让一切都在桌面上运行,但是,一旦我尝试在 Android 上运行它,它就失败了。Android 上默认使用的 XML 解析器似乎不支持 XInclude ( source )。

我在 build.gradle 中添加了以下行:

并且它似乎在 SchemaFactory 似乎正在解析到 Xerces 中起作用,正如调试输出所证明的那样:

但是 DocumentBuilderFactory 似乎正在使用默认的 Android 系统,因为它仍然会引发错误:

当您在 DocumentBuilderFactory 上调用 setXIncludeAware 时总是会抛出什么(参见上面的链接)。

我曾假设将它包含在我的 gradle 构建文件中就可以了,它似乎部分具有,但还不够。

我希望通过在所有平台上使用相同的解析器实现来解决所有跨平台 XML 解析问题,但这似乎并不那么简单......

0 投票
1 回答
109 浏览

php - What's the RegEx pattern to get recursive bracket with specific prefix?

Please, what is the correct php code, using a regex pattern, to get $output from $string?

Generalizing:

Brackets can be recursive (as text()). i.e. string1_1 and/or string2_1 may contain other brackets. $string = 'string1(string1_1())string2(string2_1()string2_2());

Knowing the brackets prefix xmlns, I need the regex pattern to get //section/datePublished/text(), i.e. knowing string1I need the regex pattern to get string1_1 (or string1_1()).

Knowing the brackets prefix xpointer, I need the regex pattern to get ns=http://testurl.com/now, i.e. knowing string2I need the regex pattern to get string2_1 (or string2_1()string2_2().

Can you explain the process?

0 投票
1 回答
151 浏览

php - PHP 是否支持递归处理 xi:include 元素?

使用正确的 XInclude 语法(使用 XPointer)加载 XML 文件并递归包含 XML 的最佳 PHP 代码是什么?

示例(Xinclude 语法应该是正确的):index.xml 包含 legal/sitemap.xml:

legal/sitemap.xml 包含一个节点值 legal/cookies.xml

法律/cookies.xml

输出包含 1 级和 2 级包含的完整 XML 代码。

PHP DOMDocument::xinclude正确解析第一级包含(即 index.xml 包含 legal/sitemap.xml),但不解析 > 第二级包含,(不解析 legal/cookies.xml 的节点值,保留 ' xi:include' 在 legal/sitemap.xml 中)。这是输出:

使用 '$DOMDocument->xinclude();' 解析两次 返回相同的输出。

0 投票
0 回答
67 浏览

java - 在@databasesetup dbUnit 中使用 xinclude

是否可以在带有 DBUnit 的 xml 文件中使用 xinclude?

以下场景:

FileWithInclusions.xml 应该包含 IncludedFile.xml,因为有很多测试使用 IncludedFile.xml 中的数据。我基本上必须删除文件中的冗余。

使用了这些版本的 dbUnit(不确定是哪一个,因为我是新手,抱歉):

我也不确定 Databasesetup 是如何工作的,因为我们的项目中有很多不同的 xml 解析器。

DBUnit 使用哪个解析器?它是如何解析的?如果可能,我如何激活对 xinclusion 的支持?

我将非常感谢您的帮助!如果您需要更详细的信息,请告诉我。:)

0 投票
1 回答
139 浏览

whitespace - 将 xinclude 与 docbook 一起使用时保留空格

我使用docbook生成文档。主文档的结构是模块化的,对不同的模块使用xinclude

我的问题是关于通过 xinclude 包含在主文档中的逐字元素(带有大量空格的元素)。

如果我直接在主文档中使用文字布局,则输出如预期:保留空格。

我想使用一个包含的文件,其中包含一个带有literallayout 元素的部分。如果我使用包含的文件生成一个文档,则输出中的空格会被删除。

谁能告诉我如何在文字布局或程序列表等逐字元素中保留空格?

文件1.xml:

如果我将其生成为独立文档,则输出如预期:

如果我按如下方式使用它: File2.xml:

如果我生成此文档,第一部分将如预期的那样(作为金字塔)

但是在 xinclude 包含的部分中,所有“0”都在一行 0 000 00000 上输出。

0 投票
0 回答
286 浏览

log4j2 - 在外部 log4j 配置中包含类路径资源

我使用外部 log4j 配置并使用 org.apache.logging.log4j.core.config.Configurator 将其加载到 servlet 上下文侦听器中

我想引用一些在构建时生成的应用程序属性(如应用程序版本)。这是我想做的事情:

/外部文件夹/log4j.xml

log4j2-properties.xml

应该是类路径资源,@version@​​被 gradle 过滤。

但是,这种方法不起作用。我只能从与顶级 log4j.xml 相同的文件夹中 xinclude 资源

我该如何解决我的问题?

(我知道如何使用 logback 来做到这一点,但我想升级到 log4j2)

0 投票
1 回答
164 浏览

java - 参数化部分 xml 属性值

我正在解组几个大型 XML 文件。他们有共同的部分,我决定将共同的部分写在单独的 XML 文件中,然后使用xi:include标签包含它。它看起来像这样:

此时我想参数化long/common/part. 我试图用xsl:variable这样的方式定义一个变量

但是为 href 赋值是个问题,

或者

没有工作。有没有办法为 XML 属性赋值?

0 投票
1 回答
697 浏览

xml - 如何使用 XSLT 3.0 从命令行解析 XML 文件中的 XInclude 指令

我们的 XML 数据存储在单独的文件中,因此人员可以单独处理简单的模块。将单独的文件组合成一个主文件以进行进一步处理。目前我正在 Oxygen XML 编辑器的 IDE 中执行此操作。为了简化这个过程,我想在没有这个 IDE 的情况下从命令行进行。如何使用 Saxon HE 从命令行解析 XInclude 语句(如果可能的话)?

我试过这样的命令:

并得到以下错误代码:

Saxonica 关于 xi:on 参数的文档说:“将 XInclude 处理应用于所有输入 XML 文档(包括模式和样式表模块以及源文档)。目前这仅在使用 Xerces 解析器解析文档时有效,这是在JDK 1.5 及更高版本。” (https://www.saxonica.com/documentation9.5/using-xsl/commandline.html)——不知道这是什么意思。

主要 XML 文件:

XML 组件文件:

XSLT:

我需要的输出(如 Oxygen IDE 创建它):

0 投票
1 回答
218 浏览

java - 是否可以在 XInclude 属性 href 中使用 Java 系统属性变量?

我正在使用 ActiveMQ Artemis 拆分 broker.xml 功能并包含 xml 文件。我正在尝试将 Java 系统属性用于 xml 文件路径。但它正在抛出错误。

这是我正在尝试的路线。

我已经单独定义了-Damq.conf.broker.config=/var/amq/....

收到以下错误