Главная -> XML&... -> XSLT в примерах 
>> Страница 70 << | Назад | Вперед | Содержание | Указатель

Вы можете использовать элемент xsl:apply-imports для получения информации из импортированных шаблонов, чье поведение, однако, вы изменяете. В преобразование 2 импортируется преобразование 1, а его шаблоны аннулируются. Преобразование 3 импортирует преобразование 1 и изменяет его шаблоны. Инструкция xsl:apply-imports работает только для шаблонов импортированных с помощью xsl:import, а не включенных с помощью xsl:include (преобразование 4).

Преобразование 1

Исходный XML
<source>

<AAA/>
<BBB/>
<CCC/>

</source>

Результат
<DIV style="color:red">AAA</DIV>

<DIV style="color:red">BBB</DIV>

<DIV style="color:red">CCC</DIV>

Представление HTML
AAA
BBB
CCC
XSLT stylesheet (file: id2.xsl )
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="/*/*">
     <DIV style="color:red">
          <xsl:value-of select="name()"/>
     </DIV>
</xsl:template>


</xsl:stylesheet>



Преобразование 2

Исходный XML
<source>

<AAA/>
<BBB/>
<CCC/>

</source>

Результат
<EM>AAA</EM>

<EM>BBB</EM>

<EM>CCC</EM>

Представление HTML
AAA BBB CCC
XSLT stylesheet (file: id3.xsl )
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:import href="id2.xsl"/>
<xsl:template match="/*/*">
     <EM>
          <xsl:value-of select="name()"/>
     </EM>
</xsl:template>


</xsl:stylesheet>



Преобразование 3

Исходный XML
<source>

<AAA/>
<BBB/>
<CCC/>

</source>

Результат
<EM>
  <DIV style="color:red">AAA</DIV>
</EM>

<EM>
  <DIV style="color:red">BBB</DIV>
</EM>

<EM>
  <DIV style="color:red">CCC</DIV>
</EM>

Представление HTML
AAA
BBB
CCC
XSLT stylesheet (file: id4.xsl )
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:import href="id2.xsl"/>
<xsl:template match="/*/*">
     <EM>
          <xsl:apply-imports/>
     </EM>
</xsl:template>


</xsl:stylesheet>



Преобразование 4

Исходный XML
<source>

<AAA/>
<BBB/>
<CCC/>

</source>

Результат
<EM/>

<EM/>

<EM/>

Представление HTML
XSLT stylesheet (file: id5.xsl )
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:include href="id2.xsl"/>
<xsl:template match="/*/*">
     <EM>
          <xsl:apply-imports/>
     </EM>
</xsl:template>


</xsl:stylesheet>

Raleigh.ru Copyright © 2002