Для того, щоб автоматично перетворювати вміст xml-файлів у зручний для читання вигляд/формат (html, rtf, pdf, txt, vrml, svg, java і т.д.) - слід скористатися XSLT, замість того, щоб намагатися застосувати CSS.
Недоліки CSS:
1. CSS не може змінити порядок проходження елементів у xml-документі. Якщо ви захочете відсортувати деякі елементи або відфільтрувати їх за деякою властивістю, CSS вам в цьому однозначно не помічник.
2. CSS не виконує обчислення. Якщо ви захочете обчислити та вивести значення (наприклад, підсумувати числові значеннявсіх елементів у XML-документі), CSS вам не підійде.
3. CSS не може об'єднувати документи. Якщо ви захочете об'єднати пару десятків XML-документів із замовленнями на покупку та надрукувати зведення всіх замовлених товарів, то CSS вам знову ж таки не допоможе.
Невеликий приклад використання XSL
Є деякий xml-файл налаштувань плагіна:
Плагін контролює налаштування шарів креслень AutoCAD. Нижче представлена таблиця, в якій перераховані позиції, що перевіряються.
Перевірка імені шару
true
Перевірка імені шару на відповідність до правила побудови імен
Перевірка кольору шару
true
Перевірка на те, щоб шару призначалися кольори з панелі "Index Color"
Перевірка типу лінії
true
Перевірка на те, щоб шарам призначалися типи ліній тільки з певного набору
Перевірка товщин ліній
true
Перевірка на те, щоб шарам призначалися товщини ліній тільки з певного набору
Перевірка наявності примітки
true
Кожен шар повинен мати примітку, що розшифровує його призначення
Фіксований набір шарів
false
Чи слід заборонити користувачам створювати додаткові шари за встановленими в Стандарті правилами
Плагін повинен зчитувати з нього налаштування та працювати відповідно до них. У той самий час має бути якась документація, яку користувач міг прочитати і зрозуміти. При цьому матеріал, викладений у документації, повинен відповідати тим налаштуванням, які встановлені в поточний момент. Для того, щоб не пам'ятати, що після того, як підправиш налаштування, потрібно лізти і правити документацію, можна все це уявити у вигляді одного XML-файлу. Плагін буде читати з нього налаштування, а користувач - відкривати його в браузері і ... бачити його в "людському" вигляді ... Для цього створюємо файл styleSheet.xsl з таким вмістом:
Налаштування плагіна
Параметр Значення Примітка
Тепер, якщо користувач у браузері відкриє наш XML-файл, то він побачить не заплутаний (з його точки зору), незручний XML-текст, а це:
У даному прикладія не показував вибірки, сортування, фільтрації, різного роду операції та обчислення (вони тут були непотрібні), але при необхідності все це можна робити засобами XSLT.
Мета заняття
Ознайомлення з технологією XML. Вивчення можливості подання документів XML у HTML. Використання скриптів JavaScriptдля навігації по таблиці XML та організації пошуку даних за умовою. Рекомендована література .
Короткі теоретичні відомості
Технологія XML (eXtensible Markup Language) була створена наприкінці 90-х років минулого століття. Основні переваги тексту XML:
□ має структуру бази даних, доступний ЕОМ та людині;
□ зручно обробляється засобами сучасних мовпрограмування;
□ легко перекладається у HTML.
Розглянемо наступний приклад текстової бази даних, написаної на XML:
Three men in the boat
Jerom-K-Jerom
12000
Notre Domme de Paris
V.Hugo
15000
А War and Peace
L.Tolstoy
16500
Angelika - бойові дії готівки А і S. Gallen
9000
Це приклад правильно складеного документа XML, елементами якого є теги , , , , ,
Елементи в тексті розташовані на кшталт дерева з головним елементом. Кожен елемент має пов'язаний з ним елемент, що закриває. Область дії кожного елемента обмежена таким, що відкриває і закриває елементами. Не допускається перетину області дії елементів, тобто e. області або вкладені одна в одну, або зовсім не перетинаються. Елемент, область дії якого містить області дії всіх інших елементів, називається кореневим. XML-документ можна як текстову базу даних. Значенням елемента є інформація, поміщена між тегами, що визначають даний елемент. Так, значенням першого елемента є рядок
Трьох людей в бойові.
Наберіть цей текст у будь-якому редакторі та збережіть його як простий текстовий файлз розширенням xml – наприклад, дайте цьому файлу ім'я textbd.xml. Цей файл можна переглянути браузером Internet Explorerтак само, як ви переглядали HTML-файли. У разі помилки інтерпретатор XML видасть детальну інформаціюпро дислокацію та сутність помилки.
Тепер покажемо, як перевести цей висновок у табличний форму HTMLщо виконується засобами HTML. Створимо наступний файл HTML(Листинг 2.12).
Лістинг 2.12. HTML-документ для відображення таблиці XML