На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Vasya2000, Serafim, fatalist
  
> Вставка значений элемента в XSL-шаблон , XML & XSL
    Изучаю XML (XML, XSL, XSLT). Возник вопрос по вставке текстовых значений XML-элементов в XSL-шаблонах.

    1.xml
    ExpandedWrap disabled
       
      <?xml version="1.0" encoding="windows-1251"?>
      <?xml-stylesheet type="text/xsl" href="my.xsl"?>
      <cities>
       <city id="1">
        <name>Васепупкинский</name>
        <firms>
         <firm id="1">
          <name>Комп +</name>
          <location>ул. Островского, д. 925</location>
         </firm>
         <firm id="2">
          <name>Антон Computers</name>
          <location>ул. Горбачева, д. 11254</location>
         </firm>
        </firms>
       </city>
      </cities>


    1.xsl
    ExpandedWrap disabled
       
      <?xml version="1.0" encoding="windows-1251"?>
      <xsl>
       <rule>
        <root/>
        <html>
        <body>
        <children/>
        </body>
        </html>
       </rule>
       <rule>
        <target-element type="city"/>
        <h1>Город </h1>
       </rule>
      </xsl>


    Необходимо, чтобы сразу после слова "Город" вставлялось название города, т. е. значение дочернего элемента NAME. Как лучше всего это сделать?
      ExpandedWrap disabled
        <?xml version="1.0" encoding="windows-1251"?>
        <xsl>
         <rule>
          <root/>
          <html>
          <body>
          <children/>
          </body>
          </html>
         </rule>
         <rule>
         <h1>Город </h1>
         <xsl:template match="name">
          <b><xsl:value-of select="."/></b>
         </xsl:template>
         </rule>
        </xsl>
      попробуй так.

      я правда не силен именно в XSL, но кто-то уже выставлял на этом форуме замечательную ссылку: http://www.raleigh.ru/XML/XSLTutorial/contents.htm
      там куча здоровских примеров, которые тебе точно помогут
        ExpandedWrap disabled
          Reference to undeclared namespace prefix: 'xsl'. Error processing resource 'http://site/bin/test.xsl'. Line 13, Position 29
           
           <xsl:template match="name">
        Сообщение отредактировано: Tishaishii -
          надо в начало файла добавить
          ExpandedWrap disabled
            <xsl:stylesheet version = '1.0'
                 xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

          а в конец
          ExpandedWrap disabled
            </xsl:stylesheet>
          Сообщение отредактировано: shipbrother -
            Ага. Спасибо.
            А вот вам вышеуказанный ресурс в CHM-формате.




            Какой надо атрибут написать к <?xml> чтобы выводилось то, что получилось?
            По-моему что-то типа DEFER или STANDALONE, не помню.
            Сообщение отредактировано: Tishaishii -

            Прикреплённый файлПрикреплённый файлXSL_Tutorial.zip (112.74 Кбайт, скачиваний: 110)
              Цитата
              Tishaishii, 4.09.04, 22:37
              Какой надо атрибут написать к <?xml> чтобы выводилось то, что получилось?

              Наверное ты имеешь в виду: standalone="yes"
              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,0302 ]   [ 15 queries used ]   [ Generated: 27.04.24, 08:40 GMT ]