1
128.4
Теперь, если вы используете IE версии 5.5 или более ранней, вы должны также преобразовать таблицу стилей planets.xsl
(но не для версии 6.0 и старше; в этом случает нужно только изменить атрибут type в инструкции обработки из « text/xml
» в « text/xsl
»). Мы рассмотрим, как это сделать, в следующей главе, а вот новая версия planets.xsl, которую следует использовать:
Листинг 1.4. Версия planets.xsl для Microsoft Internet Explorer
The Planets Table
The Planets Table
|
|
|
|
Теперь можно непосредственно открыть planets.xml в Internet Explorer, как видно на рис. 1.3.
Рис. 1.3.Осуществление XSLT-преобразования в Internet Explorer
Хотя таким образом при помощи Internet Explorer можно работать с XSLT, при этом необходимо так изменять таблицу стилей, чтобы она удовлетворяла требованиям Internet Explorer. Поскольку Internet Explorer в текущий момент фактически не поддерживает XSLT, открывая документы XML при навигации, я не буду использовать этот браузер для XSLT-преобразований в книге (кроме специально оговоренных случаев). Для осуществления преобразований я стану использовать процессоры XSLT, такие как Saxon и Xalan, а если результаты будут представляться в формате HTML, то мы будем просматривать их в Internet Explorer.
Интересно отметить, что существует способ провести настоящие XSLT-преобразования в Internet Explorer, не делая никаких специальных изменений в документах XML или XSL, даже не загружая и не устанавливая последний разборщик MSXML (как обсуждается в главе 2) — однако при этом нужно не осуществлять навигацию XML-документа, а обращаться к встроенному в Internet Explorer процессору XSLT, MSXML3, напрямую при помощи JavaScript.
Работа с XSLT и JavaScript в Internet Explorer
Процессор XSLT в Internet Explorer 5.5 является частью разборщика XML MSXML3, и если вы работаете напрямую с MSXML3 при помощи JavaScript, нет необходимости изменять исходные файлы planets.xml
и planets.xsl
(листинги 1.1 и 1.2), как мы это сделали в предыдущем разделе. Мы посмотрим, как это работает в главе 10, а здесь приведена web-страница xslt.html
, которая при помощи JavaScript и MSXML3 осуществляет преобразование planets.xml
с использованием planets.xsl
и отображает результаты (заметьте, что вы можете модифицировать этот документ для использования ваших собственных документов XML и XSLT, не прибегая к написанию кода на JavaScript: достаточно заменить имена planets.xml
и planets.xsl
на названия ваших документов XML и XSL) (листинг 1.5).
Листинг 1.5. Преобразование в Internet Explorer при помощи JavaScript
В результате обработки этой web-страницы будет получен тот же результат, что и на рис. 1.3: она напрямую загружает файлы planets.xml
и planets.xsl
и применяет к ним разборщик MSXML3. Это в точности те же файлы planets.xml
и planets.xsl
, с которыми мы работали на протяжении этой главы, — в них нет изменений, необходимых при рассмотрении предыдущей темы, в которой мы непосредственно просматривали planets.xml
в Internet Explorer. Дополнительная информация приведена в главе 10.
ИСПОЛЬЗОВАНИЕ VBSCRIPT
Если вам больше нравится VBScript, попробуйте использовать этот язык сценариев Internet Explorer: можно достичь таких же результатов.
XSLT-преобразования на web-серверах
Можно осуществлять XSLT-преобразования на web-сервере — так чтобы XML-документ был преобразован до того, как web-сервер отправит его браузеру. Здесь самое распространенное преобразование — это преобразование документа XML в HTML, но преобразования XML-XML на сервере также становятся все более и более распространенными.
В отличие от остальных XSLT-преобразований, рассмотренных до сих пор в этой главе, при проведении XSLT-преобразований на web-сервере обычно необходимо прибегнуть к программированию. Существует три распространенных способа выполнять XSLT-преобразования на web-серверах: используя сервлеты Java, Java Server Pages (JSP) и Active Server Pages (ASP). В главе 10 мы подробно исследуем все эти три способа. Некоторые процессоры XSLT можно настроить для использования на web-серверах — вот начальный список:
• AXSL, www.javalobby.org/axsl.html. AXSL — серверный инструмент, преобразующий XML в HTML при помощи XSLT;
• Microsoft XML Parser, http://msdn.microsoft.com/downloads/webtechnology/xml/msxml.asp. MSXML3 обеспечивает безопасный доступ к серверу по протоколу HTTP для работы с ASP;
• mod_xslt, http://modxslt.userworld.com. Простой модуль web-сервера Apache, использующий XSLT для получения содержимого XML. Для обработки XSLT используется процессор Sablotron;
Читать дальше