Web-програмування та web-дизайн icon

Web-програмування та web-дизайн




НазваWeb-програмування та web-дизайн
Сторінка6/8
Дата15.05.2013
Розмір0.94 Mb.
ТипНавчальний посібник
1   2   3   4   5   6   7   8
^

Book Inventory









Title:




Author:




Binding type:




Number of pages:




Price:






.

Розглянута в прикладі таблиця стилів містить два шаблони. Один шаблон містить інструкції для відображення всього документа (шляхом установки match="/", що вказує на кореневу частку документа). Всі XSL-таблиці стилів вимагають наявності такого шаблону. Інший шаблон містить інструкції для відображення елемента BOOK (шаблон з установкою match="BOOK"). Спочатку браузер обробляє шаблон, який відповідає кореневій частині елемента:




^

Book Inventory





.

XSL-елемент apply-templates повідомляє браузеру, що для кожного елемента BOOK усередині кореневого елемента INVENTORY він повинен обробляти шаблон, що відповідає елементу BOOK, тобто шаблон, для атрибута match який встановлено в значення "BOOK". Таблиця стилів включає такий шаблон, що відповідає елементу BOOK:




Title:




Author:




Binding type:




Number of pages:




Price:




.

Оскільки цей шаблон відповідає елементу BOOK, елемент BOOK є поточним елементом в контексті шаблону. У зв'язку з цим доступ до дочірніх елементів BOOK здійснюється за допомогою зразка, що містить тільки ім'я елемента, як в нашому прикладі:


.


Примітка. Якщо ви не вкажете атрибут select для елемента apply-templates, браузер обробляє відповідний шаблон (якщо він є) для кожного дочірнього елемента поточного елемента. У даному прикладі для елемента apply-templates єдиним дочірнім елементом для поточного елемента (коренева частка документа) є елемент INVENTORY, який не має відповідного шаблону. Таким чином, якщо ви опустите атрибут select, ніякі дані не будуть виведені.

Браузер обробляє шаблон BOOK один раз для кожного елемента BOOK, відображуючи всю інформацію про книги, наявну в документі, як показано на рисунку 15.






Рисунок 15 -  Відображення елементів документа


^ ФІЛЬТРАЦІЯ І СОРТУВАННЯ ДАНИХ XML


Розглянемо основи застосування XSL-таблиць стилів для фільтрації і сортування даних XML.

Фільтрація


Значення, яке привласнюється атрибутам match або select, є відповідним зразком одному або декільком елементам в XML-документі. (Атрибут match використовується для елемента template, а атрибут select – для елементів value-of, for-each і apply-templates). Зразки, з якими ви мали справу до цих пір, містили тільки оператор шляху, який задавав ім'я елемента і, можливо, один або декілька вкладених елементів. Ви можете обмежити кількість елементів, що відповідають шаблону, ввівши фільтр – вираз, поміщений e квадратні дужки ([]) безпосередньо за оператором шляху. Наприклад, зразок, привласнений наступному атрибуту match вказує, що відповідний елемент повинен носити ім'я BOOK, і крім того (це визначається фільтром), повинен мати дочірній елемент BINDING, який містить текст "trade paperback":


.


Якщо у фільтр включено тільки ім'я елемента, то відповідний елемент повинен мати дочірній елемент із вказаним ім'ям. Наприклад, наступний зразок відповідає будь-якому елементу ITEM, що має дочірній елемент з ім'ям CD, незалежно від вмісту елемента CD:


match="ITEM[CD]".


Наступний зразок відповідає будь-якому елементу SHIRT, що має дочірній елемент COLOR, який містить текст "red":


match="SHIRT[COLOR='red']".


А наступний зразок, навпаки, відповідає будь-якому елементу SHIRT, що має дочірній елемент COLOR, який не містить текст "red":

select="SHIRT[COLOR='red']".

Примітка. Якщо елемент має більше, ніж один дочірній елемент з ім'ям, вказаним в умові фільтрації, оператор порівняння застосовується тільки до першого дочірнього елемента. Наприклад, якщо елемент SHIRT має два дочірні елементи COLOR, зразок "SHIRT[COLOR='red']" відповідатиме елементу, тільки якщо перший елемент COLOR містить слово "red".

Сортування


Ви вже ознайомилися з двома елементами, які можна використовувати для обробки елементів, що повторюються: for-each і apply-templates. Можна використовувати атрибут order-by для цих елементів, щоб управляти порядком, в якому браузер обробляє елементи, тим самим здійснюючи сортування даних XML.

Ви можете призначати атрибуту order-by один або декілька зразків, розділяючи їх крапкою з комою. Браузер сортуватиме елементи з використанням зразків у тому порядку, в якому вони перелічені. Для зазначення напряму сортування (за зростанням або за спаданням) слід перед зразком поставити префікс + або – .

Наприклад, атрибут order-by, встановлений для наступного елемента for-each, наказує браузеру сортувати елементи BOOK за прізвищами авторів у порядку зростання, а також здійснювати сортування для однакових прізвищ за іменами також за зростанням:



order-by="+AUTHOR/LASTNAME; +AUTHOR/FIRSTNAME">

В іншому прикладі наступна установка order-by здійснює сортування елементів BOOK за назвами книг за спаданням:


.


Оператор шляху, який ви привласнюєте атрибуту order-by, діє на зразок, що призначений атрибуту select. Так, у даному прикладі установка order-by="-TITLE" вказує на елемент TITLE всередині елемента BOOK, вкладеного в елемент INVENTORY.
^

Приклад таблиці стилів, що здійснює фільтрацію і сортування


Наведемо два приклади XSL-таблиць стилів. Кожен із них здійснює фільтрацію і сортування елементів BOOK, що підлягають відображенню. Розглянемо приклад example_18.xsl.








1   2   3   4   5   6   7   8

Схожі:

Web-програмування та web-дизайн iconПрограма Основний синтаксис
...
Web-програмування та web-дизайн iconМетодичні вказівки до виконання курсової роботи з дисципліни «Web-програмування» для студентів напряму 030502 економічна кібернетика
Курсова робота самостійна робота студента, мета якої полягає в систематизації, закріпленні і поглибленні знань, одержаних при вивченні...
Web-програмування та web-дизайн iconЛекція №2. Стандарти Web Створення World Wide Web «Війни браузерів» Поява стандартів Web Формування W3c розвиток стандартів Web
У 1993 р у світі працювало 1700 Gopher-серверів. Але після того, як університет оголосив, що збирається вимагати ліцензійні відрахування...
Web-програмування та web-дизайн iconРазработка Web-сервиса на основе php и Mysql
На платформе Microsoft. Net или J2ee web-сервис представляет собой развитый сервер на основе wsdl (Web Service Definition Language),...
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 9
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12
Web-програмування та web-дизайн iconТехническая документация web ирбис64 и web ирбис32
Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 14
Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©zavantag.com 2000-2013
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи