假设我们有以下 XML...
<FruitBasket>
<Basket>
<Apple>1</Apple>
<Banana>2</Banana>
<Orange>3</Orange>
</Basket>
<Basket>
<Avocado>1</Avocado>
<Lemon>2</Lemon>
</Basket>
</FruitBasket>
使用 XSLT 我将如何生成以下转换?
<BasketContents>
<Content>
<FruitName>Apple</FruitName>
<FruitAmount>1</FruitAmount>
<FruitName>Banana</FruitName>
<FruitAmount>2</FruitAmount>
<FruitName>Orange</FruitName>
<FruitAmount>3</FruitAmount>
</Content>
<Content>
<FruitName>Avocado</FruitName>
<FruitAmount>1</FruitAmount>
<FruitName>Lemon</FruitName>
<FruitAmount>2</FruitAmount>
</Content>
</BasketContents>
我通常需要这样做,而不知道篮子里有什么类型的水果 xslt 必须处理“篮子”的任何子元素。例如,我不知道篮子里装的是苹果还是鳄梨,也不知道篮子里有多少种水果。
基本上,这分解为需要知道如何调用子元素的名称,所以从 XML 的<Basket>
元素中,我可能会应用一个模板来获取它的未知子元素的名称。
对不起,如果这个类比比有用更令人困惑。