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

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

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

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

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

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

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

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

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

Интервал:

Закладка:

Сделать



The Planets Table

Name Mass Radius Day

.

.

.

И вот результат — как видите, образцу удовлетворяет только Земля:

The Planets Table



The Planets Table

Name Mass Radius Day
Earth 1 (Earth = 1) 2107 miles 1 days

Но в данном случае существует больше вариантов. Например, ключу могут соответствовать несколько узлов, а это означает, что использующий ключ образец вернет набор узлов. Пусть, например, все планеты будут иметь одно и то же значение атрибута COLOR, « UNKNOWN» (неизвестен):

Mercury

.0553

58.65

1516

.983

43.4

Venus

.815

116.75

3716

.943

66.8

Earth

1

1

2107

1

128.4

Если создать теперь ключ COLORследующим образом: и осуществить поиск по этому ключу по образцу « key('COLOR', 'BLUE')», то будут выбраны все три планеты:

The Planets Table



The Planets Table

Name Mass Radius Day
Mercury .0553 (Earth = 1) 1516 miles 58.65 days
Venus .815 (Earth = 1) 3716 miles 116.75 days
Earth 1 (Earth = 1) 2107 miles 1 days

Кроме случая, когда ключ выбирает несколько узлов, узел также может предоставить несколько значений для одного ключа. Предположим, вы установили ключ для работы с элементом внутри элемента . Но что, если каждый элемент содержит более одного элемента , как в этом примере:

Mercury

Sister Planet

.0553

58.65

1516

.983

43.4

Venus

Sister Planet

.815

116.75

3716

.943

66.8

Earth

1

1

2107

1

128.4

В этом случае каждый элемент проверяется на совпадение с ключом. Предположим, например, что я хочу выбрать элементы с текстом «Sister Planet». Вот таблица стилей:

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

The Planets Table



The Planets Table

Name Mass Radius Day

.

.

.

И вот результирующий документ:

The Planets Table



The Planets Table

Name Mass Radius Day
Mercury .0553 (Earth = 1) 1516 miles 58.65 days
Venus .815 (Earth = 1) 3716 miles 116.75 days

Элемент : создание нескольких результирующих документов

Весьма часто во время преобразования требуется создать несколько результирующих документов. Например, вам может понадобиться создать отчет о прохождении преобразования или разделить входной документ на несколько результирующих документов (например, разбить рассказ на главы). Или же вам может быть нужно создать набор результирующих документов, которые будут использоваться (как при создании кадрового (frameset) документа HTML) совместно с двумя документами, отображаемыми во фреймах.

Создание нескольких результирующих документов настолько распространенная задача, что практически все процессоры XSLT позволяют вам это сделать, даже в XSLT 1.0, где отсутствуют необходимые для этого средства. Процессоры XSLT добавляют для этого новые элементы расширения. Например, Xalan предоставляет элемент , позволяющий написать новый результирующий документ. Для работы с этим элементом нужно создать новый префикс пространства имен — здесь я использую «xalan» — которое Xalan использует для элемента, «com.lotus.xsl.extensions.Redirect», и указать, что этот новый префикс является префиксом элемента расширения:

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

xmlns:xalan="com.lotus.xsl.extensions.Redirect"

extension-element-prefixes="xalan">

.

.

.

Теперь при помощи атрибута fileэлемента можно записать новый файл:

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

xmlns:xalan="com.lotus.xsl.extensions.Redirect"

extension-element-prefixes="xalan">

.

.

.

Here's some text.

В процессоре Saxon применяйте элемент . Для этого элемента я использую префикс «saxon», который соответствует URI «http://icl.com/saxon»:

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

xmlns:saxon="http://icl.com/saxon"

extension-element-prefixes="saxon">

.

.

.

Here's some text.

To же можно сделать и в XT; в этом случае используйте пространство имен и атрибут hrefдля задания имени нового файла:

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

xmlns:xt="http://www.jclark.com/xt"

extension-element-prefixes="xt">

.

.

.

Here's some text.

Все это создало весьма запутанную ситуацию, поскольку каждый разрабатывал свои собственные решения. По этой причине в XSLT 1.1 для поддержки нескольких результирующих документов был представлен новый элемент, , со следующими атрибутами:

href(обязательный). Показывает, где будет помещен новый документ. Устанавливается в абсолютный или относительный URI, без идентификатора фрагмента;

method(необязательный). Определяет метод вывода, используемый для создания результирующего документа. Устанавливается в «xml», «html», «text» или QName, не являющееся NCName;

version(необязательный). Определяет версию выходного документа. Устанавливается в NMTOKEN;

encoding(необязательный). Устанавливает кодировку выходного документа. Устанавливается в строку;

omit-xml-declaration(необязательный). Устанавливается в «yes» или «no», чтобы опустить объявление XML или не отпускать;

cdata-section-elements(необязательный). Задает имена тех элементов, чье содержимое нужно вывести как разделы CDATA. Устанавливается в список QName, разделенных символами-разделителями;

doctype-public(необязательный). Задает открытый идентификатор, который будет использован в объявлениивывода. Устанавливается в строковое значение;

doctype-system(необязательный). Задает системный идентификатор, который будет использован в объявлениивывода. Устанавливается в строковое значение;

indent(необязательный). Определяет, будет ли выходной документ выровнен для отображения структуры вложенности. Устанавливается в «yes» или «no»;

media-type(необязательный). Устанавливает тип MIME вывода. Устанавливается в строковое значение;

standalone(необязательный). Определяет, будет ли отдельное объявление включено в выходные данные, и если да, устанавливает его значение. Устанавливается в «yes» или «no».

Этот элемент содержит тело шаблона.

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

Интервал:

Закладка:

Сделать


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

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




XSLT отзывы


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


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

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