Алексей Валиков - Технология XSLT

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

Технология XSLT: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Технология XSLT»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Книга посвящена разработке приложений для преобразования XML-документов с использованием XSLT — расширяемого языка стилей для преобразований. Обсуждается применение языков XSLT и XPath в решении практических задач: выводу документов в формате HTML, использованию различных кодировок для интернационализации и, в частности, русификации приложений, вопросам эффективности существующих подходов для решения проблем преобразования. Для иллюстрации материала используется большое количество примеров.
Для начинающих и профессиональных программистов

Технология XSLT — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Технология XSLT», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Приблизительный внешний вид формы показан на рис. 9.3.

Рис 93 Внешний вид формы проекта Использование DOMDocument Объектная - фото 72

Рис. 9.3. Внешний вид формы проекта

Использование DOMDocument

Объектная модель XML-документа в импортированной библиотеке будет представлена интерфейсом DOMDocument. В главном модуле проекта мы объявим две переменные, которые будут соответствовать обрабатываемому документу ( xmlSource) и документу преобразования ( xmlStylesheet):

var

xmlSource: DOMDocument;

xmlStylesheet: DOMDocument;

Для того чтобы создать экземпляры объектов наших документов, мы воспользуемся классом СoDOMDocument, который был создан в модуле MSXML2_TLBпри импортировании. Метод Createэтого класса создаст объекты, к методам и свойствам которых мы будем обращаться посредством уже упомянутого интерфейса DOMDocument:

xmlSource := CoDOMDocument.Create;

xmlStylesheet := CoDOMDocument.Create;

Для того чтобы загрузить XML-файл, мы воспользуемся функцией loadинтерфейса DOMDocument:

xmlSource.load('source.xml');

При загрузке файла вполне вероятны ошибки. Например, XML-документ может не являться хорошо оформленным. Для того чтобы успешно справиться с такого рода исключительными ситуациями, мы будем использовать конструкцию try...exceptи отрабатывать исключение EoleException:

try

xmlStylesheet.load('stylesheet.xsl');

memoStylesheet.Text := xmlStylesheet.xml;

except

on e: EOleException do

memoStylesheet.Text := e.Message;

end;

Для выполнения самого преобразования нам будет нужно использовать функцию transformNode:

try

memoResult.Text := xmlSource.transformNode(xmlStylesheet);

except

on e: EOleException do

memoResult.Text := e.Message;

end;

Для удобства мы можем также добавить диалоги для загрузки файлов и многое другое, но эти усовершенствования мы здесь разбирать не будем. Ограничимся тем, что приведем главную часть исходного кода этого проекта.

Листинг 9.1. Использование XSLT-преобразования в Delphi

unit source;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, ComCtrls, MSXML2_TLB, comobj;

type

TMain = class(TForm)

{ Компоненты формы и обработчики событий }

private

public

end;

var

xmlSource: DOMDocument;

xmlStylesheet: DOMDocument;

Main: TMain;

implementation

{$R *.DFM}

procedure TMain.FormCreate(Sender: Tobject);

begin

xmlSource := CoDOMDocument.Create;

xmlStylesheet := CoDOMDocument.Create;

try

xmlSource.load('source.xml');

memoSource.Text := xmlSource.xml;

except

on e: EOleException do

memoSource.Text := e.Message;

end;

try

xmlStylesheet.load('stylesheet.xsl');

memoStylesheet.Text := xmlStylesheet.xml;

except

on e: EOleException do

memoStylesheet.Text := e.Message;

end;

end;

procedure TMain.pcMainChange(Sender: TObject);

begin

if pcMain.ActivePage = sheetResult then

try

memoResult.Text := xmlSource.transformNode(xmlStylesheet);

except

on e: EOleException do

memoResult.Text := e.Message;

end;

end;

{ Прочие процедуры и функции }

end.

Процесс использования нашего приложения приведен на следующих рисунках (рис. 9.4–9.6).

Рис 94 Входящий документ Рис 95 Преобразование Рис 96 Выходящий до - фото 73

Рис. 9.4. Входящий документ

Рис 95 Преобразование Рис 96 Выходящий документ Выполнение - фото 74

Рис. 9.5. Преобразование

Рис 96 Выходящий документ Выполнение XSLTпреобразований в CC В - фото 75

Рис. 9.6. Выходящий документ

Выполнение XSLT-преобразований в C/C++

В качестве примера использования XSLT в языках С и С++ мы приведем очень простую программу, которая выполняет над документом source.xmlпреобразование stylesheet.xslи выводит результат в файл document.out. На этот раз в качестве процессора мы будем использовать Xalan-C++, а в качестве среды разработки — Microsoft Visual С++.

Настройка путей

Для того чтобы использовать библиотеки Xalan в своем проекте, прежде всего, необходимо включить в исходный код файлы заголовков:

#include "util/PlatformUtils.hpp"

#include "XalanTransformer/XalanTransformer.hpp"

Файл PlatformUtils.hppотносится к библиотеке Xerces-C++, который используется в Xalan в качестве парсера XML-документов. Файл заголовка XalanTransformer.hppотносится к классу XalanTransformer, который мы и будем использовать для преобразования нашего документа.

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

Интервал:

Закладка:

Сделать

Похожие книги на «Технология XSLT»

Представляем Вашему вниманию похожие книги на «Технология XSLT» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Стивен Холзнер - XSLT
Стивен Холзнер
Алексей Сахарков - Технология террора
Алексей Сахарков
Отзывы о книге «Технология XSLT»

Обсуждение, отзывы о книге «Технология XSLT» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x