Xpoint
   [напомнить пароль]

Дополнительный xml подключить в xslt

Метки: [без меток]
2009-08-18 10:18:20 [обр] Homan[досье]

Есть сайт на asp + xslt. Нужно в вывод добавить "статический" xml. То есть по мимо основной обработки xml отданного asp, нужно еще добавить xml, важно то что бы в код движка не влазить, а добавить через xslt. Нарыл что есть такая функция как document.
Вот пример что я с ней сделал:

<xsl:variable name="inform" select="document('inform.xml')"/>

пытаюсь вывести что бы понять хоть что нибудь есть в переменой или нет

<xsl:value-of select="$inform"/>
<xsl:for-each select="$inform">
!!!!!<br />
</xsl:for-each>

Получается пустота. Пробовал прописывать полный путь локальный, как ссылку тот же эффект (.
Какие могут быть подводные камни?

спустя 3 часа 10 минут [обр] Homan[досье]

Почитал покрутил, но вообще что то не работает :(

уже нашел ссылку http://www.xml.com/pub/a/2002/03/06/xslt.html тоже не канает

Может по не опытности что то пропустил.

файл menu

<menu>
  <item id="1">1111</item>
  <item id="2">2222</item>
  <item id="3">3333</item>
  <item id="4">4444</item>
</menu>

Файл xslt

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="xml" omit-xml-declaration="yes"/>
  <xsl:template match="CurrentMenuItem">
  ????
    <CurrentMenuItem>
      <xsl:apply-templates select="document('menu.xml')"/>
      <xsl:apply-templates/>
    </CurrentMenuItem>
    ????
  </xsl:template>
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>

Основной xml, xslt получает от asp примерно такого виде

<page AppPath="" Type="Standalone">
<content> 
    <CurrentMenuItem>0</CurrentMenuItem> 
........
</content> 
</page>

после преобразования получаю

<page AppPath="" Type="Standalone"><content> 
  ????
    <CurrentMenuItem>0</CurrentMenuItem> 
    ????
........
</content> 
</page>

Насколько понимаю если бы все правильно сработало должно было бы выйти

<page AppPath="" Type="Standalone"><content> 
  ????
    <CurrentMenuItem>
<menu>
  <item id="1">1111</item>
  <item id="2">2222</item>
  <item id="3">3333</item>
  <item id="4">4444</item>
</menu>
    0</CurrentMenuItem> 
    ????
........
</content> 
</page>
Powered by POEM™ Engine Copyright © 2002-2005