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

Тут можно читать онлайн Стивен Холзнер - XSLT - бесплатно полную версию книги (целиком) без сокращений. Жанр: Интернет, издательство Питер, год 2002. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Стивен Холзнер - XSLT краткое содержание

XSLT - описание и краткое содержание, автор Стивен Холзнер, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

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

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

XSLT - читать онлайн бесплатно полную версию (весь текст целиком)

XSLT - читать книгу онлайн бесплатно, автор Стивен Холзнер
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Рис 61Преобразование XML в HTML при помощи JavaScript Метод вывода XML - фото 22

Рис. 6.1.Преобразование XML в HTML при помощи JavaScript

Метод вывода: XML

Формально при использовании метода вывода XML процессор XSLT создает хорошо сформированный внешний объект XML, который можно разобрать на общих условиях. Если корневой узел результирующего дерева имеет единственный дочерний узел-элемент и не имеет текстовых дочерних узлов. Тогда объект будет также хорошо сформированным документом XML.

При использовании метода вывода XML атрибут versionустанавливает версию XML результата. Заметьте, что если процессор XSLT не поддерживает эту версию XML, он будет использовать ту версию XML, которую поддерживает. По умолчанию установлено значение 1.0.

Атрибут encodingустанавливает кодировку для результирующего документа. Процессоры XSLT должны поддерживать, по крайней мере, значения «UTF-8» и «UTF-16». Если процессор XSLT работает с другими значениями и не поддерживает указанную кодировку, он может сгенерировать ошибку. Если он этого не сделает, процессор должен использовать вместо нее UTF-8 иди UTF-16. Процессор XSLT не должен использовать кодировку, которая не была принята консорциумом W3C (см. www.ww3.org/TR/REC-xml). Если никакой атрибут кодировки не указан, по умолчанию процессор XSLT должен выбрать «UTF-8» или «UTF-16».

ОБРАБОТКА НЕИЗВЕСТНЫХ СИМВОЛОВ

Если результирующий документ содержит символ, который не может быть представлен в кодировке, используемой процессором XSLT для вывода, символ допустимо вывести как ссылку на символ. Если это невозможно, процессор XSLT должен сгенерировать ошибку.

Как и в случае с методом вывода HTML, если атрибут indentустановлен в «yes», метод вывода XML может добавить или удалить символы-разделители в результирующее дерево для того, чтобы выровнять результат. Значение по умолчанию — no. Заметьте, что если символы-разделители отбрасываются, информационное множество результирующего XML-документа должно быть таким же, как если бы символы-разделители вообще не добавлялись и не удалялись для выравнивания документа.

ВЫРАВНИВАНИЕ ДОКУМЕНТОВ СО СМЕШАННЫМ СОДЕРЖИМЫМ

Для документов со смешанным содержимым лучше не устанавливать атрибут indent в «yes», поскольку это вносит путаницу в работу процессора XSLT.

При помощи атрибута cdata-section-elementsможно задать разделенный символами-разделителями список имен элементов, чье содержимое должно трактоваться как разделы CDATA. Например, если установить атрибут cdata-section-elementsв « DATA»:

то следующий элемент буквального результата:

&lt:DOCUMENT>

будет преобразован в:

]]>

Кроме того, метод вывода XML будет выводить в результирующий документ объявление XML, если только атрибут omit-xml-declarationне будет установлен в yes. Как правило, объявление XML, помещаемое в результирующий документ, обычно включает версию XML (что обязательно) и информацию о кодировке (хотя формально информация о кодировке в документах XML не обязательна). Если задан атрибут standalone, результирующий документ должен включать объявление отдельного документа с тем же значением, что и значение у атрибута standalone.

При использовании атрибута doctype-systemпроцессор создает объявление типа документа непосредственно перед первым элементом. В этом случае имя, следующее за , будет именем корневого элемента. Заметьте, что если вы также используете атрибут doctype-public, процессор XSLT выведет « PUBLIC», вслед за ним открытый идентификатор и затем системный идентификатор. Если вы не используете атрибут doctype-public, процессор выведет « SYSTEM» и вслед за ним системный идентификатор. Теоретически атрибут doctype-publicдолжен игнорироваться, если не задан также атрибут doctype-system, хотя большинство процессоров, кажется, не следуют этому правилу. Мы увидим, как работать с атрибутами doctype-publicи doctype-systemв этой главе при преобразовании XML в XHTML.

Наконец, для метода вывода XML значением по умолчанию для атрибута media-typeявляется « text/xml».

Вы уже встречали в этой книге многие XML-XML преобразования. Например, преобразование из главы 4 просто копировало один документ XML в другой. Обратите внимание на метод вывода, который установлен в XML:

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

Этот пример был приведен в начале главы, в нем planets.xmlреорганизован на основе плотности планет:

.983

Mercury

.0553

58.65

1516

.943

Venus

.815

116.75

3716

1

Earth

1

1

2107

Вот таблица стилей (листинг 6.3), создающая это преобразование.

Листинг 6.3. Реорганизация planets.xml на основе плотности

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

Следующий пример впервые был приведен в главе 5. В этом случае я только перечислил планеты из planets.xml, но в выходном документе я хотел видеть не просто фразу «The first three planets are: Mercury Venus Earth» (первые три планеты: Меркурий Венера Земля), a «The first three planets are: Mercury, Venus, and Earth.». Для этого я применил элементы :

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

The Planets

The first three planets are:

.

and

.

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

The Planets

The first three planets are: Mercury, Venus, and Earth.

Хотя многие книги рассматривают главным образом преобразования из XML в HTML, важно понять, что преобразования XML-XML завоевывают все большую популярность, поэтому на них я также останавливаю ваше внимание.

Метод вывода: текст

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

Значением по умолчанию для атрибута media-typeявляется « text/plain». Атрибут encodingустанавливает кодировку, используемую процессором XSLT для преобразования последовательностей символов в последовательности байтов. Заметьте, что если результирующий документ содержит символ, который не может быть представлен в выходной кодировке, процессор XSLT должен сгенерировать ошибку.

В листинге 6.4 planets.xmlпреобразуется в простой текст при помощи метода текстового вывода.

Листинг 6.4. Преобразование в простой текст

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

's mass is

Earth masses. Its radius is

miles. Its day is

Earth days long.

И вот результат — просто чистый текст, никакой разметки, никаких пропущенных символов, никаких инструкций обработки:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стивен Холзнер читать все книги автора по порядку

Стивен Холзнер - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




XSLT отзывы


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


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

Напишите свой комментарий
x