我正在练习一些 XSL,并使用这个 XML 文档作为一个简单的例子:
<?xml version="1.1" encoding="UTF-8"?>
<zoo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="zoo.xsd" >
<animals>
<animal type="lion">
<name>Zeus</name>
<gender>M</gender>
<eats>antelope</eats>
<eats>monkey</eats>
</animal>
<animal type="monkey">
<name>Fredo</name>
<gender>M</gender>
<eats>banana</eats>
<iseatenby>lion</iseatenby>
</animal>
<animal type="lion">
<name>Here</name>
<gender>F</gender>
<eats>antelope</eats>
<eats>monkey</eats>
</animal>
<animal type="antelope">
<name>Annie</name>
<gender>F</gender>
<eats>grass</eats>
<iseatenby>lion</iseatenby>
</animal>
<animal type="elephant">
<name>Moses</name>
<gender>M</gender>
<eats>leaves</eats>
</animal>
</animals>
</zoo>
我已经能够通过我的 XSL 文档获得一些基本信息,但我现在坚持一件事:如果有多个结果,我如何获得所有结果?例如,在我的文档中,一些动物有多个“吃”元素。我想以逗号分隔的字符串显示它们;最终,我想将每个动物的元素转换为属性,并且每个元素只有一个属性。(使用我之前的例子,新的动物元素狮子的“吃”属性看起来像这样eats="antelope, monkey"
:)
有人可以解释一下我如何用 XSL 做这样的事情吗?任何帮助深表感谢。:)