» » » » Стивен Холзнер - XSLT


Авторские права

Стивен Холзнер - XSLT

Здесь можно скачать бесплатно "Стивен Холзнер - XSLT" в формате fb2, epub, txt, doc, pdf. Жанр: Интернет, издательство Питер, год 2002. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Стивен Холзнер - XSLT
Рейтинг:
Название:
XSLT
Издательство:
Питер
Жанр:
Год:
2002
ISBN:
5-94723-271-5
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "XSLT"

Описание и краткое содержание "XSLT" читать бесплатно онлайн.



Эта книга посвящена XSLT — мощным и удобным системам преобразования документов. В ней не только рассматривается весь синтаксис XSLT, от основ до специальных аспектов, но и подробно излагаются современные способы использования XSLT.

Вы найдете сотни практических примеров, таких как осуществление преобразований XSLT на web-cepвepax, подключение к базам данных и использование браузеров для осуществления преобразований на лету.

Книга рассчитана на всех, кто хочет изучать XSLT и использовать его на практике






После объявления параметра при помощи <xsl:param> к его значению можно обращаться в шаблоне таким же способом, как и к значению переменной, — добавляя к имени префикс «$».

Когда вы вызываете именованный шаблон при помощи <xsl:call-template> или применяете шаблоны с использованием <xsl:apply-templates>, вы можете задать значение используемых в шаблоне параметров с помощью элемента <xsl:with-param>. Если самому параметру при объявлении было присвоено значение атрибутом select элемента <xsl:param>, это значение выступает в качестве значения параметра по умолчанию. Значение по умолчанию будет перекрыто, если вы зададите новое значение параметра при помощи элемента <xsl:with-param>. У элемента <xsl:with-param> два атрибута:

• name (обязательный). Имя переменной; устанавливается в QName;

• select (необязательный). Выражение XPath, задающее значение параметра. Если опустить этот атрибут, значение переменной будет определяться содержимым <xsl:with-param>.

Элемент может также содержать необязательное тело шаблона, создающее фрагмент результирующего дерева, но в XSLT 1.1 это уже не разрешено.

В следующем примере (листинг 9.3) я создаю именованный шаблон с именем «COLORS» (цвета), добавляющий цвет в данные планет в результирующем HTML-документе. Этот именованный шаблон использует единственный параметр, COLOR, который устанавливается в требуемый цвет. В примере я устанавливаю параметр COLOR в разные цвета для разных планет, используя <xsl:with-param> и вызывая шаблон «COLORS». Вот как это реализуется на практике.

Листинг 9.3. Применение параметров таблиц стилей

<xsl:stylesheet version="1.1"

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:template match="/PLANETS">

  <HTML>

  .

  .

  .

  </HTML>

 </xsl:template>


 <xsl:template match="PLANET">

  <xsl:if test="NAME='Mercury'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'RED'"/>

   </xsl:call-template>

  </xsl:if>

  <xsl:if test="NAME='Venus'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'GREEN'"/>

   </xsl:call-template>

  </xsl:if>

  <xsl:if test="NAME='Earth'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'BLUE'"/>

   </xsl:call-template>

  </xsl:if>

 </xsl:template>

 .

 .

 .

Данная таблица вызывает шаблон «COLORS» с разными значениями параметра COLOR. Я могу воспользоваться этими цветами при форматировании данных планет. Заметьте, что я объявил параметр COLOR при помощи <xsl:param> в самом начале шаблона «COLORS»:

<xsl:stylesheet version="1.1"

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:template match="/PLANETS">

  <HTML>

   .

   .

   .

  </HTML>

 </xsl:template>


 <xsl:template match="PLANET">

  <xsl:if test="NAME='Mercury'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'RED'"/>

   </xsl:call-template>

  </xsl:if>

  <xsl:if test="NAME='Venus'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'GREEN'"/>

   </xsl:call-template>

  </xsl:if>

  <xsl:if test="NAME='Earth'">

   <xsl:call-template name="COLORS">

    <xsl:with-param name="COLOR" select="'BLUE'"/>

   </xsl:call-template>

  </xsl:if>

 </xsl:template>


 <xsl:template name="COLORS"> <xsl:param name="COLOR"/>

  <TR>

   <TD>

    <FONT COLOR="{$COLOR}"><xsl:value-of select="NAME"/></FONT>

   </TD>

   <TD>

    <FONT COLOR="{$COLOR}"><xsl:apply-templates select="MASS"/></FONT>

   </TD>

   <TD>

    <FONT COLOR="{$COLOR}"><xsl:apply-templates select="RADIUS"/></FONT>

   </TD>

   <TD>

    <FONT COLOR="{$COLOR}"><xsl:apply-templates select="DAY"/></FONT>

   </TD>

  </TR>

 </xsl:template>


 <xsl:template match="MASS">

  <xsl:value-of select="."/>

  <xsl:text> </xsl:text>

  <xsl:value-of select="@UNITS"/>

 </xsl:template>

 .

 .

 .

 <xsl:template match="DAY">

  <xsl:value-of select="."/>

  <xsl:text> </xsl:text>

  <xsl:value-of select="@UNITS"/>

 </xsl:template>

</xsl:stylesheet>

И вот результат:

<HTML>

 <HEAD>

  <TITLE>

   The Colorful Planets Table

  </TITLE>

 </HEAD>

 <BODY>

  <H1>

   The Colorful Planets Table

  </H1>

  <TABLE BORDER="2">

   <TR>

    <TD>Name</TD>

    <TD>Mass</TD>

    <TD>Radius</TD>

    <TD>Day</TD>

   </TR>

   <TR>

    <TD><FONT COLOR="RED">Mercury</FONT></TD>

    <TD><FONT COLOR="RED">.0553 (Earth = 1)</FONT></TD>

    <TD><FONT COLOR="RED">1516 miles</FONT></TD>

    <TD><FONT COLOR="RED">58.65 days</FONT></TD>

   </TR>

   <TR>

    <TD><FONT COLOR="GREEN">Venus</FONT></TD>

    <TD><FONT COLOR="GREEN">.815 (Earth = 1)</FONT></TD>

    <TD><FONT COLOR="GREEN">3716 miles</FONT></TD>

    <TD><FONT COLOR="GREEN">116.75 days</FONT></TD>

   </TR>

   <TR>

    <TD><FONT COLOR="BLUE">Earth</FONT></TD>

    <TD><FONT COLOR="BLUE">1 (Earth = 1)</FONT></TD>

    <TD><FONT COLOR="BLUE">2107 miles</FONT></TD>

    <TD><FONT COLOR="BLUE">1 days</FONT></TD>

   </TR>

  </TABLE>

 </BODY>

</HTML>

Этот результирующий документ показан на рис. 9.2 (пусть даже в черно-белом исполнении).

Рис. 9.2. Вызов именованного шаблона с параметрами


В следующем примере я использую параметры для локализации используемого в шаблоне языка. Я создаю новый шаблон localize с параметром language. Если language установлен в «en», означая английский, результирующий документ будет озаглавлен «Planets»; если language установлен в «de», немецкий, результирующий документ будет озаглавлен «Planeten», а если в «fr», французский, результирующий документ будет озаглавлен «Planetes».

Здесь я вызываю шаблон localize, установив language в «fr»:

<?xml version="1.0"?>

<xsl:stylesheet version="1.1"

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:template match="/PLANETS">

  <HTML>

   <HEAD>

    <TITLE>

     <xsl:call-template name="localize">

      <xsl:with-param name="language" select="'fr'"/>

     </xsl:call-template>

    </TITLE>

   </HEAD>

   <BODY>

    <H1>

     <xsl:call-template name="localize">

      <xsl:with-param name="language" select="'fr'"/>

     </xsl:call-template>

     .

     .

     .

А вот как выглядит параметризованный шаблон «COLORS». Заметьте, что я объявляю параметр COLOR в шаблоне при помощи элемента <xsl:param> (и заметьте, что в HTML 4.01 символьный элемент для «е» в «Planetes», который я и использую — это &#232;):

<?xml version="1.0"?>

<xsl:stylesheet version="1.1"

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:template match="/PLANETS">

  <HTML>

   <HEAD>

    <TITLE>

     <xsl:call-template name="localize">

      <xsl:with-param name="language" select="'fr'"/>

     </xsl:call-template>

    </TITLE>

   </HEAD>

   <BODY>

    <H1>

     <xsl:call-template name="localize">

      <xsl:with-param name="language" select="'fr'"/>

     </xsl:call-template>

    </H1>

    <TABLE BORDER="2">

     <TR>

      <TD>Name</TD>

      <TD>Mass</TD>

      <TD>Radius</TD>

      <TD>Day</TD>


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "XSLT"

Книги похожие на "XSLT" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Стивен Холзнер

Стивен Холзнер - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Стивен Холзнер - XSLT"

Отзывы читателей о книге "XSLT", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.