powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Сравнение и вывод атрибутов, не понятно...
12 сообщений из 12, страница 1 из 1
Сравнение и вывод атрибутов, не понятно...
    #38999680
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! Надеюсь на помощь от гуру) сам, только начинаю вникать в xml и шаблоны xsl. Более менее разобрался с выводом xml, но вот сравнить, хоть убей не понимаю, как?
Вот пример xml файла:

<?xml version="1.0" encoding="WINDOWS-1251"?>
<?xml-stylesheet type='text/xsl' href='ex03-1.xsl'?>
<tutorial>
<properties>
  <property>
<property id="p3004">количество лап</property>
<property id="p3009">количество глаз</property>
<property id="p3029">количество усов </property>
  </property>
</properties>
<items>
<p3009>2</p3009>
<p3004>4</p3004>
<p3029>124</p3029>
</items>
</tutorial>

как посоветуете реализовать сопоставление и вывод на экран,  property id с items?
понятно, что это кусок кода, из множества строк... Мой мозг хочет взорваться) в гугле устал искать подобные примеры... Да и 3g не очень этому способствует, вся надежда на вас!

код шаблона соответственно:
<?xml version="1.0" encoding="WINDOWS-1251" ?>
<xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<table border="1">
<tr bgcolor="#CCCCCC">
<td align="center"><strong>1</strong></td>
<td align="center"><strong>2</strong></td>
</tr>
<xsl:for-each select="tutorial/properties/property/property">
<tr bgcolor="#F5F5F5">
<td><xsl:value-of select="property"/></td>
<td align="right"><xsl:value-of select="//property/@id"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #38999867
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Жутко интересно, ни кто не сталкивался с подобной задачей, или ни кто не хочет помогать начинающему? Наконец то нашел ресурс интересный, а помочь некому(
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #38999910
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
slav4ikencoding="WINDOWS-1251"Жуть!

slav4ikxmlns:xsl=" http://www.w3.org/TR/WD-xsl" Это что? Зачем?
Это путь к документации, но не правильное пространство имён.

И да, никому не интересно даже смотреть неоформленное сообщение. Есть же тэг SRC!
К тому же, зачем в коде все эти bgcolor, aling и прочее, засоряющее суть?

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
  <xsl:output method="html" />

  <xsl:template match="/">
    <table border="1">
      
      <tr bgcolor="#CCCCCC">
        <td align="center">
          <strong>1</strong>
        </td>
        <td align="center">
          <strong>2</strong>
        </td>
      </tr>
      
      <xsl:for-each select="tutorial/properties/property/property">
        <xsl:variable name="prop-id" select="@id" />
        <tr bgcolor="#F5F5F5">
          <td>
            <xsl:value-of select="." />
          </td>
          <td align="right">
            <xsl:for-each select="/tutorial/items/*[local-name() = $prop-id]">
              <xsl:value-of select="." />
            </xsl:for-each>
          </td>
        </tr>
      </xsl:for-each>
      
    </table>
  </xsl:template>
</xsl:stylesheet>
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000175
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Весь код, был взят с примеров на сайтах, но переделан под себя, в меру моих познаний... А по остальным замечаниям согласен, прошу прощения, обязательно исправлюсь! И огромное спасибо за помощь! Буду пробовать, и разбираться дальше, надеюсь с помощью участников форума) а если еще книгу (самоучитель) посоветуете, будет вообще идеально.
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000918
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ура! Спасибо, еще больше прежнего) заработало, как надо! но теперь другой вопрос: а как быть, если необходимо немного изменить xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
<items>
	<item id="100448" template="Кот разноцветный">
	<p3009>2</p3009>
	<p3004>4</p3004>
	<p3029>124</p3029>
	<p3066>32</p3066>
        </item>


просто решил разбить по категориям, но не могу вывести данные, понимаю, что ошибка где то здесь... Пробовал исправить, но не получается...
Код: xml
1.
2.
3.
4.
5.
<td align="right">
            <xsl:for-each select="/tutorial/items*[local-name() = $prop-id]">
              <xsl:value-of select="." />
            </xsl:for-each>
          </td>


И еще вопрос: вот таким кодом пытаюсь вывести item id, но он выводит первое item id, во все столбцы...
Код: xml
1.
2.
  <td><xsl:value-of select="item"/></td>
<td align="right"><xsl:value-of select="//item/@id"/></td>

Как же правильно вывести item id, и в идеале для каждого item id в отдельном столбце template
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000946
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
<xsl:for-each select="/tutorial/items/*[local-name() = $prop-id]">


Код: xml
1.
<td align="right"><xsl:value-of select="@id"/></td>
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000948
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин, как все просто) Только надо не property id, а item id. Так не получилось(
Код: xml
1.
  <td align="right"><xsl:value-of select="/tutorial/items/@id"/></td>
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000950
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_,Спасибо! А какие еще могут быть варианты? Я ж теперь не усну, когда победа, так близко)))
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000952
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
<td align="right"><xsl:value-of select="item/@id"/></td>
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000956
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_, Тоже не хочет, пробовал и полный путь указывать...
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39000965
slav4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_,Странно, но сейчас с полным путем получилось)
А как то можно привести таблицу примерно в такой вид:
100448 Кот разноцветный
Глаза 2
Лапы 4
Усы 124
Пятна 32
111448 Пес черный
Глаза 2
Лапы 4
Усы 124
Пятна 32
Не знаю, как тут таблицу вставить, но думаю суть понятна) Заранее огромное спасибо)
...
Рейтинг: 0 / 0
Сравнение и вывод атрибутов, не понятно...
    #39001507
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Сравнение и вывод атрибутов, не понятно...
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]