问题标签 [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 投票
2 回答
55664 浏览

xslt - 将两个数字相乘然后相加

我很难尝试做一些看起来应该很容易做的事情。我基本上想将一个节点中的 2 个数字相乘,然后将所有节点的这些数字相加。这是我尝试过的 XSLT 代码。

此代码导致错误提示“函数 sum 的参数 1 无法转换为节点集”。

有谁知道出了什么问题或我如何才能完成我想做的事情?

0 投票
1 回答
3525 浏览

xml - 使用分隔符时的 XML 格式编号问题

我们正在开发一个能够显示价格的网页,其中空格是分组分隔符,逗号是小数分隔符。例如,该值1234567.89应显示为1 234 567,89。(我们实际上正在使用 ,所以我们得到了一个不间断的空间。)

这似乎是正确的 XSL,它几乎可以工作,但我得到一个“。” 其余部分之后的字符。所以我最终得到了 "1 234 567,89." 而不是 "1 234 567,89".

有任何想法吗?

0 投票
5 回答
8158 浏览

xml - 使用 XSLT 截断 XML

我有一个问题要问 SO 社区的聪明人。

下面是Symphony CMS生成的 XML 片段。

我需要做的是<body>根据指定的长度取一部分元素,以博客样式显示:

Lorem ipsum dolor sit amet, consectetur adipiscing elit。sed malesuada auctor magna。Vivamus urna justo、pulvinar nec、sagittis malesuada、accumsan in、massa。Quisque mi purus, gravida eget, ultricies a, porta in, sem...更多

...更多是指向完整新闻项目的链接。我知道我可以选择特定的段落,我也知道我可以使用 substring 函数带来指定数量的字符。但是,我需要保留文本的格式,即<body>元素中的 HTML 标记。

我意识到这会引发标签关闭的问题,但肯定有办法。希望对 XSLT 更有经验的人可以对这个问题有所了解。

0 投票
2 回答
33613 浏览

xslt - 使用 xsl 获取文件名

如何使用 xsl 1.0 获取文件名?

我试过

但得到“致命错误!找不到函数:base-uri”

0 投票
8 回答
97743 浏览

xslt - XSLT:如何在期间更改属性值?

我有一个 XML 文档,我想更改其中一个属性的值。

首先,我使用以下方法复制了从输入到输出的所有内容:

现在我想更改"type"任何名为"property".

0 投票
3 回答
2300 浏览

xslt - 健康)状况在 XSLT 1.0 中?

我有一个生成 XHTML 的 XSLT 1.0(2.0 不是一个选项)样式表。根据参数,它可以生成完整的 XHTML 有效文档或只是一个<div>...</div>片段,用于包含在 Web 页面中。

我的问题是在这两种情况下产生不同的 XML 声明。对于独立页面,我需要:

对于<div>一个:

<xsl:output>不能包含在<xsl:if>. 它只能是 的直接子代<xsl:stylesheet>

我看到的唯一解决方案是创建一个包含大多数模板的样式表,然后是两个小的“包装器”,右边<xsl:output><xsl:import>主样式表。

我一直在寻找更好的主意,但显然没有。根据 Andrew Hare 和 jelovirt 的建议,我编写了两个“驱动程序”,两个简单的样式表,分别调用正确<xsl:output>的样式表和主样式表。这是这些驱动程序之一,用于独立 HTML 的驱动程序:

0 投票
3 回答
2908 浏览

xml - 在 XSLT 中,如何获取 XML 文件的文件创建/修改日期?

我想知道我的 XSLT 代码当前正在处理的 XML 文件的文件创建/修改日期。

我正在处理一个 XML 文件并生成一个 HTML 报告。我想在 HTML 报告中包含源 XML 文件的日期。

注意:我正在使用 C# .NET 2008 并使用内置的 XslCompiledTransform 类。此后,我使用此处其他答案的输入找到了解决方案(单独的答案)。谢谢!

0 投票
4 回答
8872 浏览

xml - 如何从 xml 文档的不同部分嵌套 xsl:for-each?

我将 XSL 放在一起,而不是使用定义所有需要构建的项目的 XML 文件作为输入来创建 NAnt 构建脚本。我们有许多非常相似的项目,它们具有标准布局和已定义的移交区域标准,因此拥有一个定义开发人员想要发生的事情而不是描述需要如何完成的 XML 文件将极大地帮助构建服务的采用。

我想在产品构建 XML 文件中尽早定义要使用的构建模式,即

我想要一个

现在,我可以通过在两条 for-each 行之间定义一个来保存 Mode/@name 值,但这有点混乱,我真正想要做的是翻转下一个,以便构建模式在里面Item 循环,因此它先构建一种模式,然后再构建另一种模式。目前它将构建所有调试,然后构建所有发布版本。要做到这一点,我必须声明几个,这变得非常混乱。

所以当源文档中的元素没有嵌套时它是嵌套的。

编辑:

好的,正如下面接受的答案所示,在大多数情况下使用 for-each 是一个坏主意,我已将此示例改写为以下示例。略有不同,因为我使用的架构已针对上述帖子进行了简化,但您明白了。

这是它运行的架构

0 投票
2 回答
2603 浏览

xml - “xmlns”属性使我的 XSLT 返回空白值

我有一个试图通过 XSL 文件转换的 XML 文件。一旦我向我的 XSL 的根元素添加了一个非空白 xmlns 属性,转换只会给我带来所有内容的空白数据。如果我删除或清空 xmlns 属性,我会得到我所期望的。

谁能告诉我为什么会这样,所以我可以阻止它!

这是我的一些 XSL(省略了一些部分并替换为 ...):

* 编辑 * 这是 html_commonstructures 中的一个片段:

0 投票
4 回答
6438 浏览

xslt - 仅使用 xslt 1.0 将字符串的第一个字符小写

对于使用 xslt 1.0 的人,我已经看到了使用 translate 函数将字符串转换为小写(或大写)的模式。

有没有一种优雅的方法可以让字符串的第一个字母小写?