xmlhack.ru XML-форумы
Обсуждение XML и связанных с ним технологий

Помогите начинающему в простом запросе


Автор Сообщение
SkyDream
Новичок

Зарегистрирован: 10.07.2009
Сообщения: 1

[13900] Пт Июл 10, 2009 08:26
Помогите начинающему в простом запросе
Добрый день, значит есть у меня пример xml

Код:

<main>
   <info>Продукты питания</info>
   <category>
      <catname>Фрукты</catname>
      <product>
         <name>Апельсин</name>
         <description>оранжевый</description>
      </product>
      <product>
         <name>Лимон</name>
         <description>желтый</description>
      </product>
      <product>
         <name>Яблоко</name>
         <description>красный</description>
      </product>
   </category>

   <category>
      <catname>Овощи</catname>
      <product>
         <name>Помидор</name>
         <description>красный</description>
      </product>
      <product>
         <name>Лук</name>
         <description>зеленый</description>
      </product>
   </category>
</main>



Хочу преобразовать его в такой вид


Код:

Апельсин - Фрукты - оранжевый
Лимон - Фрукты - желтый
Яблоко - Фрукты - красный
Помидор - Овощи - красный
Лук - Овощи - зеленый



Проблема с выводом наименования категорий в каждом продукте, использовал группировки, но получалось вывести наименование только один раз
aps
Новичок

Зарегистрирован: 10.07.2009
Сообщения: 4

Посетить сайт автора
[13901] Пт Июл 10, 2009 18:05

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:template match="main">
<xsl:apply-templates select="category/product"/>
</xsl:template>

<xsl:template match="product">

<xsl:value-of select="name"/>
<xsl:value-of select="description"/>
<xsl:value-of select="../catname"/>
</xsl:template>




</xsl:stylesheet>