Почему при использовании скриптов, приведенных в курсе Основы XML лекция Лекция 8: Отображение XML-документов с использованием связывания данных не происходит связывания XLM документа с HTML? Отображаются пустые поля. Браузер IE11 |
Отображение XML-документов с использованием XSL-таблиц стилей
В этой лекции вы познакомитесь с последним из рассматриваемых в этом курсе методов отображения XML-документов в браузере Microsoft Internet Explorer 5 – расширяемым языком таблиц стилей XSL (Extensible Stylesheet Language). Подобно таблице каскадных стилей (CSS), рассмотренной в "Отображение XML-документов с использованием таблиц каскадных стилей" , XSL-таблица стилей связывается с XML-документом и сообщает браузеру, как отображать данные XML. Это позволяет вам открывать XML-документ непосредственно в браузере без посредничества HTML-страницы.
XSL-таблица стилей – более мощный и гибкий инструмент для отображения XML-документов, чем CSS-таблица. Используя XSL-таблицы стилей, вы можете не только задать формат для каждого элемента XML, как при CSS-таблицы, но и обеспечить средства контроля над выводимыми данными. XSL позволяет выбрать те данные XML, которые вы хотите отобразить, представить эти данные в любом порядке, свободно модифицировать или добавлять информацию. XSL предоставляет вам доступ ко всем компонентам XML (элементам, атрибутам, комментариям и инструкциям по обработке). Эта таблица позволяет вам легко сортировать и фильтровать данные XML, дает возможность включать в таблицу стиля сценарии и предоставляет набор полезных методов, которые вы можете использовать при обработке информации.
Базовая форма XSL-таблицы стилей, описываемая в этой лекции, избирательно преобразует XML-документ в HTML-страницу, воспринимаемую и отображаемую затем браузером. Получая доступ к богатому арсеналу HTML, вы к методам преобразования XSL добавляете новые возможности по форматированию и обработке данных.
Однако XSL-таблицы являются более сложными для понимания, чем CSS-таблицы. Работа с ними требует знания языка HTML. Кроме того, это новая технология, поэтому имеет меньшую степень поддержки – меньшую степень унификации среди современных браузеров.
Ссылка. Эта лекция знакомит с основами XSL. Вы можете узнать больше об этой мощной, развивающейся технологии XML, обратившись к официальным спецификациям XSL, которые можно найти на Web-страницах, предоставленных консорциумом World Wide Web Consortium (W3C): "Extensible Stylesheet Language (XSL) Version 1.0" по адресу http://www.w3.org/TR/WD-xsl и "XSL Transformations (XSLT) Version 1.0"по адресу http://www.w3.org/TR/WD-xslt. Чтобы подробнее узнать о поддержке XSL в Internet Explorer 5, обратитесь к следующим Web-страницам, предоставленным Microsoft Developer Network (MSDN): "XSL Developer's Guide" по адресу http://msdn.microsoft.com/xml/xslguide/default.asp и "XSL Reference" по адресу http://msdn.microsoft.com/xml/reference/xsl/start.asp.
Основы использования XSL-таблиц стилей
Существуют два основных шага для отображения XML-документа при использовании XSL-таблицы стилей.
- Создание файла XSL-таблицы стилей. XSL является приложением XML, т. е. XSL-таблица представляет собой корректно сформированный XML-документ, который отвечает правилам XSL. Подобно любому XML-документу, XSL-таблица стилей содержит простой текст, и вы можете создать ее с помощью вашего любимого текстового редактора. В последующих разделах рассказывается, как создавать различные типы XSL-таблиц стилей.
-
Связывание XSL-таблицы стилей с XML-документом. Вы можете связать XSL-таблицу стилей с XML-документом, включив в документ инструкцию по обработке xml-stylesheet, которая имеет следующую обобщенную форму записи:
<?xml-stylesheet type="text/xsl" href=XSLFilePath?>
Здесь XSLFilePath представляет собой заключенный в кавычки URL, указывающий местонахождение файла таблицы стилей. Вы можете использовать полный URL, например:
<?xml-stylesheet type="text/xsl" href="http:/www.my_domain.com/Inventory.xsl"?>
Чаще используют неполный URL, который задает местонахождение относительно месторасположения XML-документа, содержащего инструкцию по обработке xml-stylesheet, например:
<?xml-stylesheet type="text/xsl" href="Inventory.xsl"?>
(Относительный URL встречается чаще, поскольку вы обычно храните файл таблицы стилей в той же папке, где хранится XML-документ, либо в одной из вложенных в нее папок.)
Подсказка. Хотя вы и можете связать XSL-таблицу стилей с использованием полного URL, таблица стилей при этом должна размещаться на том же домене, что и XML-документ, с которым вы ее связываете. Например, если домен http://mspress.microsoft.com/ содержит XML-документ, то и XSL-таблица стилей должна размещаться на том же домене.
Обычно инструкция по обработке xml-stylesheet добавляется в пролог XML-документа вслед за объявлением XML, как вы увидите в примере XML-документа, рассматриваемого в следующем разделе (см. Листинг 10.2). Более подробная информация об инструкциях по обработке и описании мест в документе, куда они могут быть корректно помещены, содержится в разделе "Использование инструкций по обработке" в "Добавление комментариев, инструкций по обработке и разделов CDATA" .
Если вы связали XSL-таблицу стилей с XML-документом, вы можете открыть этот документ непосредственно в Internet Explorer 5, и браузер отобразит XML-документ с использованием инструкций по преобразованию, содержащихся в таблице стилей. В отличие от таблиц каскадных стилей, если вы связываете с XML-документом более одной XSL-таблицы стилей, браузер использует первую таблицу и игнорирует все остальные. Если вы свяжете с XML-документом и CSS-таблицу и XSL-таблицу стилей, браузер использует только XSL-таблицу стилей.
Примечание. Если вы не связали XML-документ ни с CSS-таблицей, ни с XSL-таблицей стилей, Internet Explorer 5 отобразит документ с помощью встроенной XSL-таблицы, которая используется по умолчанию. Эта таблица стилей отображает исходный XML-текст в виде дерева с возможностью свертывания/развертывания уровней (см. раздел "Отобразите XML-документ без таблицы стиля" в "Создание и отображение вашего первого XML-документа" .