У меня есть XML-файл, как что:XML слияния узлов с помощью XSLT
<root>
<scenario name="film1">
<case name="aaa">
<test name="test1">ok</test>
</case>
<case name="bbb">
<test name="test2">not ok</test>
</case>
<case name="aaa">
<test name="test3">not ok</test>
</case>
<case name="bbb">
<test name="test66">ok</test>
</case>
</scenario>
</root>
Конечно есть больше узлов, как сценарий, но я хочу, группа case
для каждого сценария. Я ожидаю, что-то вроде этого:
<root>
<scenario name="fil1">
<case name="aaa">
<test name="test1">ok</test>
<test name="test3">not ok</test>
</case>
<case name="bbb">
<test name="test2">not ok</test>
<test name="test66">ok</test>
</case>
</scenario>
</root>
Я сделал XSLT-файл:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="root">
<xsl:copy>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="scenario">
<scenario>
<xsl:attribute name="name">
<xsl:value-of select="@name"/>
</xsl:attribute>
<xsl:apply-templates/>
</scenario>
</xsl:template>
<xsl:template match ="case">
<case>
<xsl:attribute name="name">
<xsl:value-of select="@name"/>
</xsl:attribute>
</case>
</xsl:template>
</xsl:stylesheet>
вы знаете, что я должен делать?
Что вы ищете, это группировка в XSLT.Взгляните на группировку мурянцев – Saurav
XSLT 2.0 разрешен? –
нет, это не разрешено :(Я не получаю эту муэнчянскую группировку ... –