Элемент <xsl:processing-instruction>: создание инструкций обработки
Элемент <xsl:processing-instruction>: создание инструкций обработки
При помощи элемента <xsl:processing-instruction> можно создавать новые инструкции обработки. У этого элемента один атрибут:
• name (обязательный). Задает имя инструкции обработки. Принимает значение шаблона значений атрибута, возвращающего NCName.
В следующем примере я удалил инструкцию <?xml-stylesheet?> из начала planets.xml:
<?xml version="1.0"?>
<PLANETS>
<PLANET>
<NAME>Mercury</NAME>
<MASS UNITS="(Earth = 1)">.0553</MASS>
<DAY UNITS="days">58.65</DAY>
<RADIUS UNITS="miles">1516</RADIUS>
<DENSITY UNITS="(Earth = 1)">.983</DENSITY>
<DISTANCE UNITS="million miles">43.4</DISTANCE><!--B перигелии-->
</PLANET>
<PLANET>
<NAME>Venus</NAME>
<MASS UNITS="(Earth = 1)">.815</MASS>
<DAY UNITS="days">116.75</DAY>
<RADIUS UNITS="miles">3716</RADIUS>
<DENSITY UNITS="(Earth = 1)">.943</DENSITY>
<DISTANCE UNITS="million miles">66.8</DISTANCE><!--B перигелии-->
</PLANET>
.
.
.
Для того чтобы снова добавить эту инструкцию обработки, можно применить элемент <xsl:processing-instruction> (листинг 6.9). Пункты type и href в инструкции обработки, например <?xml-stylesheettype="text/xml" href="planets.xsl"?>, в действительности не являются атрибутами, поэтому их значения нужно устанавливать не при помощи <xsl:attribute>, а используя простой текст.
Листинг 6.9. Применение <xsl:processing-instruction>
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:template match="/">
<xsl:processing-instruction name="xml-stylesheet">
<xsl:text>type="text/xml" href="planets.xsl"</xsl:text>
</xsl:processing-instruction>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Вот результат, где инструкция обработки <?xml-stylesheet?> снова на месте:
<?xml version="1.0" encoding="UTF-8?>
<?xml-stylesheet type="text/xml" href="planets.xsl"?>
<PLANETS>
<PLANET>
<NAME>Mercury</NAME>
<MASS UNITS="(Earth = 1)">.0553</MASS>
<DAY UNITS="days">58.65</DAY>
<RADIUS UNITS="miles">1516</RADIUS>
<DENSITY UNITS="(Earth = 1)">.983</DENSITY>
<DISTANCE UNITS="million miles">43.4</DISTANCE><!--B перигелии-->
</PLANET>
<PLANET>
<NAME>Venus</NAME>
<MASS UNITS="(Earth = 1)">.815</MASS>
<DAY UNITS="days">116.75</DAY>
<RADIUS UNITS="miles">3716</RADIUS>
<DENSITY UNITS="(Earth = 1)">.943</DENSITY>
<DISTANCE UNITS="million miles">66.8</DISTANCE><!--At perihelion-->
</PLANET>
.
.
.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Выбор инструкций обработки
Выбор инструкций обработки Для выбора инструкций обработки используйте образец processing-instruction():<xsl:template match="/processing-instruction()"> <I> Found a processing instruction. </I></xsl:template>Можно также указать, какую именно инструкцию обработки вы хотите выбрать, задав имя инструкции (исключая
Элемент <xsl:element>: создание новых элементов на этапе выполнения
Элемент <xsl:element>: создание новых элементов на этапе выполнения Новые элементы можно создавать при помощи элемента <xsl:element>, который очень удобен для задания имени нового элемента на этапе выполнения.У этого элемента три атрибута:• name (обязательный). Имя
Элемент <xsl:attribute>: создание новых атрибутов
Элемент <xsl:attribute>: создание новых атрибутов Аналогично тому, как вы можете создавать новые элементы при помощи <xsl:element> и устанавливать имя и содержимое элемента на этапе выполнения, при помощи элемента <xsl:attribute> это можно делать для атрибутов. У элемента два
Элемент <xsl:comment>: создание комментариев
Элемент <xsl:comment>: создание комментариев По ходу дела можно также создавать и комментарии при помощи элемента <xsl:comment>. Этот элемент не имеет атрибутов и содержит тело шаблона, задающего текст комментария.В листинге 6.8 я создаю комментарии для замены элементов
Элемент <xsl:document>: создание нескольких выходных документов
Элемент <xsl:document>: создание нескольких выходных документов В рабочем проекте XSLT 1.1 был представлен новым элемент, <xsl:document>, предназначенный для поддержки нескольких выходных документов, — и, скорее всего, этот элемент будет добавлен в XSLT 2.0. Он имеет следующие
Элемент <xsl:namespace>: создание объявлений пространств имен
Элемент <xsl:namespace>: создание объявлений пространств имен В XSLT 2.0 включен еще один новый элемент: <xsl:namespace>, позволяющий добавлять в результирующий документ объявления пространств имен. Однако на текущий момент больше об этом элементе ничего не известно, так что я не
Cross Processing (Обратная обработка)
Cross Processing (Обратная обработка) Изменяет изображение, смещая цветовую гамму в сторону более холодных тонов (рис. 4.9). Рис. 4.9. Исходное изображение (слева) и пример использования фильтра Cross Processing (Обратная обработка) (справа).ПРИМЕЧАНИЕ.Подробнее технология Cross Processing
Вставка инструкций SQL в VBA-код
Вставка инструкций SQL в VBA-код Фрагменты кола, приведенные раньше в настоящей главе, должны были проиллюстрировать, как добавлять инструкции SQL в код, написанный на VBA. Здесь очень важно не забывать о том, что VBA обрабатывает инструкции SQL как текстовые строки, а не как часть
Написание инструкций SELECT
Написание инструкций SELECT Процесс создания объектов Recordset модели ADO я подробно рассмотрел раньше в настоящей главе. В этом разделе основной акцент будет сделан именно на коде SQL, необходимом для определения того, какие записи относятся к набору. Вам необходимо выполнить
1.2.1. Порядок выполнения инструкций
1.2.1. Порядок выполнения инструкций По умолчанию инструкции программы выполняются одна за другой, последовательно. В программеint main(){readIn();sort();compact();print();return 0;}первой будет выполнена инструкция readIn(), за ней sort(), compact() и наконец print().Однако представим себе ситуацию, когда
Узлы инструкций по обработке
Узлы инструкций по обработке Каждой инструкции по обработке соответствует свой узел. В дерево не включаются узлы инструкций, которые были приведены в декларации типа документа (DTD). Кроме этого, поскольку декларация XML не является инструкцией по обработке, ей не будет
Создание узлов комментариев и инструкций по обработке
Создание узлов комментариев и инструкций по обработке Элемент xsl:comment Этот элемент задается конструкцией вида:<xsl:comment><!-- Содержимое: шаблон --></xsl:comment>Элемент xsl:comment создает в результирующем дереве узел комментария. Текстом комментария становится результат
Элемент xsl:processing-instruction
Элемент xsl:processing-instruction Синтаксис элемента представлен ниже:<xsl:processing-instruction name="{имя}"> <!-- Содержимое: шаблон --></xsl:processing-instruction>Элемент xsl:processing-instruction создает в результирующем дереве узел инструкции по обработке. Обязательный атрибут name определяет имя целевого
Dynamics Processing
Dynamics Processing Эффект динамической обработки. Может быть использован как компрессор, лимитер или Expander. Как компрессор и лимитер, этот эффект уменьшает динамический диапазон, создавая соответствующий уровень громкости. Как Expander, он увеличивает динамический диапазон за счет