Глава 6 Преобразование в XML, HTML, XHTML, RTF
Глава 6
Преобразование в XML, HTML, XHTML, RTF
Предположим, web-узел вашей компании использует основанное на XML программное обеспечение фирмы Commerce One, в котором для безопасной коммуникации через Интернет применяется Java Message Service (JMS). Ваша деятельность была настолько успешной, что вы только что поглотили своего конкурента. К сожалению, для своего узла в Интернете ваш бывший конкурент использует другой основанный на XML продукт, RosettaNet. Как вам теперь преобразовать заказ на покупку xCBL Commerce One, написанный на XML, в заказ на покупку RosettaNet, также написанный на XML, но совершенно на другом диалекте?
Разумеется, применить XSLT. Такого рода XML-XML преобразования становятся все более и более распространенными. Все больше компаний применяют JMS для безопасных коммуникаций через Интернет, и поскольку JMS выполняется в Java, будет разумным связать JMS с основанными на Java процессорами XSLT, такими, как Xalan или Saxon.
В этой книге мы уже рассматривали преобразование XML в HTML, XML и простой текст, но в текущей главе сделаем это более подробно. Мы также рассмотрим здесь новый тип преобразования — из XML в JavaScript. В главе 10 мы познакомимся с преобразованиями из XML в базу данных на основе SQL, а в главе 11 — с преобразованиями из XML в XSL-FO.
Основная задача XSLT состоит не просто в замене одного элемента на другой, но в полной реорганизации содержимого XML-документа. Например, вам может потребоваться реорганизовать planets.xml в терминах плотности планет при помощи XSLT для создания нового XML-документа:
<?xml version="1.0" encoding="UTF-8"?>
<DATA>
<DENSITY>
<VALUE>.983</VALUE>
<NAME>Mercury</NAME>
<MASS>.0553</MASS>
<DAY>58.65</DAY>
<RADIUS>1516</RADIUS>
</DENSITY>
<DENSITY>
<VALUE>.943</VALUE>
<NAME>Venus</NAME>
<MASS>.815</MASS>
<DAY>116.75</DAY>
<RADIUS>3716</RADIUS>
</DENSITY>
<DENSITY>
<VALUE>1</VALUE>
<NAME>Earth</NAME>
<MASS>1</MASS>
<DAY>1</DAY>
<RADIUS>2107</RADIUS>
</DENSITY>
</DATA>
Мы рассмотрим преобразование, которое полностью меняет содержимое planets.xml, оставляя только небольшой код HTML и код JavaScript для отображения нескольких кнопок в браузере.
До сих пор мы создавали новые элементы только при помощи элементов буквального результата, то есть рассматривая новые элементы как текст и встраивая их в таблицу стилей. Но, как мы увидим в этой главе, не всегда возможно знать имена создаваемых новых элементов. Можно состыковать вместе создаваемые элементы по ходу дела, рассматривая их как сырой текст, но это явная недоработка, поскольку разметка трактуется как текст. В этой главе мы начнем применять элементы XSLT <xsl:element>, <xsl:attribute>, <xsl:processing-instruction> и <xsl:comment> для создания новых элементов, атрибутов, инструкций обработки и комментариев на этапе выполнения. Хорошее знание этих элементов необходимо при реорганизации содержимого XML.
Мы также рассмотрим использование режимов XSLT для осуществления нескольких преобразований с документом и сориентируемся, как применять только один из нескольких подходящих шаблонов.
В большей части этой главы исследуются возможности элемента <xsl:output>, с краткого обзора которого я и начну.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
XHTML 1: HTML по правилам XML
XHTML 1: HTML по правилам XML Следующая после HTML 4.01 версия языка называлась XHTML 1.0. «X» означало «экстремальный», и каждый веб-разработчик, когда начинал произносить название языка, был строго обязан скрещивать руки в форме буквы «Х».Ладно, на самом деле нет. «X» значило eXtensible,
XHTML 2: терпению пришел конец
XHTML 2: терпению пришел конец Если бы персонаж Дастина Хоффмана в фильме «Выпускник» был веб-разработчиком, W3C сказал бы ему одно слово, ровно одно: XML.С точки зрения W3C разработка HTML закончилась на версии 4. Они начали работать над XHTML 2, который был спроектирован так, чтобы
XHTML умер: да здравствует синтаксис XHTML
XHTML умер: да здравствует синтаксис XHTML Туман неразберихи начал рассеиваться в 2009 году. W3C объявил, что договор на XHTML 2 не будет продлеваться. Формат был мертвым уже несколько лет, и это объявление стало только официальным свидетельством о смерти.Как ни странно, смерть XHTML 2
Глава 1 Правила построения HTML-страниц
Глава 1 Правила построения HTML-страниц 1.1. Общие понятия HTML1.2. Структура HTML-документаДля создания веб-страниц часто используется язык гипертекстовой разметки HTML. Конечно, каждый сайт индивидуален, но существуют общие правила построения HTML-страниц. Им обязательно нужно
Глава 9 Оформление HTML-документа средствами CSS
Глава 9 Оформление HTML-документа средствами CSS 9.1. Фон9.2. Генерируемое содержимое9.3. Автоматическая нумерация и списки9.4. Таблицы9.5. Интерфейс пользователя9.6. Поля и отступы9.7. Границы9.8. Работа с блокамиВ этой главе мы рассмотрим все возможности CSS по оформлению документа.
Глава 10 Введение в динамический HTML
Глава 10 Введение в динамический HTML 10.1. Браузер и HTML-документ10.2. Родительские и дочерние объекты10.3. Объекты браузера10.4. Объектная модель документа (DOM)Язык HTML позволяет создавать только статические веб-страницы, не обеспечивающие интерактивное взаимодействие с
Глава 13 Язык XHTML
Глава 13 Язык XHTML 13.1. Структура XHTML-документов13.2. Отличие XHTML от HTML13.3. Проблемы использования XHTMLИтак, в предыдущих главах книги вы изучили возможности HTML 4.01 и теперь готовы разрабатывать веб-страницы, основанные на этом языке гипертекстовой разметки. Язык HTML версии 4.01 в
13.1. Структура XHTML-документов
13.1. Структура XHTML-документов Чтобы XHTML-документ полностью отвечал требованиям строгих правил XHTML DTD, ему нужно указать, какой набор XML DTD был использован при его создании, версию применяемого языка XML, а также пространство имен документа. Вся эта информация помещается в
13.2. Отличие XHTML от HTML
13.2. Отличие XHTML от HTML Основным отличием документа XHTML от HTML 4.01 является жесткое требование к корректности документа с точки зрения стандартов языка XML. На протяжении истории развития языка HTML сложился подход, при котором допускались многочисленные вольности и отступления
13.3. Проблемы использования XHTML
13.3. Проблемы использования XHTML Прочитав эту главу, вы, вероятно, поняли, что перед разработчиками веб-страниц встала серьезная проблема: переход на новый язык XHTML значительно меняет сложившиеся подходы к их разработке.Во-первых, уже нельзя позволить себе многие вольности
Глава 2. Основы веб-программирования с помощью языка HTML
Глава 2. Основы веб-программирования с помощью языка HTML Аббревиатура HTML знакома даже людям, которые по роду занятий далеки от веб-разработки. Она получила известность хотя бы потому, что адреса многих веб-страниц в Интернете заканчиваются расширением
Преобразования из XML в XHTML
Преобразования из XML в XHTML Хотя во многих книгах рассматриваются исключительно преобразования из XML в HTML, правда состоит в том, что консорциум W3C этому не очень-то рад. Консорциум пытался сместить акцент с HTML (который они первоначально стандартизировали) на свою новую
Вывод в формате XHTML
Вывод в формате XHTML W3C представил XHTML как последователя HTML, но ни в XSLT 1.0, ни в рабочем проекте XSLT 1.1 нет никакой специальной поддержки для преобразований из XML в XHTML. Предполагается, что надлежащая поддержка будет включена в XSLT 2.0. Тем не менее, при помощи процессоров XSLT все
HTML/XHTML, CSS, XML
HTML/XHTML, CSS, XML Аббревиатуры HTML/XHTML, CSS и XML – это Интернет технологии применяемые Joomla! Данные технологии стандартизированы консорциумом W3C (World Wide Web
HTML/XHTML
HTML/XHTML WWW (World Wide Web или Всемирная паутина) основана на HTML. HTML – это не язык программирования. HTML является языком описания и форматирования текста. Текст при этом состоит из различных структур: заголовков, списков, частей, выделенных жирным или наклонным шрифтом, таблиц и т.д.