问题标签 [xslt-1.0]

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 投票
5 回答
112839 浏览

xml - 如何添加图像?

情况:

我有一个包含图像信息的简单XML文档。我需要将其转换为HTML。但是,我看不到打开标记的位置,当我使用下面的XSL代码时,它显示以下错误消息:

“当没有打开元素开始标签时,无法写入属性节点。”

XML 内容:

XSL 代码:

0 投票
6 回答
2889 浏览

xml - 在 XSLT 1.0 中格式化 24 小时时间的最佳方式是什么?

我很难找到采用时间格式并轻松确定它是否有效然后使用 XSLT 1.0 生成具有某种格式的结果元素的好方法。

给定以下xml:

生成生成的 xml 会很棒:

但是,如果源 xml 包含无效的 24 小时时间格式,则生成的dstTime元素应为空白。

例如,当无效的源 xml 如下:

生成的 xml 应该是:

问题是,可以编写以产生所需结果的最佳 XSLT 1.0片段是什么?希望是保持它非常简单,而不必每次都解析(即,如果可能的话,模式匹配会很甜蜜)。

0 投票
3 回答
6688 浏览

xml - 检查 OUTPUT 中的重复元素

我有一些 XML,例如,它看起来像这样:

我想用 XSLT 对其进行转换,但我想抑制输出中的第二个 f2 元素 - 如何在处理源中的第二个 f2 元素时检查我的模板内部是否已经存在输出中的 f2 元素?我的 XSLT 目前看起来像这样:

我需要对模板中的 xsl:element 进行某种检查,但我不确定如何查询输出文档以查看该元素是否已经存在。

编辑:忘记了 pre 标签,现在应该可以看到代码了!

0 投票
4 回答
23408 浏览

xml - 用 xsl:text 解释换行符?

我有一个 XSL 样式表,其xsl:text节点中的内容如下:

样式表本身是一个带有“unix 风格”换行符的文本文件。我在 Windows 和类 unix 平台上调用这个样式表。如果输出符合调用它的平台的约定,那就太好了。

当我在 Windows 上运行这个样式表时,除了xsl:text节点的内容之外,输出都有回车/换行对。

xsl:text我可以指示 XSLT 处理器将节点内容中的换行符转换为特定于平台的行尾吗?

更多上下文:我正在从Apache Ant 1.7.1 XSLT 任务中调用样式表,如下所示:

样式表标题当前如下所示:

0 投票
3 回答
8172 浏览

xml - 选择祖先的属性;“../..” 作品,“祖先::“不

我正在运行一个 XML 文档,选择所有元素,并基于祖先创建链接,该祖先通常是树中的两个节点,但偶尔也会有 3 或 4 个节点。对于大多数元素, using<xsl:value-of select="translate(../../@name,$uc,$lc)" />工作得很好,但对于祖先是 3 个左右节点的情况,我想使用<xsl:value-of select="translate(ancestor::package/@name,$uc,$lc)" />,但这不起作用。

我正在使用 Ruby 中的 xsltproc 来进行 XSL 转换。

示例树(是的,它有 XSLT,不,我不想处理它):

我正在使用的 XSL:

编辑:啊,对,忘记了选择的名称空间。在大多数情况下,解析器正确地找到了那个祖先,但是当那里有一个 xsl: 节点时它仍然找不到它,并且目标文件没有 xsl 的命名空间。我不想修改目标文件,因为它是生产代码——我只是在编写一个自动文档工具。

0 投票
1 回答
1309 浏览

xml - 仅处理选定的节点

一个 XSLT 新手问题:我需要在 XML 文件中替换一个文本值。所有其他节点必须保持不变。这是我的输入文件(in.xml):

这是我的 XSLT 转换 (subst.xsl):

我使用以下 Ant 脚本 (build.xml) 运行它:

这就是我得到的(out.xml):

“level1”的属性“attr1”缺失。

如果有人,我将不胜感激

  • 告诉我subst.xsl 有什么问题

或者

  • 给我一个想法,如何强制 xslt 处理器将不匹配的节点复制到输出文件并手动完成(在我的情况下这很容易出错)。
0 投票
2 回答
101203 浏览

xml - 如何使用带有样式表和 xsltproc 的 xslt 从 xml 中删除元素?

我有很多具有以下形式的 XML 文件:

我想从文件中删除。

使用 XSLT 样式表和 Linux 命令行实用程序 xsltproc,我该怎么做?

到目前为止,在脚本中我已经有了包含要删除的元素的文件列表,因此可以将单个文件用作参数。


编辑:这个问题最初缺乏意图。

我想要实现的是删除整个元素“元素” where (fruit=="apple" && animal=="cat")。在同一个文档中有许多名为“元素”的元素,我希望这些元素能够保留。所以

会成为:

0 投票
5 回答
6634 浏览

xml - 文本属性作为另一个元素的值

使用下面的 XML,我想知道如何获取 case_id 节点中文本的值作为下面 xsl 表中隐藏输入标记的属性。这可能吗?

0 投票
4 回答
1336 浏览

html - 输出 html 控件 - 动态控件名称

我想使用 xslt 输出 html 控件,但我需要能够命名控件,以便在表单回发时可以找到它们。

我希望能够命名单选按钮"action_" + _case_id

0 投票
3 回答
95484 浏览

xml - 如何创建布尔值?

我对 XSLT 完全陌生,无法弄清楚以下代码哪里出错了。

当它应该为假时,它总是返回真。为什么?