问题标签 [xsl-variable]

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 回答
1287 浏览

xslt - 获取 xsl:variable 中的元素值

请原谅我对 XSLT 的无知,我对它还很陌生。

使用 saxon xslt 2.0:我试图从 xsl:variable 中获取单个元素,在应用时看起来像这样<xsl:copy-of select="$type">

仅尝试访问 id 元素-我尝试过:

也试过这个和一些变种

并尝试更改数据类型

使用 XSLT 2.0 node-set() 操作似乎并不适用。

我寻求有关如何正确访问 xsl:variable 元素的详细描述,并且很高兴发现我使用这一切都错了,有更好的方法。感谢您的见解和努力。

@martin-honnen 添加时:

我得到结果:

0 投票
1 回答
194 浏览

xml - Can xsl xpath expression read its own template?

I'm hard-coding the colspan value, but could I calculate it from the number of table cells in a row, e.g. using an xsl:variable?

The difficulty is in the fact, that the XML nodes contain more attributes than what I'm trying to show using the XSL, so I CANNOT reference the XML itself for counting. That's why I'm wondering if I can reference the html template inside the XSL instead.

Sample XML:

The XSL:

I was thinking something along the lines of

but then something that, you know...works.

Knowing full well that what I'm trying here (setting a colspan) is, of course, trivial, I'm trying to poke at an underlying question, that of xslt applying XPath on itself.

0 投票
1 回答
4615 浏览

xslt-1.0 - 在 xsl:variable 上的 for-each 循环中使用 xsl:value-of

这是条目25317199中问题的续集。

在 25317199 帖子中,数据有 2 个块,即SchoolsFamilySmithFamilySmith中的数据用作检索Schools中数据的键。

现在,在这种情况下,数据被拆分,FamilySmith现在被定义为样式表中的一个变量,如下图所示:

这适用于以下 XML 数据:

学校名称和学校地址的检索都产生空字符串,如下所示。

我使用了上一篇文章25317199中给出的建议,即使用 current() 来识别“来自谓词之外的当前上下文节点”。但似乎问题出在其他地方。请指教。非常感谢。

0 投票
1 回答
39 浏览

xml - Find the element with the highest valence in xml document

I have a XML-Structure like this:

Now I want to get the Element with the worst status.

The order of the status values from best to worst:

How do I approach this? At the end I want the worst status as Integer in a variable called worst_status and as String in the variable worst_status_string


This is what I tried (but failed because of forbidden overwriting of variables):

0 投票
0 回答
37 浏览

xslt - XSLT-2.0:代码适用于除第一个项目之外的所有项目

考虑以下 XML 数据:

如您所见,“artikel”(= 文章)的 ID 存在不一致。

例如:

文章“apfel”在第 2 行有 id="3526" 但在第 12 行有 id="3526"。

使用以下 XSLT 代码,我想显示所有这些不一致:

我得到的输出如下:

如您所见,我的 xslt 代码对所有文章都运行良好,除了一个:apfel(这是 xml 文件中列出的第一篇文章)。这对我来说似乎完全疯了。为什么我的 xslt 代码适用于除第一个项目之外的所有项目?

0 投票
2 回答
331 浏览

xml - XSLT - 来自递归模板的变量赋值

我对 XSL(T) 很陌生。我不确定它是否相关,但我正在使用 IBM DataPower。

我正在尝试使用 XSL 解析传入的 URI,如下所示:

http://ip:port/Nucleus_v2.9.3/SomeEndPoint

我希望将版本 (2.9.3) 提取到一个变量中,并将目标 (SomeEndPoint) 提取到第二个变量中。我正在尝试使用带有两个参数(上面的 URI 和斜杠字符)的递归模板。在模板中,我想使用一个元素来跟踪 URI 并将这两个值捕获到变量中。

我不确定我正在尝试什么是可能的,我可能误解了模板的含义。我想在上面的“when”元素中分配版本,然后在“otherwise”中分配端点变量(这将在递归中遇到最后一个斜杠后触发)。

值得一提的是,我只是在 XSL 的其他地方调用此模板,并将原始 URI 和一个“/”字符作为两个初始参数传递。我在“when”元素中意识到,我需要通过一些 substring-before 和 substring-after 函数来获取版本。我没有在此处包含该代码,因为我认为它会使示例混乱。

我在正确的轨道上吗?任何帮助或指示将不胜感激。我很乐意根据需要编辑和添加更多信息。

谢谢,克里斯

0 投票
1 回答
1936 浏览

xml - XSLT 如何使用 xsl:for-each 和 xsl:if 选择节点属性值

我有一个要使用 XSLT 1.0 呈现的 XML 文件。

我的案例如下:

longName如果值为“Oui_Combi”

$Publication=prodDate价值 ( 21.11.2018 )

别的

$Publication=productionDates价值 ( 17.11.2018, 21.11.2018 )

我不确定我的语法在 for-each 和/或 xsl-if 上是否正确

XML 文件:

我创建变量的 XSL 部分:

我要打印变量的 XSL 部分$Publication

也许我们可以在没有 for-each 的情况下实现它?

没有任何在线 XSLT 工具/检查器可以让我得到详细的错误,但渲染停止!

感谢帮助

0 投票
2 回答
38 浏览

xslt - xsl:变量赋值说明

我的理解是,它<xsl:variable>是不可变的,不能重新分配。

我是 XSL 的新手,遇到了类似于下面示例中的情况。

关于为什么会发生这种情况,我还没有找到任何明确的结论。我可以推断我没有收到错误以及为什么temp会输出的唯一方法false是存在一个全局temp变量和一个局部temp变量(并且不知何故没有冲突)。

为什么我能够“重新分配” temp

0 投票
1 回答
29 浏览

xslt - 使用 xsl:variable 设置另一个变量 使用 xsl:choose -> Invalid property

我正在尝试定义一些标准颜色以在 XSLT 的其他地方使用,但以下给出了错误:

错误信息是:

在 background-color="${rgbDunkelRot}" 中遇到无效的属性值

不幸的是,没有提供有关错误位置的有用信息。

以下工作正常:

有任何想法吗?