如果我们说为特定节点应用模板,那么它将应用于整个xml中,无论它在哪里找到该节点/标记。
我的问题是我有一个xml,我需要根据条件应用模板,基本上保持一些秩序。
输入xml:
enter code here
<step>
<note>..</note>
<para>..</para>
<table>
..
..
</table>
<note>...</note>
<table>
..
..
</table>
<table>
..
..
</table>
<note>...</note>
<text>...</text>
</step>
输出应为,
<fc:topic>
<fc:subTask id="S0EC0A941" lbl="E.">
<fc:para>..</fc:para>
<fc:text>...</fc:text>
<fc:note>..</fc:note>
<fc:table>
..
..
</fc:table>
<fc:note>...</fc:note>
<fc:table>
..
..
</fc:table>
<fc:table>
..
..
</fc:table>
<fc:note>...</fc:note>
</fc:subTask>
</fc:topic>
我的XSLT是这样的,
<xsl:template match="step">
<fc:topic>
<fc:subTask>
<xsl:if test="@id">
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
</xsl:if>
<xsl:attribute name="lbl"><xsl:number format="A."/></xsl:attribute>
<xsl:apply-templates select="para"/>
<xsl:apply-templates select="text"/>
<xsl:apply-templates select="note"/>
<xsl:apply-templates select="table"/>
</fc:subTask>
</fc:topic>
需要根据以下条件重新构造XSL,
我只想在注释不是作为表的前兄弟或后兄弟出现时应用注释模板。如果它在表的后面或前面,那么它应该位于表之间、表的下面或上面,就像在输出中一样。
谢啦
代替
<xsl:apply-templates select="para"/>
<xsl:apply-templates select="text"/>
<xsl:apply-templates select="note"/>
<xsl:apply-templates select="table"/>
具有
<xsl:apply-templates select="para, text, note[not(preceding-sibling::*[1][self::table] | following-sibling::*[1][self::table])]"/>
<xsl:apply-templates select="table | note[preceding-sibling::*[1][self::table] or following-sibling::*[1][self::table]]"/>
根据xslt中的变量应用模板的最佳方法是什么?变量将通过java脚本代码更改。我已经阅读了xslt v 2.0中的函数,但答案解释得不是很好,也不符合我的要求 我尝试了下一个: 我创建了一个全局变量 然后像这样应用 然后像这样匹配 但没有显示任何内容。
我有一个XML,我必须循环测试结果和组件。当组件的类型与特定名称匹配时,我必须对该组件应用不同的模板。我为每种组件类型创建了一个XSL-to,具有不同的模板,例如:NORMALTEXTBOX。但是这些模板并没有被应用到组件块中。。。谁能帮我一下吗? XML XSL
我对XSLT很陌生,并且一直在努力实现递归模板,它通过多个文本节点并搜索匹配项。创建递归模板时,我收到一条错误消息,说“/的第一个操作数的必需项类型是node();提供的值具有项类型xs: string”。我不知道如何选择多个节点作为节点,而不是字符串。 目标:我有多个测试节点,如 我想遍历这些节点以寻找匹配的数字。当找到这个数字时,我需要选择父元素属性的子字符串。 下面是带有递归模板的样式表的一
英文原文:http://emberjs.com/guides/application/the-application-template/ 应用模板是应用启动的时候默认渲染的模板。 你应该把你的header、footer和其他装饰性的内容放在应用模板里面。另外,应用模版中至少需要一个{{outlet}}占位符,以便路由能根据当前的URL将适当的模版渲染进来。 下面是一个应用模板的例子: 1 2 3
我有以下输入: 我的XSL: 目标是对于每个具有query结果/记录的“query1”,我从该query结果/记录/列[@name='id_contact']中获取值,并从“query2”中删除每个在query2/query结果/记录/列[@name='id_contact']中具有该值的记录。这部分可以工作,但下一部分不能正常工作:然后,在删除query2中的值后,获取剩余的query2/id_
我正在寻找如何根据XML文件中的参数将模板应用于XML文件。 XML文件具有以下格式: XML文件由另一个程序生成,需要特定的输出格式,具体取决于参数“outt-type”的值。如果必须同时为多个输出生成结果,则此参数可能会出现多次,因此需要一个循环。 以下是一个具有多个输出类型参数的示例: 我想创建一个主模板文件。xsl,并在文件中导入/包括其他模板文件(generate-type-1.xsl、