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

Исследование примера: как использовать XSLT для преобразования XML в XHTML.

Мы объясним детали этого примера в следующем разделе.

Правильная декларация стиля

Декларировать документ как корневой элемент XSL stylesheet можно с помощью <xsl:stylesheet> или <xsl:transform>.

Комментарий: <xsl:stylesheet> и <xsl:transform> полностью эквивалентны и могут быть использованы!

В соответствии с стандартом W3C XSLT, правильным способом declare XSL stylesheet является:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

Или:

<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

Чтобы получить доступ к элементам, атрибутам и свойствам XSLT,我们必须 в верхней части документа declare XSLT naming space.

xmlns:xsl="http://www.w3.org/1999/XSL/Transform" указывает на официальную命名空间 W3C XSLT. Если вы используете эту命名-space, вам необходимо включить атрибут version="1.0".

Сначала из исходного XML-документа

Теперь мы должны преобразовать этот документ XML ("cdcatalog.xml") в XHTML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
.
</catalog>

Просмотрите файл XML в Internet Explorer и Firefox:

Откройте файл XML (обычно через нажатие на ссылку) - документ XML будет отображаться в виде цветного кода с корневыми элементами и их подэлементами. Нажмите на плюс или минус слева от элемента, чтобы расширить или сжать структуру элемента. Чтобы просмотреть исходный файл XML (без плюсов и минусов), выберите "Просмотреть код страницы" в меню браузера.

Просмотрите файл XML в Netscape 6:

Откройте файл XML и затем щелкните правой кнопкой мыши в файле XML, выберите "Просмотреть код страницы". Документ XML будет отображаться в виде цветного кода с корневыми элементами и их подэлементами.

Просмотрите файл XML в Opera 7:

Откройте файл XML и затем щелкните правой кнопкой мыши в файле XML, выберите "Рамки"/"Просмотреть исходный код". Документ XML будет отображаться как纯 текст.

Просмотрите "cdcatalog.xml".

Создайте таблицу стилей XSL

Затем создайте таблицу стилей XSL с шаблоном преобразования ("cdcatalog.xsl"):

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>Моя коллекция компакт-дисков</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Title</th>
      <th align="left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

Просмотрите "cdcatalog.xsl"

Связать таблицу стилей XSL с документом XML

Добавить ссылку на таблицу стилей XSL в документ XML ("cdcatalog.xml"):

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
  <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
.
.
.
</catalog>

Если ваш браузер совместим с XSLT, он успешно преобразует ваш XML Преобразовать в XHTML.

Просмотр результатов.

Мы объясним детали в следующем разделе.