Я практикую некоторые 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 ?? Буду признателен за любую оказанную помощь. :)