Заранее благодарим за ваше время. У меня есть глубоко вложенный XML, преобразование XSLT 1.0, которое мне нужно выполнить (для создания pdf). Я частично вставляю XML и уже прошу прощения за это!Многоуровневая группировка XSLT с использованием метода Muenchian
Я изменил XML как ниже, основываясь на нескольких ответах, и я понял, что столкнулся с большим количеством проблем. Спасибо за терпеливость.
Пожалуйста, дайте мне знать, если требуется дополнительное разъяснение.
ВХОДА XML:
<Reports>
<Report>
<ReportID>R123</ReportID>
<ReportName>R123Name</ReportName>
<PurchaseTypes>
<PurchaseType>
<Name>Purchase Type 2</Name>
<Areas>
<Area>
<AreaType>American</AreaType>
<AreaName>IL</AreaName>
<SaleDetails>
<SaleDetail>
<SaleDetailID>
SD45
</SaleDetailID>
<Amount>
177.3
</Amount>
</SaleDetail>
<SaleDetail>
<SaleDetailID>
SD56
</SaleDetailID>
<Amount>
123
</Amount>
</SaleDetail>
</SaleDetails>
</Area>
<Area>
<AreaType>American</AreaType>
<AreaName>MN</AreaName>
<SaleDetails>
<SaleDetail>
<SaleDetailID>
SD19
</SaleDetailID>
<Amount>
19
</Amount>
</SaleDetail>
</SaleDetails>
</Area>
</Areas>
</PurchaseType>
</PurchaseTypes>
</Report>
</Reports>
Выход необходимо похоже на изображение ниже
Sample Image 2: https://picasaweb.google.com/lh/photo/hxTUY6Qv_9eJyvxQ-UhQutMTjNZETYmyPJy0liipFm0?feat=directlink
@DevNull, это то, что я пытался:
<xsl:template match="Report">
<xsl:apply-templates select="ReportID|PurchaseTypes/PurchaseType"></xsl:apply-templates>
</xsl:template>
<xsl:template match="PurchaseType">
<xsl:apply-templates select="Name|Areas/Area/AreaType"></xsl:apply-templates>
</xsl:template>
Но я дважды вижу тип зоны в Америке. Что-то вроде этого: R123 купить Тип 2 Американский American
Ваш запрошенный выход не имеет необходимого углубления, поэтому от него невозможно угадать любую группировку. Пожалуйста, отредактируйте и исправьте. –
Thanks Dimitre; Я уточняю свой вопрос для получения дополнительной информации. Это форматирование, которое мне нужно, но я попытаюсь немного отложить его. – m27