Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Как выполнить преобразование



Простейший способ выполнить XML-преобразование — это добавить указание на таблицу стилей в XML и отобразить его в браузере

Добавление в XML инструкции по обработке при помощи таблицы стилей

?

  <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="basicstylesheet.xsl" version="1.0"?> <recipes> <recipe> <name>Gush'gosh</name>

Эта инструкция по обработке говорит браузеру извлечь таблицу стилей, расположенную в basicstylesheet.xsl, и использовать ее для преобразования XML-данных и вывода результатов. Если вы откроете наш XML-документ в браузере Microsoft® Internet Explorer®, то увидите результат, похожий на рисунок 2.

Рисунок 2. Извлечение таблицы стилей и преобразование XML-данных

Однако это не совсем то, что мы хотели получить. Если вы выберете в браузере Вид — Просмотр HTML-кода, то увидите изначальный XML. Чтобы увидеть результат преобразования, необходимо произвести это преобразование и создать выходной файл. Это можно сделать через командную строку, используя Java-код со следующей командой (см. листинг 5):

Листинг 5. Преобразование документа через командную строку

?

  java org.apache.xalan.xslt.Process -IN recipes.xml -XSL basicstylesheet.xsl -out result.html

Если вы получите исключение ClassNotFoundException, возможно, вам нужно загрузить Apache Xalan и добавить включенные в него JAR-файлы в путь к классам.

Выполнив преобразование, показанное в листинге 5, вы увидите, что файл result.html содержит следующий код (см. листинг 6).

Листинг 6. Результаты

?

  <?xml version="1.0" encoding="UTF-8"?> <html xmlns="http://www.w3.org/TR/xhtml1/strict"> <head> <title>Recipe</title> </head> <body> <h2>Gush'gosh</h2> <h3>Ingredients:</h3> <p> 1poundhamburger 1poundelbow macaroni 2cupsbrown sugar 1bagchopped onions 1teaspoondried dill </p> <h3>Directions:</h3> <p> Brown the hamburger. Add onions and cook until transparent. Add brown sugar and dill. Cook and drain pasta. Combine meat and pasta. </p> </body> </html>

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





Дата публикования: 2015-03-29; Прочитано: 268 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...