XSLT
Библиотека программиста
Об авторе
Стивен Холзнер (Steven Holzner) — широко известный автор, пишущий на темы XML, в том числе и XSLT, с момента появления этих технологий. Его перу принадлежат 67 книг по программированию; всего их было продано более миллиона экземпляров. Эти книги переведены на 16 языков мира, среди них немало бестселлеров. Стивен ранее работал редактором журнала PC Magazine; он окончил Массачусетский технологический институт (MIT) и получил степень доктора философии (Ph.D.) в институте Корнелла (Cornell), работал на факультетах Массачусетского технологического института и института Корнелла, а в настоящее время ведет семинары на предприятиях по всей стране.
О технических редакторах
Огромный опыт технических редакторов был неоценим на протяжении всего периода работы над книгой. По мере написания книги ими велась высокопрофессиональная работа над техническим содержанием, организацией и компоновкой текста. Их отзывы были необходимым условием того, что книга будет соответствовать потребностям читателей в технической информации самого высокого качества.
Джейсон А. Басс (Jason A. Buss) — программист-аналитик, разработчик собственных программных решений для лидирующего производителя авиационного оборудования на Среднем Западе. Он женат, у него четверо детей. В свободное время любит играть с детьми, модернизировать домашний компьютер и работать на нем (сейчас он совершенствует свои знания во FreeBSD), читать, играть на гитаре и слушать живую музыку. Связаться с ним можно по адресу: [email protected].
Дарин Бишоп (Darin Bishop) работает консультантом в компании Levi, Ray and Shoup, Inc., расположенной на Среднем Западе. Сейчас он занят в роли архитектора продукта в крупном проекте, использующем технологии XML. В компетенцию этой должности входят управление проектированием, выбор и исследование технологий, а также технические аспекты работы над проектом. Ранее Дарин занимался разработкой web-приложений для агентства недвижимости, приложений для программ пенсионного обеспечения и другими проектами. Главная область его интересов — связывание отдельных систем при помощи HTTP и XML.
Благодарности
Книга подобного рода — плод работы многих людей, а не одного только автора. Работа сотрудников издательства New Riders была выше всяких похвал, и я хотел бы поблагодарить замечательного исполнительного редактора Стефани Уолл (Stephanie Wall), редакторов Лори Лайонс (Lori Lyons) и Марго Кэтс (Margo Catts) и, наконец, технических редакторов Джейсона Басса и Дарина Бишопа, проверивших весь материал. Спасибо всем за ваш нелегкий труд.
Введение
Добро пожаловать в XSLT, книгу, посвященную языку преобразований расширенной таблицы стилей (Extensible Stylesheet Language Transformations). Книга писалась так, чтобы быть настолько исчерпывающей (и доступной), насколько это возможно для единственной книги по XSLT. XSLT представляет собой средство преобразования документов XML в другие документы XML или в документы совершенно другого типа; сейчас эта тематика очень популярна. Я постарался написать наиболее полную книгу по XSLT, и я считаю, что мне это удалось.
Многие книги по XSLT описывают только преобразования XML-HTML, но здесь мы собираемся пойти гораздо дальше. Все большее значение приобретают преобразования XML-XML, и в скором времени с ростом числа приложений на различных диалектах XML они станут более важны, чем преобразования XML- HTML.
В этой книге мы рассмотрим преобразования на языке XSLT из XML в XML, в HTML, в XHTML, в RTF (Rich Text Format, документы форматированного текста), в простой текст, в сценарии JavaScript, в написанные на SQL базы данных и в XSL-FO (Extensible Stylesheet Language Formatting Object, документы форматированных объектов языка расширенной таблицы стилей).
Чтобы полностью раскрыть тему XSLT, в книге описываются все возможные элементы XSLT один за другим, а также их приложения. Кроме того, мы рассмотрим все функции XSLT и XPath, которые могут быть использованы в таблицах стилей XSLT.
И вам предстоит познакомиться с сотнями работающих примеров. Без сомнений, это лучший способ разобраться в том, как работает XSLT. Если мне не удастся объяснить что-либо в тексте, вы всегда сможете посмотреть соответствующий пример, поскольку буквально для каждой подтемы в книге приводится завершенный работающий код.
Все примеры приводятся для того, чтобы их запускать. Я использовал самые популярные процессоры XSLT, их все можно бесплатно загрузить из Интернета: Xalan, XT, Saxon, процессор XSLT фирмы Oracle и даже процессор, встроенный в Microsoft Internet Explorer. В книге по мере изложения будет указываться, где в Интернете можно найти все это программное обеспечение и как с ним работать.
Аналогично написанию кода XML, написание кода XSLT не обычная и не монотонная задача: этот процесс требует искусства, страстной увлеченности и оригинальности мышления, не говоря уже о том, что он часто вызывает разочарование и раздражение. Я постараюсь вести изложение в таком духе и приложу все усилия, чтобы передать в книге мощь и замечательные возможности XSLT.
Материал книги
Книга призвана дать вам столько материала, посвященного XSLT, сколько может содержать одна книга. Мы не только рассмотрим весь синтаксис XSLT от основ до всех специальных аспектов, но и подробно изучим различные современные способы использования XSLT.
Как я уже говорил, в книге рассмотрены сотни практических примеров, таких как осуществление преобразований XSLT на web-серверах, подключение к базам данных и использование браузеров для осуществления преобразований на лету.
Ниже перечислен ряд тем книги. Заметьте, что каждая тема включает в себя несколько подтем (слишком многочисленных, чтобы приводить их здесь):
• рекомендации по работе с XSLT 1.0;
• рабочий проект XSLT 1.1;
• требования XSLT 2.0;
• рекомендации по работе с ХРАТН 1.0;