| « Поставить закладку » « Сделать стартовой » | |||
|
|||
| Статьи:: Интернет технологии :: XML :: Применение XML+XSLT при создании сайта
Применение XML+XSLT при создании сайта
Как известно, существует множество приемов создания сайта (перечислять не
буду, наверняка большинство из них вам известны). Спорить от достоинствах
и/или недостатках того или иного метода - неблагодарное занятие, поэтому
право выбора всегда остается за конкретным разработчиком, учитывающим кроме
личных предпочтений следующие факторы:
Рассматриваемый в данной статье метод с использованием XML и XSLT в той или иной степени соответствует этим требованиям, к тому же в настоящее время является наиболее динамично-развивающимся. Используя XML+XSLT, можно создать сайт/портал двумя путями (о других я пока не в курсе :). Первый способ заключается в посылке пользовательскому браузеру xml-файла, содержащего контент, и xslt-файла, содержащего правила отображения контента в окне браузера. Полученный xml-файл браузер трансформирует согласно правилам из xslt-файла. Минусы очевидны: пересылается избыточная информация и не все браузеры способны производить это самое преобразование. Втрой способ заключается в преобразовании xml-файла с помощью xslt-файла на стороне веб-сервера с помощью какого-либо программного скрипта и посылке клиентскому браузеру обычного html-файла. Как раз второй метод и будет рассматриваться в данной статье. Основной принцип заключается в следующем: так называемый контент сайта (статьи, ссылки, структура и т.п.) хранятся в xml-файлах. Известно, что данными удобно управлять, когда данные представляют собой не одну большую кучу, а имеют четкую структуру, т.е. каждому элементу данных сопоставляется тип данных и его место в общей массе. XML как раз на подобные задачи и ориентирован. Оформление сайта (цвета, относительное расположение элементов) храняться в xsl файлах (шаблонах). Функция преобразования оформялет отображение контента согласно правилам шаблона, выдавая готовый html-код. Разберем следующий пример. У нас есть некий файл, описывающий два абзаца статьи и их нам надо вывести в основное поле странички. Сначала посмотрим на xml файл, который бы мог описывать нашу статью:
Стилевая таблица (шаблон), на основе которой будет происходить преобразование основной части странички можно представить в следующем виде: <?xml version="1.0"?> В изучении использования XSLT-преобразований вам поможет литература. Итак, что мы имеем? Мы имеем описание контент статьи и правила отображения статьи в основной части окна. Теперь это все нам надо как-то оформить в полноценную страничку. Для этого используется обычный шаблон в виде описания таблицы на html-языке, центральная ячейка которой заполняется результатом преобразования.
В результате вы должны получить табличку, в верхней строке которой имеется какой-то логотип, а в центральной части странички будет два абзаца, причем второй будет состоять из списка неких элементов. В развитие данного метода, в целях упрощения администрирования сайтом, вы можете вынести структуру сайта в отдельный файл, где у вас будет описано содержание сайта и взаимосвязь между отдельными страничками. Файл со структурой можно использовать для формирования меню, навигации, карты сайта и т.п. Разбив основную html-таблицу на большее количество ячеек, вы можете вставить вызов функции преобразования с соответствующими xml и xsl файлами. Примером может служить этот сайт. Примечание: В данном примере использовался язык PHP с библиотекой поддержки XML, в миру называемой Sablotron, но вы можете использовать любой другой язык описания веб-страниц с соответствующим расширением, позволяющим работать с XML файлами. Либо использовать язык РНР, но уже с библиотекой поддерживающей DOM-модель XML файлов, тем более, что по результатам тестирования данный метод оказался самым быстрым. Следующим шагом в освоении данного метода предлагается использование одного файла-шаблона и одного вызова функции преобразования. Как вариант можно использовать следующую методику: xml-файл структуры сайта, xml-файл статьи и другие вспомогательные xml-файлы пред преобразованием "сливаются" в один. Слияние можно произвести либо посредством применения xsl-преобразования либо используя DOM-модель (вариантов масса). Далее, к полученному xml-файлу применяется преобразование основной xsl-таблицы сайта, содержащей полное описание дизайна сайта. Тем самым обеспечится соблюдение принципа "Содержимое отделено от его представления". Другим вариантом может служить использование уже наработанных по данной тематике проектов. Примером может служить проект DocBook, позволяющий авторам хранить содержимое документов независимо от логической структуры контента. Еще один вариант носит название @X, и служит для "для эффективного управления структурированными данными, их публикацией и обменом с помощью открытых XML-cтандартов". Конечно, я не раскрыл всех "секретов" и нюансов работы с данным методом. Но иначе было бы не так интересно. В своих поисках вы наверняка найдете много нового и на определенном этапе данная статья покажется вам "записками дилетанта". Так что, вперед и с песней. P.S. И следите за кодировками :) Полезные ссылки: Шапоткин Сергей, источник: http://www.izone.kiev.ua Рубрика: XML
XML документация в C#.
Сегодня речь пойдет об одной интересной и полезной возможности языка С#, которая поможет нам в документировании кода. Она называется «XML документация» или «Документирующие комментарии XML». Это такие специальные теги XML, которые содержаться в комментариях и описывают свойства или методы в конкретном файле. Так вот, есть по крайней мере три веских причины, почему всегда следует заполнять XML комментарии.
Подробнее... |
Рубрика: XML в .NET
| Добавлено: 08.10.2008
Курсоры в MySQL 5.
Начиная с 5-ой версии, MySQL имеет возможность создавать курсоры. Курсор — это виртуальная таблица, предоставляющая альтернативный способ просмотра табличных данных. Курсор не содержит данных, а лишь ссылается на них из других таблиц. Из этого вытекает ряд особенностей, но об этом ниже.
Подробнее... |
Рубрика: MySQL
| Добавлено: 08.10.2008
Microsoft опубликовала подробности о сессиях Windows 7.
Подробнее... |
Рубрика: Мероприятия
| Добавлено: 08.10.2008
Остальные статьи:
Microsoft делится подробностями о том, что будет после Windows
Тестируем новый javascript от нового браузера Google
MySQL Query Cache
Использование провайдеров компиляции в Asp.net
Чего мы ждем от C# 4.0
Delphi 2009 и C++Builder 2009
Джоэл Спольски и Джеф Этвуд запустили новый вебсайт для программистов - StackOve...
Поиск кода Google /* что нового? */
10 jQuery скриптов для улучшения интерфейса
Генераторы отчетов FastReport 4 и QuickReport 5: версии 2008 года
День программиста — набор стерeотипов
Индусские програмисты
Вышел Django 1.0
Портативная версия Google Chrome Portable
Исходные коды .Net Frameword 3.5 SP1 для отладки в Visual Studio
Пишем правильный online WYSIWYG-редактор |
Цитата дня (все,добавить):
|
Realcoding.NET
© 2003-2008 |
Контакты |
Реклама на сайте
|