Выбор методов вывода
Выбор методов вывода
Еще один важный аспект создания таблиц стилей — выбор метода вывода: XML, HTML, текст (то есть любой текстовый документ, не являющийся документом XML или HTML) и т.д. Другими словами, метод вывода (output method) определяет тип создаваемого документа. По умолчанию методом вывода является XML, хотя большинство процессоров при встрече элемента <HTML> создают документы HTML. (Некоторые процессоры действуют подобным образом, если расширение создаваемого файла документа .html.)
Этот материал подробно изложен в главе 6, но сейчас мы также кратко его рассмотрим. Если только вы полностью не уверены, что правила вывода вашего процессора XSLT по умолчанию делают именно то, что нужно, зачастую можно посоветовать явно установить тип вывода в требуемый вам вид документа при помощи элемента <xsl:output>. Выходной тип может задать, например, будет ли процессор XSLT записывать инструкцию обработки XML, <?xml:version="1.0"?>, в начало документа, а также указать тип MIME (такой, как «text/xml» или «text/html») документов, отправляемых процессором XSLT с web-сервера браузеру. Кроме того, если вы установите тип вывода в HTML, большинство процессоров XSLT распознают, что не всем элементам в HTML требуются закрывающие и открывающие теги, и т.д.
Преобразованию из XML в другие типы документов посвящена глава 6, но здесь мы также кратко рассмотрим элемент <xsl:output>, поскольку это важно для общего понимания работы таблиц стилей. В следующем списке перечислены атрибуты <xsl:output>:
• cdata-section-elements (необязательный). Задает названия тех элементов, чье содержимое вы хотите вывести в виде разделов CDATA. Принимает значение списка QName, разделенных символами-разделителями;
• doctype-public (необязательный). Определяет открытый идентификатор, который будет использоваться в объявлении <!DOCTYPE> вывода. Устанавливается в строковое значение;
• doctype-system (необязательный). Определяет системный идентификатор, который будет использоваться в объявлении <!DOCTYPE> вывода;
• encoding (необязательный). Определяет кодировку символов. Устанавливается в строковое значение;
• indent (необязательный). Определяет, будет ли вывод выровнен с отображением структуры вложенности. Устанавливается в «yes» или «no»;
• media-type (необязательный). Определяет тип MIME вывода. Устанавливается в строковое значение;
• method (необязательный). Определяет формат вывода. Устанавливается в «xml», «html», «text» или допустимое имя типа QName;
• omit-xml-declaration (необязательный). Определяет, будет ли включено в вывод объявление XML. Устанавливается в «yes» или «по»;
• standalone (необязательный). Определяет, будет ли включено в вывод отдельное объявление, и если да — устанавливает его значение. Устанавливается в «yes» или «по»;
• version (необязательный). Задает версию вывода. Устанавливается в допустимую лексему типа NMToken.
Чаще всего используется атрибут method элемента, потому что с его помощью устанавливается требуемый тип дерева вывода. Самые распространенные значения — «html», «xml» и «text».
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Обзор методов асинхронного ввода/вывода Windows
Обзор методов асинхронного ввода/вывода Windows В Windows выполнение асинхронного ввода/вывода обеспечивается в соответствии с тремя методиками.• Многопоточный ввод/вывод (Multihreaded I/O). Каждый из потоков внутри процесса или набора процессов выполняет обычный синхронный
Выбор планировщика ввода-вывода
Выбор планировщика ввода-вывода В ядрах серии 2.6 есть четыре планировщика ввода-вывода. Каждый из этих планировщиков может быть активизирован. По умолчанию все блочные устройства используют прогнозирующий планировщик ввода-вывода. Планировщик можно изменить, указав
Выбор методов лидгена
Выбор методов лидгена Мы поговорили о пассивных методах лидгена и методах лидгена в целом. Итак, активные методы – это в основном реклама плюс активный выход в социальные сети. Добавим в эту категорию также и экспертные комментарии в сообществах (см выше).Если у вас пока
Создание методов
Создание методов Методы представляют собой обычные процедуры типов Sub и Function, которым выпало разместиться в модуле класса. Конечно, в большинстве случаев метод должен делать нечто, напрямую связанное с самим объектом, преобразуя данные, хранимые объектом. Но, при желании,
7.2. Классификация IPC-методов в Unix
7.2. Классификация IPC-методов в Unix Как и в однопроцессных структурах программ, простейшая организация является наилучшей. В оставшейся части данной главы представлены IPC-методики приблизительно в порядке возрастания сложности их программирования. Прежде чем использовать
7.2. Классификация IPC-методов в Unix
7.2. Классификация IPC-методов в Unix Как и в однопроцессных структурах программ, простейшая организация является наилучшей. В оставшейся части данной главы представлены IPC-методики приблизительно в порядке возрастания сложности их программирования. Прежде чем использовать
Перегрузка методов
Перегрузка методов Подобно другим объектно-ориентированным языкам, язык C# позволяет типу перегружать его методы. Говоря простыми словами, когда класс имеет несколько членов с одинаковыми именами, отличающихся только числом (или типом) параметров, соответствующий член
Создание обобщенных методов
Создание обобщенных методов Чтобы научиться интегрировать обобщения в проекты, мы начнем с простого примера обычной подпрограммы свопинга. Целью этого примера является построение метода обмена, который сможет работать c любыми типами данных (характеризуемыми
Отображение методов
Отображение методов Мы модифицируем класс Program, чтобы определить ряд статических методов, каждый из которых будет иметь один параметр System.Type и возвращать void. Начнем с метода ListMethods(), который (как вы можете догадаться сами) печатает имена всех методов, определенных
Вызов методов с параметрами
Вызов методов с параметрами Чтобы показать пример динамического вызова метода, имеющего параметры, предположим, что тип MiniVan определяет метод, который называется TellChildToBeQuiet().// Усмирение вопящих…public void TellChildToBeQuiet(string kidName, int shameIntensity) { for (int i = 0; i ‹ shameIntensity;
Асинхронный вызов методов
Асинхронный вызов методов Чтобы дать указание делегату BinaryOp вызвать метод Add() асинхронно, измените предыдущий метод Main() так, как показано ниже.static void Main(string[] args) { Console.WriteLine("***** асинхронный вызов делегата *****"); // Вывод ID выполняемого потока. Console.WriteLine("Вызван Main() в потоке
7.16. Активизация фоновых методов
7.16. Активизация фоновых методов Постановка задачи Необходимо найти простой способ создания потоков так, чтобы с потоками не приходилось работать
Необходимость автоматических методов
Необходимость автоматических методов Хорошая ОО-среда должна предлагать механизм автоматического управления памятью, который обнаруживал бы и утилизировал недостижимые объекты, позволяя разработчикам приложений концентрироваться на своей работе - разработке
Применение методов обнаружения
Применение методов обнаружения Но что, если вы по каким-либо причинам не можете использовать шифрование в вашей сети? Что делать в такой ситуации? В данном случае вы должны полагаться на обнаружение любой сетевой интерфейсной платы (NIC), которая может функционировать в