Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Палагута.docx
Скачиваний:
5
Добавлен:
21.02.2016
Размер:
104.52 Кб
Скачать

1

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

ДОНЕЦЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ЕКОНОМІКИ І ТОРГІВЛІ

ІМЕНІ МИХАЙЛА ТУГАН-БАРАНОВСЬКОГО

Кафедра інформаційних систем і технологій управління

К.О. Палагута

Мовна модель сучасного інформаційного простору

Методичні вказівки та завдання для проведення

лабораторних робіт і самостійної роботи студентів

напрямів підготовки 6.030509 «Облік і аудит»,

6.030508 «Фінанси і кредит»

(спеціалізації «Фінанси», «Банківська справа»)

денної та заочної форм навчання

Зтверджено

на засіданні кафедри

інформаційних систем і

технологій управління

Протокол №16 від 19 квітня 2011 р.

Схвалено

навчально-методичною

радою університету

Протокол №__ від __________ 2011 р.

ДОНЕЦЬК - 2011

2

ББК 22.18 я 73

П 15

УДК [004.434](075.8)

Рецензенти:

канд. екон. наук, доцент Спіцина Н.М.

канд. екон. наук, доцент Секірина Н.В.

Палагута, К.О.

П 15 Мовна модель сучасного інформаційного простору [Текст]: метод.

вказ. і індивід. завд. для проведення лаб. робіт і самост. роботи студ. напря-

мів підготовки 6.030509 «Облік і аудит», 6.030508 «Фінанси і кредит» (спе-

ціалізації «Фінанси», «Банківська справа») ден. та заоч. форм навчання / М-

во освіти і науки, молоді та спорту України, Донец. нац. ун-т економіки і то-

ргівлі ім. М. Туган-Барановського, каф. інформ. систем і технологій упр.;

Палагута К.О. – Донецьк : [ДонНУЕТ], 2011. - 88 с.

Методичні вказівки призначені для проведення лабораторних робіт і

самостійної роботи студентів з дисципліни «Мовна модель сучасного інфор-

маційного простору».

У методичній розробці розглядаються практичні приклади виконання

завдань за темами: створення web – сайтів з використанням мови HTML,

створення web – сайтів з використанням фреймів і каскадних листів стилів

CSS, створення XML – документів, опис шаблону документа, розробка XML

– схем, мова XPath, мова XSLT, мова запитів XQuery. За кожною темою на-

ведені індивідуальні завдання для виконання лабораторних робіт, приклади

тестів.

ББК 22.18 я 73

 Палагута К.О., 2011

 Донецький національний університет

економіки і торгівлі

ім. М. Туган-Барановського, 2011

3

Вступ

В умовах широкого використання сучасних інформаційно-

комунікаційних технологій важливою є підготовка фахівців, які вільно оріє-

нтуються в інформаційному просторі, знайомі з засобами подання і обробки

інформації у мережі Інтернет. Дисципліна «Мовна модель сучасного інфор-

маційного простору» орієнтує студентів інституту обліку і фінансів на вико-

ристання сучасних методів роботи з інформацією у глобалізованому інфор-

маційному просторі.

Метою дисципліни є:

– оволодіння сучасними методами моделювання інформації для вико-

ристання їх при подальшому навчанні та в своїй професійній діяльності;

– освоєння мовних засобів моделювання сучасного інформаційного

простору.

Предмет дисципліни – це система мовних засобів для моделювання су-

часного інформаційного простору

Завдання дисципліни – вивчення теоретичних основ моделювання та

мовних засобів для створення XML–документів і Web–додатків в сучасному

інформаційному просторі.

У результаті вивчення дисципліни студенти повинні засвоїти:

– теоретичні основи моделювання;

– основні конструкції, синтаксис та семантику мов розмітки HTML та

XML;

– структуру HTML та XML-документів;

– методику створення HTML та XML-документів;

– методику моделювання інформації в XML;

– базові принципи розробки Web-додатків на основі технологій HTML

та XML;

вміти:

– створювати HTML та XML-документи;

– працювати з XML-документами з використанням мов XPath, XSLT,

мови запитів XQuery;

отримати навички:

застосування методів та мовних засобів моделювання інформаційного

простору у навчанні та у своїй професійній діяльності.

4

Змістовий модуль 1. Розвиток інформаційного суспільства,

мова HTML

Лабораторна робота №1

Тема: Створення web – сайтів з використанням мови HTML.

Мета: навчитись створювати HTML - документи з використанням різних

параметрів форматування, гіперпосилань, списків, таблиць, зобра-

жень.

Програмне забезпечення: операційна система Windows, браузер Internet

Explorer.

Завдання

1. Виконати приклад створення web – сайту інституту обліку і фінансів.

2. Розробити власний web – сайт у відповідності до індивідуального варі-

анту з використанням гіперпосилань, різних параметрів форматування,

списків, таблиць, зображень. За узгодженням з викладачем студент

може запропонувати власне змістовне наповнення сайту. Сайт повинен

вміщувати не менше 5 сторінок (головна і пов’язані з нею), включати

списки, таблиці, зображення.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист (додаток А);

 роздруковані HTML – документи у звичайному вигляді (у вікні брау-

зера), а також у HTML – коді.

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад створення web – сайту

1. Завантажте програму Блокнот (команда Пуск – Программы – Стандарт-

ные – Блокнот).

2. У середовищі програми Блокнот введіть текст HTML – документа:

<HTML>

<HEAD >

<TITLE>

сайт студента ІОФ

</TITLE>

</HEAD>

<BODY BGCOLOR=yellow TEXT=#0000FF>

Університет економіки і торгівлі імені Михайла Туган-Барановського

<BR>

Інститут обліку і фінансів

</BODY>

</HTML>

Коментар:

5

2.1. Тег <HTML> визначає, що документ створений мовою HTML.

2.2. Контейнер <HEAD> визначає заголовну частину документа, всередині

якої за допомогою контейнера <TITLE> вводиться текст, що буде виво-

дитися у зоні заголовку вікна документа, розчиненого у браузері, - сайт

студента ІОФ.

2.3. Контейнер <BODY> визначає основну частину HTML – документа, вла-

сно його вміст. У тегу < BODY> за допомогою атрибутів визначаються

колір фону – жовтий (BGCOLOR=yellow) і колір символів - синій

(TEXT=#0000FF, за моделлю RGB максимальне значення останньої

складової Blue).

2.4. Тег <BR> здійснює перехід на новий рядок.

3. Збережіть документ у окремій папці з ім’ям index.htm (обов’язково потрі-

бно визначати тип файлу – всі файли, інакше документ буде збережено як

текстовий файл).

4. Розчиніть HTML – документ у браузері Internet Explorer (якщо за замов-

чуванням використовується інший браузер, подати команду Открыть с

помощью - Internet Explorer). У вікні IE документ виглядатиме так:

5. Для застосування різних параметрів форматування документа відредагуй-

те його. Для цього можна у вікні браузера подати команду Вид – Про-

смотр HTML – кода або скористатися програмою Блокнот.

<HTML>

<HEAD>

<TITLE> сайт студента ІОФ </TITLE>

</HEAD>

<BODY BGCOLOR=yellow TEXT=#0000FF>

<P ALIGN=CENTER>

<FONT SIZE=6 FACE="Times New Roman"> <B> <I>

Університет економіки і торгівлі імені Михайла Туган-Барановського

<BR>

Інститут обліку і фінансів

</I> </B>

</FONT>

</P>

 напівжирним шрифтом виділено новий уміст документа

6

<P ALIGN=LEFT>

<FONT SIZE=5 FACE="Arial">

<B>Кафедри:</B><BR>

бухгалтерського обліку <BR>

фінансів<BR>

контролю та аналізу господарської діяльності<BR>

банківської справи<BR>

інформаційних систем і технологій управління<BR>

інвестиційного менеджменту<BR>

фізичного виховання<BR>

</P>

</BODY>

</HTML>

Коментар:

5.1. Контейнер <P> створює абзац з вирівнюванням по центру

(ALIGN=CENTER) або ліворуч (ALIGN=LEFT).

5.2. Контейнер <FONT> встановлює для певного фрагменту документа

шрифт.

5.3. Контейнер <В> виділяє фрагмент напівжирним шрифтом, контейнер

<І> - курсивом.

6. Збережіть нову редакцію документа і перегляньте його (можна скориста-

тися інструментом Обновить або натиснути клавішу F5). Документ

тепер виглядатиме так:

7

7. Для того, щоб навчатися створювати гіперпосилання, завантажте програ-

му Блокнот і введіть у вікно редагування такий уміст документа:

<HTML>

<HEAD>

<TITLE> сайт студента ІОФ </TITLE>

</HEAD>

<BODY BGCOLOR=yellow TEXT=#0000FF>

<P ALIGN=CENTER>

<FONT SIZE=5 FACE="Times New Roman">

<B>м. Донецьк, вул. 50-річчя СРСР, буд. 157</B></P>

<P ALIGN=LEFT>

<A HREF> до головної сторінки </A> </P>

</BODY>

</HTML>

Коментар:

7.1. Контейнер <A> створює гіперпосилання. Атрибут HREF визначає, що

якщо гіперпосилання буде використано, відбудеться перехід до файлу

"index.htm". Власно текст гіперпосилання розташовується всередині ко-

нтейнеру <A>, у прикладі це текст «до головної сторінки».

8. Збережіть HTML – документ у власній папці з ім’ям address.htm. У вікні

браузера документ виглядатиме так:

8

9. Відредагуйте документ index.htm так, щоб у ньому було розташовано гі-

перпосилання на файл address.htm. Додайте перед закриваючим тегом

</BODY> контейнер:

<A HREF="address.htm"> адреса</A>

10. Збережіть нову редакцію документа index.htm, розчиніть документ у бра-

узері ІЕ і перевірте дію гіперпосилань.

11. Оформіть перелік кафедр на головній сторінці index.htm у вигляді списку.

Для цього відредагуйте фрагмент документа в такий спосіб:

<B>Кафедри:</B>

<UL TYPE=square>

<LI>бухгалтерського обліку

<LI>фінансів

<LI>контролю та аналізу господарської діяльності

<LI>банківської справи

<LI>інформаційних систем і технологій управління

<LI>інвестиційного менеджменту

<LI>фізичного виховання

</UL>

Коментар:

11.1. Тег <UL> створює маркірований список, атрибут TYPE=square визначає

тип маркеру – квадрат.

11.2. Тег < LI> виділяє елементи списку – абзаци.

12. Збережіть нову редакцію файлу index.htm, перегляньте документ у вікні

браузера.

13. Для того, щоб навчитися створювати таблиці у web – документах, у про-

грамі Блокнот створіть новий документ:

<HTML>

<HEAD> <TITLE> сайт студента ІОФ </TITLE> </HEAD>

<BODY BGCOLOR=yellow TEXT=#0000FF>

<FONT SIZE=4 FACE="Times New Roman">

<P ALIGN=CENTER> <B>

9

Інформація про випускові кафедри інституту обліку і фінансів ДонНУЕТ

</B></P>

<TABLE BORDER=2 ALIGN=CENTER CELLPADDING=5>

<TR ALIGN=CENTER>

<TD ROWSPAN=2> Кафедра</TD>

<TD COLSPAN=2> Відомості про кафедру</TD></TR>

<TR ALIGN=CENTER> <TD> телефон</TD>

<TD> е-mail</TD></TR>

<TR> <TD> бухгалтерського обліку</TD>

<TD> 305-21-13, 335-21-44</TD>

<TD> buhobl@kaf.donduet.edu.ua </TD></TR>

<TR> <TD> фінансів</TD>

<TD> 05-12-49</TD>

<TD> finans@kaf.donduet.edu.ua </TD></TR>

<TR> <TD> контролю та аналізу господарської діяльності</TD>

<TD> 305-21-38</TD>

<TD> kontrol@kaf.donduet.edu.ua </TD></TR>

<TR> <TD> банківської справи</TD>

<TD> 305-10-87</TD>

<TD> bank@kaf.donduet.edu.ua </TD></TR>

</TABLE>

</FONT>

<A HREF="index.htm"> до головної сторінки </A>

</BODY>

</HTML>

Коментар:

13.1. Тег <TABLE> визначає, що буде створено таблицю. Атрибут

BORDER=2 встановлює лінію обрамлення товщиною 2 пікселя. Атри-

бут тегу <TABLE> ALIGN=CENTER визначає, що таблиця в цілому бу-

де вирівнюватися по центру відносно поточного розміру вікна браузера.

Атрибут CELLPADDING=5 встановлює розмір відступів від границь

чарунок до тексту в 5 пунктів.

13.2. Контейнер <TR> визначає кожний рядок таблиці. За допомогою атрибу-

ту ALIGN можна встановити спосіб вирівнювання для всіх чарунок пе-

вного рядка. Усі чарунки рядка описуються всередині контейнеру <TR>.

13.3. Контейнер <TD> визначає вміст окремої чарунки таблиці. За допомогою

атрибуту ROWSPAN можна об’єднати декілька чарунок по вертикалі

(ROWSPAN=2 об’єднуються дві чарунки шапки таблиці для надпису

«Кафедра»). За допомогою атрибуту COLSPAN можна об’єднати декі-

лька чарунок по горизонталі (COLSPAN=2 об’єднуються дві чарунки

шапки таблиці для надпису «Відомості про кафедру»).

14. Збережіть HTML – документ у власній папці з ім’ям inf.htm. Перегляньте

документ у вікні браузера. У вікні браузера HTML - документ виглядати-

ме так:

10

15. Додайте до файлу index.htm перед посиланням на адресу інституту поси-

лання на файл inf.htm:

<A HREF="inf.htm"> інформація про випускові кафедри</A><BR>

Збережіть файл index.htm, перевірте роботу гіперпосилань.

16. Додайте до головної сторінки сайту зображення гербу інституту – файл

arms.jpeg (візьміть у викладача або створіть у програмі Paint довільний

малюнок і збережіть його у власній папці з ім’ям arms.jpeg). Остаточний

варіант файлу index.htm такий:

<HTML>

<HEAD>

<TITLE> сайт студента ІОФ </TITLE>

</HEAD>

<BODY BGCOLOR=yellow TEXT=#0000FF>

<P ALIGN=CENTER>

<IMG SRC="arms.jpeg">

<BR>

<FONT SIZE=6 FACE="Times New Roman"> <B> <I>

Університет економіки і торгівлі імені Михайла Туган-Барановського

<BR>

Інститут обліку і фінансів

</I> </B> </FONT> </P>

<P ALIGN=Left> <FONT SIZE=5 FACE="Arial">

11

<B>Кафедри:</B>

<UL TYPE=square>

<LI>бухгалтерського обліку

<LI>фінансів

<LI>контролю та аналізу господарської діяльності

<LI>банківської справи

<LI>інформаційних систем і технологій управління

<LI>інвестиційного менеджменту

<LI>фізичного виховання

</UL> </P>

<A HREF="inf.htm"> інформація про випускові кафедри</A><BR>

<A HREF="address.htm"> адреса</A>

</BODY>

</HTML>

Коментар:

16.1. Зображення додається до HTML – документа за допомогою тегу <IMG>.

Атрибут SRC визначає ім’я файлу, у якому зберігається малюнок

arms.jpeg. Маршрут пошуку файлу arms.jpeg не визначається, оскільки

обидва файли index.htm і arms.jpeg знаходяться в одній папці.

17. Збережіть остаточний варіант файлу index.htm, перегляньте його у брау-

зері. Головна сторінка сайту у браузері ІЕ повинна виглядати так:

12

Індивідуальні завдання

за темою «Створення web – сайтів з використанням мови HTML»

Варіант №1

Розробити web – сайт, в якому надається інформація про випускову ка-

федру:

13

1. Головна сторінка: університет, інститут, кафедра, завідувач кафедри,

посилання на інші сторінки.

2. Інформація про викладачів кафедри, оформлена у вигляді таблиці:

ПІБ, посада, науковий ступінь.

3. Відомості про дисципліни кафедри (оформити у вигляді списку ви-

значень з анотацією дисциплін).

4. Наукова робота: перелік наукових напрямів, у яких працюють ви-

кладачі кафедри, перелік наукових конференцій, у яких брали участь викла-

дачі.

5. Історія кафедри: відомості про створення кафедри, її завідувачів,

вчених, які працювали на кафедрі з використанням фотографій.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №2

Розробити web – сайт, в якому надається інформація про студентів гру-

пи і який містить такі сторінки:

1. Головна сторінка: університет, інститут, група, курс, куратор, поси-

лання на інші сторінки.

2. Інформація про студентів групи, оформлена у вигляді таблиці: ПІБ,

дата народження, адреса.

3. Відомості про дисципліни, які вивчаються у поточному семестрі

(оформити у вигляді списку).

4. Наукова робота: перелік наукових гуртків, у яких працюють студен-

ти групи, а також перелік наукових конференцій, у яких брали участь студе-

нти групи.

5. Наше дозвілля: відомості про культурні та спортивні заходи, у яких

брали участь студенти групи з використанням фотографій.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №3

Розробити web – сайт, в якому надається інформація про видатного вче-

ного (наприклад, Михайла Туган-Барановського):

1. Головна сторінка: ПІБ, дати життя, країна, посилання на інші сторін-

ки.

2. Біографія (основні етапи оформити як список).

3. Інформація про основні наукові роботи, оформлена у вигляді табли-

ці.

4. Літературні джерела про життя і творчість (список).

5. Фотографії.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

14

Варіант №4

Розробити власний web – сайт студента, в якому містяться такі сторінки:

1. Головна сторінка: університет, інститут, ПІБ, група, спеціальність

(напрям підготовки), посилання на інші сторінки.

2. Автобіографія, оформлена у вигляді таблиці.

3. Інформація про дисципліни, які вивчає студент (оформити у вигляді

списку.

4. Наукові інтереси: напрями наукової роботи, перелік наукових кон-

ференцій, у яких студент брав участь.

5. Захоплення: загальні відомості з використанням фотографій.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №5

Розробити web – сайт, в якому надається інформація про улюбленого

композитора або музичну групу:

1. Головна сторінка: ПІБ, дати життя, країна, посилання на інші сторін-

ки.

2. Біографія (основні етапи оформити як список).

3. Інформація про основні твори, оформлена у вигляді таблиці.

4. Літературні джерела про життя і творчість, відгуки преси (список).

5. Фотографії.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №6

Розробити web – сайт, в якому надається інформація про університет:

1. Головна сторінка: університет, інститути і кафедри (таблиця), поси-

лання на інші сторінки.

2. Керівництво вузу (бажано з фотографіями).

3. Інформація про напрями підготовки бакалаврів, спеціалістів, магіст-

рів (список).

4. Наукова робота: перелік наукових конференцій, які проводяться в

вузі, наукові видання.

5. Адреси корпусів, телефони.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №7

Розробити web – сайт, в якому надається інформація про улюбленого

письменника:

1. Головна сторінка: ПІБ, дати життя, країна, посилання на інші сторін-

ки.

2. Біографія (основні етапи оформити як список).

3. Інформація про основні твори, оформлена у вигляді таблиці.

15

4. Літературні джерела про життя і творчість, відгуки преси (список).

5. Фотографії.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №8

Розробити web – сайт, в якому надається інформація про інститут (фа-

культет):

1. Головна сторінка: університет, інститут (факультет), директор (де-

кан) посилання на інші сторінки.

2. Кафедри з інформацією про викладачів (таблиця).

3. Інформація про напрями підготовки у інституті (факультеті) бакала-

врів, спеціалістів, магістрів (список).

4. Наукова робота: перелік наукових конференцій, які проводяться.

5. Адреси кафедр, телефони.

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №9

Розробити web – сайт, в якому надається інформація про місто (Донецьк

або якесь інше місто):

1. Головна сторінка: країна, область, назва міста, фотографії, посилан-

ня на інші сторінки.

2. Інформація про населення: загальна чисельність, данні по вікових

категоріях, зайнятості, рівню освіти (таблиця).

3. Інформація про вищі навчальні заходи (список).

4. Інформація про установи культури: театри, музеї, філармонії тощо

(список).

5. Інформація про спортивні установи (список).

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

Варіант №10

Розробити web – сайт, в якому надається інформація про кулінарні ре-

цепри:

1. Головна сторінка: автор сайту, фотографії, посилання на інші сторін-

ки.

2. Рецепти закусок (список визначень).

3. Рецепти основних страв (список визначень).

4. Рецепти десертів (список визначень).

5. Інформація про склад і калорійність основних продуктів харчування

(таблиця).

Потрібно надати можливість переходу з кожної сторінки сайту до голо-

вної.

16

Приклад тесту

за темою «Створення web – сайтів з використанням мови HTML»

1) HTML – це мова, призначена …

a) для створення гіпертекстових документів, які можуть відображатися за

допомогою браузера Internet Explorer

b) для розробки різних прикладних програм

c) для створення гіпертекстових документів, що можуть відображатися за

допомогою будь-якого браузера

2) Файл-документ, створений мовою HTML, може мати розширення …

a) htm

b) txt

c) doc

d) html

3) Які програми можна використовувати для створення HTML – документів?

a) Блокнот

b) MS Excel

c) Paint

d) MS Word

4) Тег – це …

a) спеціальний управляючий код, який визначає параметри форматування

даних у документі.

b) управляючий код, який визначає фрагмент документа, до якого засто-

совуються спеціальні параметри форматування

c) спеціальний управляючий код, який визначає операцію і фрагмент до-

кумента, до якого застосовується дана операція.

5) Атрибути тегів …

a) виділяють фрагмент HTML - документа

b) визначають параметри форматування документа фрагменту документа

c) визначають операцію форматування

6) Тег <HEAD> визначає …

a) заголовну частину документа.

b) те, що документ написано на мові HTML.

c) основну частину документа.

7) Які значення атрибутів, що визначають колір, коректні?

a) Red

b) Червоний

c) Olive

d) #0000

e) #AAСС00

f) #LLLLLL

8) Для форматування даних на сторінці можна використовувати теги …

a) <H3>

b) <SUB>

c) <CENTER>

d) <BODY>

17

e) <B>

f) <FONT>

g) <A>

9) Які фрагменти коду для створення гіперпосилання коректні?

a) <A HREF="address.html"> моя адреса </A>

b) <A HREF="http://www.yandex.ru"> Пошук у Yandex </A>

c) <A HREF="Приклад.txt"> Посилання </A>

10) Список визначень створюється за допомогою тегів …

a) <OL>

b) <UL>

c) <DD>

d) <LI>

e) <DL>

11) Які теги використовуються для створення таблиць?

a) <CAPTION>

b) <TD>

c) <TABLE>

d) <DD>

e) <OL>

f) <TR>

12) Як об’єднати декілька чарунок таблиці по горизонталі?

a) За допомогою атрибуту COLSPAN тегу TR

b) За допомогою атрибуту ROWSPAN тегу TABLE

c) За допомогою атрибуту COLSPAN тегу TABLE

13) Які фрагменти коду для розміщення на сторінці зображення коректні?

a) <IMG SRC="http:/ /picture.jpg" >

b) <IMG SRC="D:\Рисунки\picture.png" >

c) <IMG SRC="picture.bmp" >

d) <IMG SRC="C:/ /file.jpg" >

14) Як зробити зображення фоном сторінки?

a) За допомогою тегу <BODY>

b) За допомогою тегу <HEAD>

c) За допомогою тегу <IMG>

15) Коли використовується мапа посилань?

a) тоді, коли гіперпосиланням є малюнок

b) коли різні фрагменти сторінки є різними гіперпосиланнями

c) коли різні фрагменти зображення є різними гіперпосиланнями

18

Лабораторна робота №2

Тема: Створення web – сайтів з використанням фреймів, каскадних листів

стилів CSS.

Мета: навчитись створювати сайти з використанням фреймів, каскадних ли-

стів стилів CSS.

Програмне забезпечення: операційна система Windows, браузер Internet

Explorer.

Завдання

1. Виконати приклад створення web – сайту підприємства з використан-

ням фреймів і каскадних листів стилів CSS.

2. Розробити власний web – сайт у відповідності до індивідуального варі-

анту.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист;

 роздруковані HTML – документи у звичайному вигляді (у вікні брау-

зера), а також у HTML – коді;

 роздрукована таблиця стилів.

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад створення web – сайту з використанням фреймів,

каскадних листів стилів CSS

1. У середовищі програми Блокнот введіть текст HTML – документа:

<HTML>

<HEAD>

<TITLE>сайт ТОВ "Славутич"</TITLE>

</HEAD>

<FRAMESET COLS="30%,*">

<FRAME SRC="main.htm">

<FRAME SRC="inf.htm" NAME="TEXT">

</FRAMESET>

</HTML>

Коментар:

1.1. Тег <FRAMESET> поділяє за допомогою атрибуту COLS вікно браузера

на два фрейми по вертикалі, перший фрейм займає 30% поверхні вікна

браузера, другий – усю іншу частину вікна.

1.2. За допомогою тегів <FRAME> визначається вміст фреймів. У першому

фреймі виводиться файл main.htm, у другому – файл inf.htm. Оскільки

уміст другого фрейму буде змінюватися в залежності від обраного гі-

перпосилання, йому привласнюється ім’я TEXT.

1.3. Зверніть увагу, файл не містить контейнеру <BODY>.

19

2. Збережіть документ у окремій папці з ім’ям index.htm (обов’язково потрі-

бно визначати тип файлу – всі файли, інакше документ буде збережено як

текстовий файл).

3. У власній папці створіть ще один HTML – документ main.htm:

<HTML>

<BODY>

ТОВ "Славутич" виробляє побутове обладнання <BR>

<A HREF="inf.htm" TARGET="TEXT"> загальні відомості </A><BR>

<A HREF="prod.htm" TARGET="TEXT"> продукція </A>

</BODY>

</HTML>

Коментар:

3.1. Теги <А> створюють гіперпосилання на файли inf.htm або prod.htm і за

допомогою атрибуту TARGET визначають, що відповідні файли будуть

виводитися у фреймі з ім’ям TEXT (у другому фрейми).

4. У тій самій папці створіть ще один файл inf.htm, у якому містяться зага-

льні відомості про підприємство:

<HTML>

<BODY>

Адреса підприємства: м.Донецьк, вул.Університетьська, 128 <BR>

Телефони: (062) 335-75-29 <BR>

e-mail: slavutich@donbas.com <BR>

</BODY>

</HTML>

5. У власній папці створіть файл prod.htm (відомості про продукцію, що ви-

робляється на підприємстві):

<HTML>

<BODY>

<P> Наша продукція: </P>

<TABLE BORDER=2 ALIGN=LEFT CELLPADDING=5>

<TR ALIGN=CENTER>

<TD>Найменування </TD>

<TD> Модель </TD>

<TD> Ціна, грн. </TD></TR>

<TR> <TD> кавоварка </TD> <TD> СІІ-15 </TD> <TD> 425 </TD> </TR>

<TR> <TD> кавоварка </TD> <TD> VX-40 </TD> <TD> 700 </TD> </TR>

<TR> <TD> тостер </TD> <TD> RoWC-7 </TD> <TD> 350 </TD> </TR>

<TR> <TD> сковорідка </TD> <TD> CXZ-321 </TD> <TD> 200 </TD>

</TR>

</TABLE>

</BODY>

</HTML>

6. За допомогою файлу index.htm розчиніть сайт, перевірте дію гіперпоси-

лань. У браузері ІЕ сайт виглядатиме так:

20

або так:

7. Тепер оформимо сайт за допомогою таблиці стилів CSS. У вікні програми

Блокнот введіть такий уміст файлу:

BODY { background:papayawhip; color:navy; font-family:"Times New

Roman";

font-size:14pt}

.stZAG {font-size:16pt; font-weight:bold; font-style:italic}

.stROW {font-family:"Arial"; font-weight:bold; color:green; letter-spacing:4}

Коментар:

7.1. У таблиці стилів описується стиль, що буде застосовуватися до всіх се-

лекторів (тегів) <BODY>, зокрема:

 властивість background, що визначає колір фону сторінки, приймає зна-

чення papayawhip – колір дині;

21

 властивість color, яка визначає колір символів, приймає значення navy –

темно-синій;

 за допомогою властивості font-family встановлюється шрифт для сторінки

Times New Roman, а також з використанням властивості font-size - розмір

шрифту 14 пунктів.

7.2. Описується новий клас stZAG, що може використовуватися для різних

тегів. Клас stZAG (стиль заголовків) здійснює таке форматування:

 розмір шрифту font-size встановлюється 16 пунктів;

 шрифт напівжирний font-weight:bold;

 стиль шрифту – курсив font-style:italic.

7.3. Створюється клас stROW (стиль інформаційних рядків), що встановлює

такі параметри форматування:

 font-family:"Arial" – шрифт Arial;

 font-weight:bold – напівжирний шрифт;

 color:green – колір символів зелений;

 letter-spacing:4 відстань між символами 4 (шрифт розріджений).

8. Збережіть таблицю стилів у власній папці з ім’ям mystyle.css.

9. Для застосування таблиці стилів її слід підключити до HTML – докумен-

тів сайту і скористатися створеними класами. Відредагуйте файл main.htm

в такий спосіб:

<HTML>

<HEAD>

<LINK HREF="mystyle.css" REL="stylesheet" TYPE="text/css">

</HEAD>

<BODY>

<P CLASS=stZAG> ТОВ "Славутич" виробляє побутове обладнання </P>

<BR>

<A HREF="inf.htm" TARGET="TEXT"> загальні відомості </A><BR>

<A HREF="prod.htm" TARGET="TEXT"> продукція </A>

</BODY>

</HTML>

Коментар:

9.1. У заголовній частині документа (всередині контейнеру <HEAD>) за

допомогою тегу <LINK> підключається таблиця стилів mystyle.css.

9.2. Автоматично для контейнеру <BODY> застосовується стиль, описаний

у таблиці стилів mystyle.css.

9.3. До першого параграфу документа застосовується стиль stZAG, визначе-

ний як значення атрибуту CLASS.

10. Відредагуйте файл prod.htm таким чином:

<HTML>

<HEAD>

<LINK HREF="mystyle.css" REL="stylesheet" TYPE="text/css">

</HEAD>

<BODY>

22

<P CLASS=stZAG> Наша продукція: </P>

<TABLE BORDER=2 ALIGN=LEFT CELLPADDING=5 CLASS=stRow>

<TR ALIGN=CENTER>

<TD>Найменування </TD>

<TD> Модель </TD>

<TD> Ціна, грн. </TD></TR>

<TR> <TD> кавоварка </TD> <TD> СІІ-15 </TD> <TD> 425 </TD> </TR>

<TR> <TD> кавоварка </TD> <TD> VX-40 </TD> <TD> 700 </TD> </TR>

<TR> <TD> тостер </TD> <TD> RoWC-7 </TD> <TD> 350 </TD> </TR>

<TR> <TD> сковорідка </TD> <TD> CXZ-321 </TD> <TD> 200 </TD>

</TR>

</TABLE>

</BODY>

</HTML>

Коментар:

10.1. До документа за допомогою тегу <LINK> підключається таблиця стилів

mystyle.css.

10.2. До першого абзацу застосовується клас stZAG (атрибут CLASS=stZAG).

10.3. До всіх чарунок таблиці використовується клас stRow (атрибут

CLASS=stRow).

11. Відредагуйте також файл inf.htm:

<HTML>

<HEAD>

<LINK HREF="mystyle.css" REL="stylesheet" TYPE="text/css">

</HEAD>

<BODY>

<SPAN CLASS=stZAG> Адреса підприємства: </SPAN>

<SPAN CLASS=stRow>

м.Донецьк, вул.Університетьська, 128 </SPAN> <BR>

<SPAN CLASS=stZAG> Телефони: </SPAN>

<SPAN CLASS=stRow> (062) 335-75-29 </SPAN> <BR>

<SPAN CLASS=stZAG>: </SPAN>

<SPAN CLASS=stRow> slavutich@donbas.com </SPAN> <BR>

</BODY>

</HTML>

Коментар:

11.1. До документа за допомогою тегу <LINK> підключається таблиця стилів

mystyle.css.

11.2. Контейнери <SPAN> виділяють фрагменти документа, до яких застосо-

вуються різні класи стилів. До назв реквізитів (адреса, телефони, e-mail)

застосовується стиль заголовків stZAG, до значень реквізитів – клас

stRow (стиль інформаційних рядків).

12. За допомогою файлу index.htm розчиніть сайт. Тепер у браузері ІЕ сайт

виглядатиме так:

23

або так:

Індивідуальні завдання

за темою «Створення web – сайтів з використанням фреймів,

каскадних листів стилів CSS»

Розробити web – сайт, в якому надається інформація про певне підпри-

ємство (реальне або уявне) з використанням фреймів, каскадних листів сти-

24

лів CSS, таблиць, списків. Вікно сайту повинно за допомогою фреймів поді-

лятися на такі області:

Логотип

підприємства

Назва підприємства

Меню сайту Область, у якій виводиться інформація

відповідно до обраного пункту меню

Меню сайту повинно вміщувати не менше 4 пунктів, серед яких можуть

бути, наприклад, такі:

про компанію;

продукція;

інформація для клієнтів;

організаційна структура;

прес – центр;

новини;

контактна інформація;

як нас знайти;

вакансії тощо.

Варіанти завдання

Номер

варіанта

Завдання

1. Підприємство кондитерської промисловості

2. Торговельне підприємство з продажу взуття

3. Аптека

4. Книжковий магазин

5. Комерційний банк

6. Торговельне підприємство з продажу меблів

7. Підприємство харчової промисловості

8. Підприємство оптової торгівлі

9. Ресторан

10. Центр вивчення іноземних мов

11. Торговельне підприємство з продажу одягу

12. Фітнес - центр

13. Торговельне підприємство з продажу автомобілів

14. Підприємство по виробництву побутової техніки

15. Туристична фірма

16. Кінотеатр

17. Ательє

18. Підприємство по продажу музичних і відеозаписів

19. Сільськогосподарське підприємство

20. Торговельне підприємство з продажу косметики

25

Приклад тесту

за темою «Створення web – сайтів з використанням фреймів,

каскадних листів стилів CSS»

1) З якою метою використовуються фрейми?

a) для виведення табличних даних

b) для організації діалогу з користувачем

c) для поділу сторінки на декілька частин з метою структуризації інфор-

мації

d) для поділу сторінки на дві частини з метою структуризації інформації

2) Для поділу сторінки на декілька фреймів використовується тег …

a) FRAMESET

b) FRAME

c) LINK

d) ROWS

3) Які атрибути може вміщувати тег FRAME?

a) SRC

b) HREF

c) TARGET

d) NAME

4) Які значення можна використовувати при поділі сторінки на фрейми?

a) 40%

b) *

c) ?

d) 120%

e) 200

5) Для переходу по гіперпосиланню до іншого фрейму потрібно …

a) використати тег FRAME

b) звернутися до фрейму за допомогою атрибуту TARGET

c) попередньо привласнити ім’я фрейму (атрибут NAME), звернутися до

фрейму за допомогою атрибуту TARGET

d) звернутися до фрейму за допомогою атрибуту NAME

6) Каскадні листи стилів CSS використовуються для …

a) застосування подібних засобів оформлення до різних документів одно-

го сайту

b) швидкого та зручного змінювання зовнішнього вигляду документа

c) зменшення розміру HTML – документів

7) Що таке оголошення згідно синтаксису листа стилю?

a) атрибут форматування і його значення

b) селектор

c) клас

8) Які способи використання таблиць стилів Вам відомі?

a) глобальні зв’язані таблиці стилів

b) локальні таблиці стилів

c) зв’язані таблиці стилів

d) глобальні таблиці стилів

26

9) Які способи визначення стилів коректні?

a) H2.normal { color:black; font-style:normal;}

b) .red { color:red }

c) BODY.STL{font-size:xx-large color:blue border-style:double}

d) stblue{color:blue; border-style:solid;}

10) Значення якої властивості слід встановити для того, щоб встановити

напівжирний шрифт?

a) font-size

b) font-family

c) font-weight

d) font-style

11) Для чого використовується властивість text-align?

a) для вирівнювання тексту по горизонталі

b) для вирівнювання тексту по вертикалі

c) для зміни регістрів

12) Для підключення зв’язаної таблиці стилів використовується тег …

a) А

b) HREF

c) LINK

13) Яке розширення повинен мати файл з таблицею стилів?

a) css

b) html

c) exe

d) htm

14) Який атрибут використовується для застосування певного стилю до

фрагменту документа?

a) STYLE

b) CLASS

c) ID

15) Для чого використовується атрибут STYLE?

a) для створення внутрішніх стилів

b) для застосування певного класу, описаного у зовнішній таблиці стилів

c) для застосування певного стилю, описаного у глобальній таблиці сти-

лів

27

Змістовий модуль 2. Розширювана мова розмітки XML,

обробка XML – документів

Лабораторна робота №3

Тема: Створення XML – документів, опис шаблону документа.

Мета: навчитись створювати XML - документи, описувати шаблони докуме-

нтів DTD у XML – документах, а також у зовнішніх файлах, переві-

ряти правильність і валідність XML – документів, використовувати

таблиці стилів CSS для демонстрації вмісту XML – документів.

Програмне ____________забезпечення: операційна система Windows, браузер Internet

Explorer, програма Open XML Editor.

Завдання

1. Виконати практичний приклад створення XML – документа і роботи з

ним.

2. Виконати практичну частину лабораторної роботи у відповідності до

індивідуального варіанту.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист;

 роздруковані документи:

a. XML – документ;

b. XML – документ із внутрішнім DTD;

c. XML – документ із зовнішнім DTD;

d. файл зовнішнього шаблону документа;

e. XML – документ з підключеною таблицею стилів у вікні брау-

зера і у вигляді коду;

f. таблиця стилів CSS.

 опис процесу перевірки правильності і валідності XML - документа.

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад роботи з XML – документом

У прикладі розглядається створення і робота з XML - документом, у

якому міститься інформація про співробітників підприємства. XML – доку-

мент має структуру, подану на рис. 3.1.

1. Завантажте програму Блокнот. У середовищі програми Блокнот введіть

такий уміст XML – документа:

<?xml version="1.0" encoding="UTF-8"?>

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

<fname>Максим</fname>

28

Рисунок 3.1 – Структура XML – документа – приклада

Співробітники

employees

Співробітник 1

employee

Співробітник 2

Employee . . .

СпівробітникN

Employee . . .

Атрибут

Табельний номер

sheetnumber

Посада

post

Освіта

education

Оклад

salary

Кількість дітей

children

Ім’я

name

Прізвище

lname

Ім’я

fname

По батькові

mname

<mname>Іванович</mname></name>

<post>директор</post>

<education>вище</education>

<salary>3000</salary>

<children>2</children>

</employee>

<employee sheetnumber="133">

<name><lname>Головченко</lname>

<fname>Оксана</fname>

<mname>Степанівна</mname></name>

<post>головний бухгалтер</post>

<education>вище</education>

<salary>2500</salary>

<children>1</children>

</employee>

</employees>

Коментар:

1.1. Перший рядок документа – оголошення XML – документа. Атрибут

version визначає, що документ створено версією 1.0 мови XML, атрибут

encoding – що використовується стандарт кодування символів UTF-8.

1.2. Елементи документа визначаються відповідними тегами – іменами еле-

ментів. Кореневий елемент документа <employees> вміщує усі підпо-

рядковані елементи <employee>, яким у свою чергу підпорядковуються

елементи <name>, <post>, <education>, <salary>, <children> . Еле-

мент <employee> має атрибут sheetnumber – табельний номер.

1.3. Елементу <name> в свою чергу підпорядковані елементи <lname>,

<fname> і <mname>.

2. Збережіть документ у окремій папці з ім’ям employees.xml (обов’язково

потрібно визначати тип файлу – всі файли, кодування - UTF-8).

3. Розчиніть XML - документ employees.xml у вікні браузера ІЕ. Документ

буде виглядати так:

30

4. Скопіюйте файл employees.xml у файл з ім’ям employees1.xml у тій самій

папці. Для опису шаблону документа DTD всередині XML – документа

розчиніть файл employees1.xml у програмі Блокнот або за допомогою ко-

манди Вид – Просмотр HTML – кода у програмі ІЕ. Відредагуйте вміст

документа в такий спосіб:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE employees [

<!ELEMENT employees (employee+)>

<!ELEMENT employee (name, post, education, salary, children)>

<!ATTLIST employee sheetnumber CDATA #REQUIRED>

<!ELEMENT name (lname, fname, mname)>

<!ELEMENT lname (#PCDATA)>

<!ELEMENT fname (#PCDATA)>

<!ELEMENT mname (#PCDATA)>

<!ELEMENT post (#PCDATA)>

<!ELEMENT education (#PCDATA)>

<!ELEMENT salary (#PCDATA)>

<!ELEMENT children (#PCDATA)>

]>

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

<fname>Максим</fname>

<mname>Іванович</mname></name>

31

<post>директор</post>

<education>вище</education>

<salary>3000</salary>

<children>2</children>

</employee>

<employee sheetnumber="133">

<name><lname>Головченко</lname>

<fname>Оксана</fname>

<mname>Степанівна</mname></name>

<post>головний бухгалтер</post>

<education>вище</education>

<salary>2500</salary>

<children>1</children>

</employee>

</employees>

Коментар:

4.1. До документа додано опис шаблону DTD. Структура документа опису-

ється за допомогою тегу <!DOCTYPE>, у якому визначається кореневий

елемент employees.

4.2. Всередині тегу <!DOCTYPE> описуються елементи і атрибути докуме-

нта, порядок вкладеності елементів. Зокрема запис

<!ELEMENT employees (employee+)>

означає, що елементові employees підпорядковані елементи employee,

яких може бути у документові скільки завгодно, однак не менше одного

(індикатор вкладень +).

4.3. Елементові employee підпорядковані елементи name, post, education,

salary і children

(<!ELEMENT employee (name, post, education, salary, children) >).

4.4. Елемент employee також має атрибут sheetnumber, для якого визначено

текстовий тип даних (CDATA), атрибут є обов’язковим (#REQUIRED).

4.5. Елементові name підпорядковані елементи lname, fname, mname.

4.6. Елементи документа найнижчого рівня post, education, salary, children,

lname, fname, mname визначено як такі, що містять текстову інформацію

(#PCDATA).

5. Збережіть нову редакцію документа employees1.xml, розчиніть документ

у браузері ІЕ. Під час розчинення документа відбувається перевірка його

правильності – синтаксичної коректності. Якщо синтаксичні помилки ви-

явлено, то виводяться відповідні інформаційні повідомлення. У зворот-

ному випадку (коли помилок немає) документ виводиться у звичайний

спосіб.

6. Для контролю валідності документа (перевірка відповідності вмісту до-

кумента описаному шаблону) завантажте програму Open XML Editor. У

вікні XML – редактору розкрийте файл employees1.xml (команда File –

Open).

32

Увага! Ім’я файлу та маршрут пошуку файлу повинні визначатися буквами

латинського алфавіту.

Подайте команду меню Tools – Check Validity. Якщо отримано повідом-

лення «The document is valid», вміст документа відповідає описаній струк-

турі, інакше будуть виведені повідомлення про помилки, які слід випра-

вити і повторити процес перевірки.

7. Шаблон документа може бути описано також у зовнішньому файлі. Це

дає можливість контролювати різні, однак аналогічні за змістом, файли на

відповідність певній структурі (наприклад, звіти про фінансові результа-

ти, про прибуток тощо). Скопіюйте файл employees1.xml у файл з ім’ям

employees2.xml у тій самій папці. Відредагуйте файл таким чином:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE employees SYSTEM "DTDFILE.DTD">

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

. . .

Коментар:

7.1. Тег <!DOCTYPE> тепер посилається для опису кореневого елемента і

всіх вкладених елементів на зовнішній файл DTDFILE.DTD.

8. Створіть за допомогою програми Блокнот файл DTDFILE.DTD у власній

папці з таким умістом:

<!ELEMENT employees (employee+)>

<!ELEMENT employee (name, post, dates, education, salary, children)>

<!ATTLIST employee sheetnumber CDATA #REQUIRED>

<!ELEMENT name (lname, fname, mname)>

<!ELEMENT lname (#PCDATA)>

<!ELEMENT fname (#PCDATA)>

<!ELEMENT mname (#PCDATA)>

<!ELEMENT post (#PCDATA)>

<!ELEMENT education (#PCDATA)>

<!ELEMENT salary (#PCDATA)>

<!ELEMENT children (#PCDATA)>

9. Для перевірки правильності документа розчиніть файл employees2.xml у

браузері ІЕ.

10. Для демонстрації XML – документа з використанням таблиці стилів CSS

створіть у власній папці за допомогою програми Блокнот файл mystyle.css

з таким умістом:

name {display: block; color:blue; font-size:20pt;

font-weight:bolder; font-style:italic}

post {display: inline; color:green; font-size:16pt}

education {display: inline; color:green; font-size:16pt}

salary {display: block; color:red; font-size:16pt}

children {display: block; color:red; font-size:16pt}

33

Коментар:

10.1. У файли описуються стилі, з використанням яких буде виводитися вміст

певних елементів документа, а також підпорядкованих їм елементів,

так:

 елементи, підпорядковані елементові name, виводяться блоком (в один

рядок), синім кольором, шрифтом 20 пунктів, жирним шрифтом, курси-

вом;

 елемент post – у рядок, зеленим кольором, шрифтом 16 пунктів,

 елемент education – у рядок, зеленим кольором, шрифтом 16 пунктів,

 елемент salary – з нового рядка, червоним кольором, шрифтом 16 пунктів,

 елемент children – з нового рядка, червоним кольором, 16 пунктів.

11. Для підключення таблиці стилів CSS скопіюйте файл employees2.xml у

файл з ім’ям employees3.xml у тій самій папці. Відредагуйте файл

employees3.xml таким чином:

<?xml version="1.0" encoding="UTF-8"?>

<?xml:stylesheet type="text/css" href="mystyle.css"?>

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

Коментар:

11.1. У другому рядку підключається таблиця стилів, що міститься у файлі

mystyle.css.

12. Розчиніть файл employees3.xml у браузері ІЕ. Тепер він виглядатиме так:

13. Для подальшого знайомства з XML – технологіями додайте до файлу

employees.xml відомості ще про п’ятьох співробітників (наприклад, як у

додатку В).

34

Індивідуальні завдання

за темою «Створення XML – документів, опис шаблону документа»

Створити XML – документ, що відповідає певній структурі згідно до ін-

дивідуального варіанту, у якому міститься не менш 8 елементів, підпорядко-

ваних кореневому елементу. Перевірити правильність XML – документа,

роздрукувати його.

Створити XML – документ із внутрішнім описом шаблону документа

DTD, перевірити правильність і валідність документа, роздрукувати XML –

документ.

Створити зовнішній файл DTD, підключити його до XML – документа,

перевірити правильність XML – документа, роздрукувати XML – документ і

файл з DTD.

Створити таблицю стилів CSS для демонстрації XML – документа, під-

ключити таблицю стилів до XML – документа, роздрукувати документ у вік-

ні браузера і у вигляді коду, роздрукувати таблицю стилів.

Варіант №1

Створити XML – документ Drugstores.xml такої структури:

Аптеки

Аптека (атрибут -

найменування)

Адреса

Директор

Ліки

Препарат

Найменування

Ціна

. . .

Препарат

Найменування

Ціна

Дохід

Кількість

працюючих

35

Варіант №2

Створити XML – документ Confectionery_factories.xml такої структури:

Кондитерські фабрики

Кондитерська фабрика (атрибут - код по ЄДРПОУ)

Найменування

Адреса

Вироби

Продукція

Найменування

Ціна

. . .

Продукція

Найменування

Ціна

Дохід

Прибуток

Варіант №3

Створити XML – документ Banks.xml такої структури:

Банки

Банк (атрибут - код МФО)

Найменування

Адреса

Керівництво

Директор

Головний бухгалтер

Кількість працюючих

Капітал

Фінансовий результат

36

Варіант №4

Створити XML – документ Trading_enterprises.xml такої структури:

Підприємства торгівлі

Магазин (атрибут - код по ЄДРПОУ)

Найменування

Адреса

Товари

Товар

Найменування

Ціна

. . .

Товар

Найменування

Ціна

Товарообіг

Прибуток

Варіант №5

Створити XML – документ Travel_companies.xml такої структури:

Туристичні фірми

Туристична фірма (атрибут - найменування)

Адреса

Телефон

e-mail

Співробітники

Менеджер

. . .

Менеджер

Дохід

Кількість клієнтів за рік

37

Варіант №6

Створити XML – документ Іndustry_enterprises.xml такої структури:

Виробничі підприємства

Підприємство (атрибут - код по ЄДРПОУ)

Найменування

Адреса

Вироби

Продукція

Найменування

Ціна

. . .

Продукція

Найменування

Дохід

Ціна

Виробничі витрати

Варіант №7

Створити XML – документ Cinemas.xml такої структури:

Кінотеатри

Кінотеатр (атрибут - код по ЄДРПОУ)

Найменування

Адреса

Контакти

Телефон

Web - сайт

Дохід за рік

Кількість відвідувачів за рік

Кількість працюючих

38

Варіант №8

Створити XML – документ Wholesale_trade.xml такої структури:

Підприємства оптової торгівлі

Оптова база (атрибут - найменування)

Адреса

Телефон

Товари

Товар

Найменування

Ціна

. . .

Товар

Найменування

Товарообіг

Ціна

Витрати обігу

Варіант №9

Створити XML – документ Restaurants.xml такої структури:

Ресторани

Ресторан (атрибут - найменування)

Категорія

Адреса

Контакти

Телефон

e-mail

Кількість працюючих

Капітал

Прибуток

39

Варіант №10

Створити XML – документ Sales_of_cars.xml такої структури:

Магазини з продажу автомобілів

Магазин (атрибут - код по ЄДРПОУ)

Найменування

Адреса

Товари

Автомобіль (атрибут – фірма)

Модель

Ціна

. . .

Автомобіль (атрибут – фірма)

Дохід

Модель

Прибуток

Ціна

Кількість працюючих

Варіант №11

Створити XML – документ High_schools.xml такої структури:

Вузи

Вуз (атрибут - найменування)

Адреса

Спеціальності

Спеціальність

Найменування

Вартість навчання

. . .

Спеціальність

Найменування

Вартість навчання

Кількість викладачів

Кількість студентів

40

Варіант №12

Створити XML – документ Libraries.xml такої структури:

Бібліотеки

Бібліотека (атрибут - найменування)

Адреса

Директор

Контакти

Телефон

e-mail

Кількість працюючих

Кількість відвідувачів за рік

Кількість примірників

Приклад тесту

за темою «Створення XML – документів, опис шаблону документа»

1) Які ствердження правильні?

a) Теги XML описують атрибути документа

b) Мова XML призначена для опису даних

c) У мові XML використовуються заздалегідь визначені теги

d) Мова XML регістрозалежна

e) У мові XML можна створювати власні теги

2) Яка структура XML – документа?

a) Пролог, кореневий елемент документа

b) Пролог і основна частина

c) Оголошення документа, DTD, дерево елементів

3) Яких правил слід дотримуватися при створенні XML – документа?

a) У тегах визначається ім’я елемента, яке вводиться у кутових дужках

b) Назви XML – елементів можуть вміщувати букви будь-якого алфавіту,

цифри, пробіл, знак підкреслення

c) Кожен документ може мати один або декілька кореневих елементів

d) Послідовність тегів повинна відображати структуру документа

e) Кожний відкриваючий тег повинен мати закриваючий тег

4) Як переглянути уміст XML – документа?

a) За допомогою XML – редактора

b) За допомогою будь-якого браузера

c) За допомогою текстового редактора

41

5) Яке розширення повинен мати файл з XML – документом?

a) css

b) xml

c) dtd

d) htm

6) Які варіанти оголошення документа коректні?

a) <xml version="1.0" encoding="UTF-8">

b) <?xml version="1.1" encoding="UTF-8"?>

c) <?xml version="1.0"?>

7) Які теги для опису елементів документа коректні?

a) <example 1>

b) <студенти>

c) <example />

d) <example code=”32”>

e) <xml_example>

8) Який XML – документ називається правильним?

a) Той, який відповідає DTD

b) Той, який відповідає синтаксичним правилам побудування XML – до-

кументів

c) Той, який перевірено на валідність за допомогою XML - редактора

9) Шаблон документа DTD використовують для …

a) перевірки документа на відповідність структурі, описаній у DTD

b) визначення структури документа для його обробки різними програма-

ми

c) перевірки валідності документа

d) визначення типів даних елементів для роботи з документом браузера

10) Який індикатор вкладень потрібно визначити у DTD, щоб зазначити,

що елемент є необов’язковим, може зустрічатися в документі довільне

число раз?

a) +

b) ?

c) *

11) Шаблон документа описується за допомогою тегу …

a) <!DOCTYPE>

b) <!ELEMENT>

c) <!ATLIST>

12) Які типи даних елементів можна визначити у DTD?

a) #CPDATA

b) CDATA

c) ANY

d) REQUIRED

13) Які значення атрибутів за замовчуванням можна визначати у DTD?

a) #FIXED

b) #CPDATA

42

c) #IMPLIED

d) #REQUIRED

e) #EMPTY

14) Які теги підключення файлу зовнішнього DTD коректні?

a) <!DOCTYPE students SYSTEM "file.xml">

b) <!DOCTYPE students SYSTEM "file.dtd">

c) <!DOCTYPE students href="file.dtd">

15) З якою метою використовуються таблиці стилів CSS?

a) Для демонстрації структури XML – документа

b) Для демонстрації умісту текстових вузлів XML – документа

c) Для демонстрації структури і вмісту XML – документа

43

Лабораторна робота №4

Тема: Розробка XML – схем.

Мета: навчитись створювати схеми XML – документів стандарту XML -

Schema, перевіряти XML – документи на відповідність схемі.

Програмне забезпечення: операційна система Windows, браузер Internet

Explorer, програма XML – Validator

(http://xmltools.corefiling.com/schemaValidate).

Завдання

1. Виконати практичний приклад створення схеми XML – документа .

2. Виконати практичну частину лабораторної роботи у відповідності до

індивідуального варіанту.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист;

 роздрукована схема XML – документа.

 опис процесу перевірки XML – документа на відповідність схемі.

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад створення схеми XML – документа

1. У середовищі програми Блокнот введіть уміст XML – схеми документа

employees.xml:

<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xsd:element name="employees" type="stemployees" />

<xsd:complexType name="stemployees" >

<xsd:sequence>

<xsd:element name="employee" type="stemployee"

minOccurs="1" maxOccurs="unbounded" />

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="stemployee" >

<xsd:sequence>

<xsd:element name="name" type="stname" />

<xsd:element name="post" type="xsd:string"/>

<xsd:element name="education" type="xsd:string"/>

<xsd:element name="salary" type="xsd:string"/>

<xsd:element name="children" type="xsd:string"/>

</xsd:sequence>

<xsd:attribute name="sheetnumber" type="xsd:string"/>

</xsd:complexType>

<xsd:complexType name="stname" >

44

<xsd:sequence>

<xsd:element name="lname" type="xsd:string"/>

<xsd:element name="fname" type="xsd:string"/>

<xsd:element name="mname" type="xsd:string"/>

</xsd:sequence>

</xsd:complexType>

</xsd:schema>

Коментар:

1.1. XML – схема є правильно оформленим XML – документом, тому вона

починається з оголошення XML – документа <?xml version="1.0"?>.

1.2. Кореневим елементом документа є елемент <xsd:schema>, у якому ви-

значається простір імен

xmlns:xsd="http://www.w3.org/2001/XMLSchema".

1.3. Далі у схемі описується кореневий елемент документа employees.xml

employees, для якого визначено тип даних "stemployees".

1.4. "stemployees" – це комплексний тип даних, який включає елементи

employee, що в свою чергу мають тип даних "stemployee" і для яких ви-

значено мінімальну кількість появ 1 (minOccurs="1") , максимальне чис-

ло появ не обмежено (maxOccurs="unbounded").

1.5. Комплексний тип даних "stemployee" описує елементи, підпорядковані

елементові employee, а також атрибут елемента employee "sheetnumber".

Елементові employee підпорядковані такі елементи:

 name – тип даних "stname";

 post – тип даних рядковий "xsd:string";

 education – тип даних рядковий "xsd:string";

 salary – тип даних рядковий "xsd:string";

 children – тип даних рядковий "xsd:string".

Атрибут "sheetnumber" також описано як рядкові дані.

1.6. Комплексний тип даних "stname" описує вкладені елементи елемента

name:

 lname - тип даних рядковий "xsd:string";

 fname - тип даних рядковий "xsd:string";

 mname - тип даних рядковий "xsd:string".

2. Збережіть документ у тій самій папці, де знаходиться документ

employees.xml, з ім’ям MySchema.xsd.

3. Розкрийте документ employees.xml у програмі Блокнот, додайте до коре-

невого елемента employees визначеня простору імен і посилання на XML

– схему, збережіть документ.

<?xml version="1.0" encoding="UTF-8"?>

<employees xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance"

xsd:noNamespaceSchemaLocation="MySchema.xsd">

<employee sheetnumber="132">

<name><lname>Петренко</lname>

45

<fname>Максим</fname>

<mname>Іванович</mname></name>

<post>директор</post>

. . .

4. Розчиніть документ employees.xml у браузері ІЕ для синтаксичної переві-

рки.

5. Для перевірки валідності XML – документа скористайтеся програмою

XML – Validator за адресою http://xmltools.corefiling.com/schemaValidate.

У полі XML Schema визначить файл зі схемою MySchema.xsd, у полі

XML Instance – файл з XML – документом employees.xml, натисніть на

кнопці Validate, далі для виведення результатів перевірки валідності на-

тисніть на посиланні Click here. Якщо отримано повідомлення VALID,

документ відповідає схемі. У іншому випадку ознайомтесь з лістингом

помилок, виправте їх, повторіть перевірку на валідність.

6. Додайте до схеми засоби контролю умов на значення елементів XML –

документа. Відредагуйте файл MySchema.xsd так:

<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xsd:element name="employees" type="stemployees" />

<xsd:complexType name="stemployees" >

<xsd:sequence>

<xsd:element name="employee" type="stemployee"

minOccurs="0" maxOccurs="unbounded" />

</xsd:sequence>

</xsd:complexType>

<xsd:complexType name="stemployee" >

<xsd:sequence>

<xsd:element name="name" type="stname" />

<xsd:element name="post" type="xsd:string"/>

<xsd:element name="education" type="steducation"/>

<xsd:element name="salary" type="stsalary"/>

<xsd:element name="children" type="xsd:integer"/>

</xsd:sequence>

<xsd:attribute name="sheetnumber" type="xsd:string"/>

</xsd:complexType>

<xsd:complexType name="stname" >

<xsd:sequence>

<xsd:element name="lname" type="xsd:string"/>

<xsd:element name="fname" type="xsd:string"/>

<xsd:element name="mname" type="xsd:string"/>

</xsd:sequence>

</xsd:complexType>

46

<xsd:simpleType name="steducation" >

<xsd:restriction base="xsd:string">

<xsd:enumeration value="вища"/>

<xsd:enumeration value="середня"/>

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="stsalary" >

<xsd:restriction base="xsd:integer">

<xsd:minInclusive value="800"/>

<xsd:maxInclusive value="20000"/>

</xsd:restriction>

</xsd:simpleType>

</xsd:schema>

Коментар:

6.1. У схемі тепер для елемента education визначено тип даних "steducation".

Тип даних "steducation" описано як простий тип даних (xsd:simpleType).

Всередині опису типу "steducation" визначено за допомогою тегів

<xsd:restriction> і <xsd:enumeration>, що дані типу "steducation" (зокрема

елемент education) мають рядковий тип даних і можуть приймати лише

одне з двох припустимих значень "вища" або "середня".

6.2. Для елемента salary визначено простий тип даних "stsalary" – числові

дані у діапазоні від 800 (<xsd:minInclusive value="800"/>) до 20000

(<xsd:maxInclusive value="20000"/>).

7. Збережіть нову редакцію схеми MySchema.xsd.

8. Перевірте документ employees.xml на відповідність схемі за допомогою

програми XML – Validator. Для перевірки дії умов на значення відреда-

гуйте документ employees.xml так, що він не відповідав схемі, повторіть

перевірку. Виправте XML – документ employees.xml так, щоб він був ва-

лідним.

Індивідуальні завдання

за темою «Розробка XML – схем»

Варіант №1

Розробити схему XML – документа Drugstores.xml. У схемі передбачити

такий контроль умісту елементів документа:

адреса повинна вміщувати назву міста – Донецьк;

кількість працюючих повинна бути у діапазоні від 3 до 40.

Варіант №2

Розробити схему XML – документа Confectionery_factories.xml. У схемі

передбачити такий контроль умісту елементів і атрибутів документа:

код ЄДРПОУ повинен вміщувати лише 8 цифр;

47

ціна продукції повинна бути у діапазоні від 5 до 200.

Варіант №3

Розробити схему XML – документа Banks.xml. У схемі передбачити та-

кий контроль умісту елементів і атрибутів документа:

код МФО повинен вміщувати лише 6 цифр;

розмір капіталу повинен знаходитися у діапазоні від 5000000 до

20000000.

Варіант №4

Розробити схему XML – документа Trading_enterprises.xml. У схемі пе-

редбачити такий контроль умісту елементів і атрибутів документа:

код ЄДРПОУ повинен вміщувати лише 8 цифр;

ціна товарів повинна бути у діапазоні від 1 до 50000.

Варіант №5

Розробити схему XML – документа Travel_companies.xml. У схемі пе-

редбачити такий контроль умісту елементів документа:

адреса повинна вміщувати назву міста – Донецьк;

кількість клієнтів за рік повинна бути у діапазоні від 100 до 1000000.

Варіант №6

Розробити схему XML – документа Іndustry_enterprises.xml. У схемі пе-

редбачити такий контроль умісту елементів і атрибутів документа:

код ЄДРПОУ повинен вміщувати лише 8 цифр;

дохід повинен бути у діапазоні від 500000 до 10000000.

Варіант №7

Розробити схему XML – документа Cinemas.xml. У схемі передбачити

такий контроль умісту елементів документа:

адреса повинна вміщувати назву міста – Донецьк;

кількість відвідувачів за рік повинна бути у діапазоні від 10000 до

10000000.

Варіант №8

Розробити схему XML – документа Wholesale_trade.xml. У схемі перед-

бачити такий контроль умісту елементів документа:

номер телефону повинен відповідати шаблону (062) ###-##-##;

товарообіг повинен бути у діапазоні від 10000 до 10000000.

Варіант №9

Розробити схему XML – документа Restaurants.xml. У схемі передбачи-

ти такий контроль умісту елементів документа:

48

елемент «категорія» повинен приймати лише одне з 5-ти визначених

значень;

кількість працюючих повинна бути у діапазоні від 10 до 500.

Варіант №10

Розробити схему XML – документа Sales_of_cars.xml. У схемі передба-

чити такий контроль умісту елементів документа:

адреса повинна вміщувати назву міста – Донецьк;

ціна товарів повинна бути у діапазоні від 70000 до 10000000.

Варіант №11

Розробити схему XML – документа High_schools.xml. У схемі передба-

чити такий контроль умісту елементів документа:

елемент «адреса» повинен вміщувати назву міста – Донецьк;

кількість викладачів повинна бути у діапазоні від 50 до 1000.

Варіант №12

Розробити схему XML – документа Libraries.xml. У схемі передбачити

такий контроль умісту елементів документа:

номер телефону повинен відповідати шаблону (062) ###-##-##;

кількість працюючих повинна бути у діапазоні від 5 до 200.

Приклад тесту

за темою «Розробка XML – схем»

1) Для чого у XML – документах використовуються простори імен?

a) Для забезпечення унікальності імені кожного документа

b) Для забезпечення унікальності імені кожного атрибута

c) Для забезпечення унікальності імені кожного елемента

2) Для чого використовуються XML – схеми?

a) Для синтаксичного контролю документа

b) Для контролю на відповідність документа певній структурі, правиль-

ності типів даних

c) Для контролю на відповідність документа певній структурі, правиль-

ності типів даних, умов на значення

3) Хто є розробником мови XSD (XML Schema Definition)?

a) консорціум Unicode

b) фірма Microsoft

c) консорціум W3C

4) У схемі XML – документа описуються …

a) назви елементів і атрибутів, структура документа

b) словник, структура документа, типи даних

c) назви елементів і атрибутів, типи даних

5) Яке розширення повинен мали файл з XML – схемою?

a) xsd

49

b) dtd

c) xdr

d) xml

6) Можна визначати простори імен у XML – схемах довільним чином?

a) так

b) ні

7) Які дані можна використовувати у XML – схемах?

a) Комплексний тип даних

b) xsd:boolean

c) xsd:integer

d) xsd:PCDATA

e) xsd:date

8) Для визначення переліку припустимих значень для елементів або атрибу-

тів у XML – схемах використовується …

a) тег xsd:restriction

b) теги xsd:restriction, xsd:enumeration

c) теги xsd:restriction, xsd:pattern

9) Для чого у XML – схемах використовуються регулярні вирази?

a) Для визначення виду і формату символів елемента або атрибута за ша-

блоном

b) Для визначення переліку припустимих значень елемента або атрибута

c) Для визначення діапазону припустимих значень елемента або атрибута

d) Для визначення довжини елемента або атрибута

10) Які символи можна використовувати у шаблонах?

a) *

b) {}

c) /A

d) \D

50

Лабораторна робота №5

Тема: Мова XPath, мова XSLT.

Мета: навчитись обирати певні вузли XML – документа з використанням

мови XPath, використовувати мову XSLT для перетворення XML –

документів на інші документи на прикладі HTML - документів.

Програмне забезпечення: операційна система Windows, браузер Internet

Explorer, програма XPath Visualiser, плагін iexmltls.

Завдання

1. Виконати приклад застосування мов XPath, XSLT для роботи з XML -

документами.

2. Виконати практичне завдання за індивідуальним варіантом.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист;

 сформовані XPath – вирази для вибору певних фрагментів XML – до-

кумента, опис перевірки процесу вибору за допомогою програми

XPath Visualiser;

 роздруковані таблиці стилів – XSLT – документи;

 роздруковані XML – документи у вікні браузера ІЕ;

 роздрукований XML – документ у HTML – коді з підключеною табли-

цею стилів (достатньо один).

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад використання мов XPath, XSLT

1. Для знайомства з мовою XPath (XML Path Language) завантажте програму

XPath Visualiser (розчиніть файл XPathMain.htm). Програма надає можли-

вість навчитися створювати XPath – вирази для вибору певних фрагментів

XML – документа у зручний і наочний спосіб. Якщо браузер ІЕ забороняє

виконання сценаріїв, клацніть на відповідній області діалогу і подайте

команду Разрешить заблокированное содержимое.

2. За допомогою кнопки Обзор оберіть файл employees.xml, натисніть на

кнопці Process File. Тепер у вікні програми відображається вміст файлу

employees.xml.

3. У поле XPath expression введіть вираз

employees/employee/descendant::*

і натисніть на кнопці Select Nodes. Програма виділила жовтим кольором

вузли XML – документа, які відповідають XPath – виразу – обрала всі ву-

зли документа - нащадків вузлів employee, що підпорядковані вузлу

employees. Вікно програми XPath Visualiser тепер виглядає так:

51

4. У поле XPath expression введіть вираз

//name/descendant::*

і натисніть на кнопці Select Nodes. Тепер програма знайшла у дереві до-

кумента всі вузли name (// у виразі) і виділила жовтим кольором вузли, які

є нащадками вузла nameь – вузли lname, fname, mnane.

5. У поле XPath expression введіть вираз

//lname/parent::*

і натисніть на кнопці Select Nodes. Програма знайшла у дереві документа

всі вузли lname (// у виразі) і виділила жовтим кольором вузли, які є бать-

ківськими вузлами вузла lname - вузли name.

6. У поле XPath expression введіть вираз

//lname/ancestor::*

52

натисніть на кнопці Select Nodes. Програма знайшла у дереві документа

всі вузли lname і виділила жовтим кольором усі батьківські вузли до ко-

реневого елемента по відношенню до вузла lname - вузли name, вузли

employee і вузол employees.

7. Завершіть роботу з програмою XPath Visualiser.

8. Для знайомства з розширюваною мовою стилів для перетворень XSLT

(eXtensible Stylesheet Language for Transformations) у середовищі програ-

ми Блокнот введіть уміст документа MyStyle1.xsl для перетворення XML

– документа employees.xml на HTML – документ:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body>

<h2>Інформація про співробітників підприємства</h2> <br/>

<h3>Кількість співробітників:

<xsl:value-of select="count(//employee)"/></h3>

<table border="1">

<tr align="center">

<td> П І Б</td>

<td> Посада </td>

<td> Оклад, грн. </td>

</tr>

<xsl:apply-templates select="//employee"/>

</table>

</body>

</html>

</xsl:template>

<xsl:template match="employee">

<tr>

<td> <xsl:value-of select="name"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="salary"/> </td>

</tr>

</xsl:template>

</xsl:stylesheet>

Коментар:

8.1. XSLT – документ – це правильно оформлений XML – документ, тому

він починається з оголошення XML – документа

<?xml version="1.0" encoding="UTF-8">.

53

8.2. Кореневим елементом документа є елемент <xsl:stylesheet>, який визна-

чає, що далі у документі знаходиться таблиця стилів, написана мовою

XSLT версії 1.0, елемент також задає простір імен.

8.3. Елементові <xsl:stylesheet> підпорядковані два елементи <xsl:template>,

що визначають шаблонні правила.

8.4. Перший елемент <xsl:template> визначає шаблонне правило, за яким

формується вихідний документ – файл у форматі HTML. Всередині кон-

тейнеру <body> формується заголовок таблиці, виводиться інформація

про кількість елементів employee у вхідному документі. Ці данні оби-

раються за допомогою елемента <xsl:value-of>, атрибут select обирає і

підраховує з використанням функції count() кількість вузлів, що відпо-

відають XPath – виразу //employee – кількість співробітників.

8.5. У вихідному документі також формується шапка таблиці зі стовпцями

ПІБ, посада, оклад, для виведення інформаційних рядків застосовується

шаблонне правило для всіх елементів employee вхідного документа –

елемент <xsl:apply-templates>.

8.6. Друге шаблонне правило застосовується до вхідного документа, зокре-

ма до всіх вузлів починаючи з елементів employee - <xsl:template

match="employee">. У ньому описано формування інформаційних ряд-

ків таблиці, які містять значення елементів name (всіх підпорядкованих

елементів), post і salary.

9. Відредагуйте документ employees.xml так, щоб до нього підключалась

таблиця стилів MyStyle1.xsl:

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="MyStyle1.xsl"?>

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

<fname>Максим</fname>

<mname>Іванович</mname></name>

<post>директор</post>

. . .

Коментар:

9.1. Таблиця стилів підключається за допомогою команди обробки

<?xml-stylesheet type="text/xsl" href="MyStyle1.xsl"?>

у прологовій частині документа, власно атрибут href визначає конкрет-

ний файл – таблицю стилів.

10. Розчиніть файл employees.xml у браузері ІЕ. У вікні браузера документ

буде виглядати так:

54

11. Якщо у вікні браузера ІЕ подати команду Вид – Просмотр HTML – кода,

то буде виведено вміст вхідного файлу employees.xml. Для перегляду коду

вихідного файлу на комп’ютер можна встановити програму iexmltls, яка

розширює базові можливості програми ІЕ. У випадку коли цю програму

встановлено, за допомогою команди контекстного меню документа View

XSL Output можна вивести вихідний документ у HTML коді, який вигля-

датиме так:

55

12. Як і будь-який HTML – документ щойно створений документ може вмі-

щувати різні параметри форматування, визначені у тому числі і за допо-

могою таблиць стилів CSS. Відредагуйте файл MyStyle1.xsl в такий спо-

сіб:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body style="background:wheat">

<h2>Інформація про співробітників підприємства</h2> <br/>

<h3>Кількість співробітників:

<xsl:value-of select="count(//employee)"/></h3>

<table border="1">

<tr style="background:silver; color:blue; text-align:center; font-size:16pt;

font-weight:bolder">

<td> П І Б</td>

<td> Посада </td>

<td> Оклад, грн. </td>

</tr>

56

<xsl:apply-templates select="//employee"/>

</table>

</body>

</html>

</xsl:template>

<xsl:template match="employee">

<tr style="background:mintcream; color:darkgreen; font-size:14pt">

<td> <xsl:value-of select="name"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="salary"/> </td>

</tr>

</xsl:template>

</xsl:stylesheet>

Коментар:

12.1. Атрибут style тегів <body>, <tr> надає можливість застосування локаль-

них стилів CSS для оформлення документа.

13. Документ employees.xml у вікні браузера тепер виглядає так:

57

14. При формуванні вихідних документів на основі вхідних XML - докумен-

тів з використанням мови XSLT можна використовувати також елемент

<xsl:if> для визначення умови відбору інформації. Розглянемо застосу-

вання елемента <xsl:if> на прикладі документа MyStyle2.xsl:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body>

<h2>Інформація про співробітників підприємства, що мають дітей

</h2> <br/>

<table border="1">

<tr align="center">

<td> П І Б</td>

<td> Посада </td>

<td> Кількість дітей </td>

</tr>

<xsl:apply-templates select="//employee"/>

</table>

</body>

</html>

</xsl:template>

<xsl:template match="employee">

<xsl:if test="(children)>0">

<tr>

<td> <xsl:value-of select="name"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="children"/> </td>

</tr>

</xsl:if>

</xsl:template>

</xsl:stylesheet>

Коментар:

14.1. Документ формує вихідний HTML – файл, у якому міститься таблиця з

колонками ПІБ, посада, кількість дітей. Елемент <xsl:if> надає можли-

вість обрати відомості лише про тих співробітників, значення елемента

children яких більше 0.

15. Підключить таблицю стилів MyStyle2.xsl до файлу employees.xml, пере-

гляньте файл employees.xml у вікні браузера ІЕ, тепер документ виглядає

так:

58

16. Розглянемо ще один приклад застосування елемента <xsl:if> для вибору із

документа employees.xml інформації лише про співробітників, що мають

вищу освіту. Створіть файл MyStyle3.xsl з таким умістом:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body>

<h2>Інформація про співробітників підприємства з вищою освітою

</h2> <br/>

<table border="1">

<tr align="center">

<td> П І Б</td>

<td> Посада </td>

<td> Освіта </td>

</tr>

<xsl:apply-templates select="//employee"/>

</table>

</body>

</html>

</xsl:template>

<xsl:template match="employee">

<xsl:if test="(education)='вища'">

59

<tr>

<td> <xsl:value-of select="name"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="education"/> </td>

</tr>

</xsl:if>

</xsl:template>

</xsl:stylesheet>

17. Після підключення файлу MyStyle3.xsl до файлу employees.xml XML –

документ у вікні браузера виглядатиме так:

18. У XSLT – документах можна організувати розгалуження не лише за до-

помогою елемента <xsl:if>, а і з використанням елемента <xsl:choose> од-

разу по багатьох напрямках. Розглянемо такий приклад застосування еле-

мента <xsl:when>. У вихідному документі виводиться інформація про

оклади співробітників підприємства, при чому, якщо оклад менше 1000

грн., інформація виводиться червоним кольором на жовтому тлі, більше

1000 грн. але менше 2000 грн. – синім кольором, більше 2000 грн. – зеле-

ним кольором напівжирним шрифтом. Створіть файл MyStyle4.xsl з таким

умістом:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body>

<h2>Інформація про співробітників підприємства</h2> <br/>

<h3>Кількість співробітників:

60

<xsl:value-of select="count(//employee)"/></h3>

<table border="1">

<tr align="center">

<td> П І Б</td>

<td> Табельний номер</td>

<td> Посада </td>

<td> Оклад, грн. </td> </tr>

<xsl:apply-templates select="//employee"/>

</table>

</body>

</html>

</xsl:template>

<xsl:template match="employee">

<xsl:choose>

<xsl:when test="salary < 1000">

<tr style="color:red; background:yellow">

<td> <xsl:value-of select="name"/> </td>

<td align="center"> <xsl:value-of select="@sheetnumber"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="salary"/> </td>

</tr>

</xsl:when>

<xsl:when test="(salary > 1000) and (salary < 2000)">

<tr style="color:blue">

<td> <xsl:value-of select="name"/> </td>

<td align="center"> <xsl:value-of select="@sheetnumber"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="salary"/> </td>

</tr>

</xsl:when>

<xsl:when test="salary > 2000">

<tr style="color:green; font-weight:bold">

<td> <xsl:value-of select="name"/> </td>

<td align="center"> <xsl:value-of select="@sheetnumber"/> </td>

<td> <xsl:value-of select="post"/> </td>

<td align="center"> <xsl:value-of select="salary"/> </td>

</tr>

</xsl:when>

</xsl:choose>

</xsl:template>

</xsl:stylesheet>

Коментар:

61

18.1. Як видно з роздрукованого документа у шаблонному правилі, за яким

обробляється вхідний документ, використано елемент <xsl:choose>. Ко-

жна з можливих умов описується елементом <xsl:when>.

18.2. Зверніть увагу, що для формування логічних умов замість знаків порів-

няння слід використовувати ESCAPE – послідовності: < - <, > - >.

19. Після підключення файлу MyStyle4.xsl до файлу employees.xml він у вікні

браузера ІЕ виглядатиме так:

20. Мова XSLT надає можливість також обробити кожний вузол певного рів-

ня XML – документа із використанням елемента <xsl:for-each>. Щоб роз-

глянути приклад застосування елемента <xsl:for-each> створіть файл

MyStyle5.xsl з таким умістом:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

<body>

<h2>Список співробітників підприємства</h2> <br/>

62

<ol>

<xsl:for-each select="//employee">

<li> <xsl:value-of select="name"/> </li>

</xsl:for-each>

</ol>

</body>

</html>

</xsl:template>

</xsl:stylesheet>

Коментар:

20.1. Документ виводить список співробітників підприємства – обробляє ко-

жний елемент employee у дереві документа employees.xml.

21. Після підключення файлу MyStyle5.xsl до файлу employees.xml документ

у вікні браузера ІЕ виглядатиме так:

Індивідуальні завдання

за темою «Мова XPath, мова XSLT»

Варіант №1

Сформувати XPath – вирази для вибору в XML – документі

Drugstores.xml наступних вузлів:

атрибутів «найменування»;

усіх вузлів – нащадків елементів «Ліки»;

усіх батьківських вузлів елементів «Адреса».

Створити XSLT – документ для формування на основі файлу

Drugstores.xml HTML – документа, у якому міститься таблиця з такими сто-

63

впцями: найменування аптеки, адреса, дохід, кількість працюючих. Застосу-

вати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Drugstores.xml HTML – документа, у якому надається інформація про конк-

ретний препарат у різних аптеках міста. Дані повинні виводитися у вигляді

таблиці: заголовок – назва препарату, колонки – назва аптеки, адреса, ціна.

Створити XSLT – документ для формування на основі файлу

Drugstores.xml HTML – документа, у якому міститься список усіх аптек.

Варіант №2

Сформувати XPath – вирази для вибору в XML – документі

Confectionery_factories.xml наступних вузлів:

усіх вузлів – нащадків елементів «Вироби»;

усіх батьківських вузлів елементів «Дохід» до кореневого елемента;

усіх атрибутів «код по ЄДРПОУ».

Створити XSLT – документ для формування на основі файлу

Confectionery_factories.xml HTML – документа, у якому міститься таблиця з

такими стовпцями: найменування кондитерської фабрики, адреса, дохід,

прибуток. Застосувати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Confectionery_factories.xml HTML – документа, у якому надається інформа-

ція про продукцію конкретної фабрики. Дані повинні виводитися у вигляді

таблиці: заголовок – найменування фабрики, колонки – назва продукції, ціна.

Створити XSLT – документ для формування на основі файлу

Confectionery_factories.xml HTML – документа, у якому міститься список

усіх кондитерських фабрик з адресами у дужках.

Варіант №3

Сформувати XPath – вирази для вибору в XML – документі Banks.xml

наступних вузлів:

усіх вузлів – нащадків елементів «Керівництво»;

усіх батьківських вузлів елементів «Капітал» до кореневого елемента;

усіх вузлів – нащадків елементів «Банк».

Створити XSLT – документ для формування на основі файлу Banks.xml

HTML – документа, у якому міститься таблиця з такими стовпцями: на-

йменування, адреса, капітал, кількість працюючих. Застосувати таблиці сти-

лів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу Banks.xml

HTML – документа, у якому надається інформація про банки, капітал яких

перевищує 10 млн. грн. Дані повинні виводитися у вигляді таблиці з колон-

ками – найменування банку, код МФО, директор, капітал.

Створити XSLT – документ для формування на основі файлу Banks.xml

HTML – документа, у якому міститься список усіх банків з адресами у дуж-

ках.

64

Варіант №4

Сформувати XPath – вирази для вибору в XML – документі

Trading_enterprises.xml наступних вузлів:

усіх вузлів – нащадків елементів «Товари»;

усіх батьківських вузлів елементів «Товарообіг»;

усіх атрибутів «код по ЄДРПОУ».

Створити XSLT – документ для формування на основі файлу

Trading_enterprises.xml HTML – документа, у якому міститься таблиця з та-

кими стовпцями: найменування магазину, адреса, товарообіг, прибуток. За-

стосувати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Trading_enterprises.xml HTML – документа, у якому надається інформація

про конкретний товар у різних магазинах. Дані повинні виводитися у вигляді

таблиці: заголовок – найменування товару, колонки – найменування магази-

ну, адреса, ціна.

Створити XSLT – документ для формування на основі файлу

Trading_enterprises.xml HTML – документа, у якому міститься список усіх

магазинів з адресами у дужках.

Варіант №5

Сформувати XPath – вирази для вибору в XML – документі

Travel_companies.xml наступних вузлів:

усіх атрибутів «Найменування»;

усіх вузлів – нащадків елементів «Туристична фірма»;

усіх батьківських вузлів елементів «Дохід».

Створити XSLT – документ для формування на основі файлу

Travel_companies.xml HTML – документа, у якому міститься таблиця з таки-

ми стовпцями: найменування туристичної фірми, адреса, дохід, кількість

клієнтів за рік. Застосувати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Travel_companies.xml HTML – документа, у якому надається інформація про

туристичні фірми з найбільшим доходом. Дані повинні виводитися у вигляді

таблиці з колонками – найменування туристичної фірми, адреса, телефон,

дохід.

Створити XSLT – документ для формування на основі файлу

Travel_companies.xml HTML – документа, у якому міститься список усіх ме-

неджерів з найменуваннями туристичних фірм у дужках.

Варіант №6

Сформувати XPath – вирази для вибору в XML – документі

Іndustry_enterprises.xml наступних вузлів:

усіх вузлів – нащадків елементів «Вироби»;

усіх батьківських вузлів елементів «Дохід» до кореневого елемента;

усіх атрибутів «код по ЄДРПОУ».

65

Створити XSLT – документ для формування на основі файлу

Іndustry_enterprises.xml HTML – документа, у якому міститься таблиця з та-

кими стовпцями: найменування підприємства, адреса, дохід, виробничі ви-

трати. Застосувати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Іndustry_enterprises.xml HTML – документа, у якому надається інформація

про продукцію конкретного підприємства. Дані повинні виводитися у вигля-

ді таблиці: заголовок – найменування виробничого підприємства, колонки –

назва продукції, ціна.

Створити XSLT – документ для формування на основі файлу

Іndustry_enterprises.xml HTML – документа, у якому міститься список усіх

підприємств.

Варіант №7

Сформувати XPath – вирази для вибору в XML – документі Cinemas.xml

наступних вузлів:

усіх атрибутів «код по ЄДРПОУ»;

усіх вузлів – нащадків елементів «Кінотеатр»;

усіх батьківських вузлів елементів «Телефон».

Створити XSLT – документ для формування на основі файлу

Cinemas.xml HTML – документа, у якому міститься таблиця з такими стовп-

цями: найменування кінотеатру, телефон, web – сайт, дохід за рік, кількість

відвідувачів за рік. Застосувати таблиці стилів CSS для оформлення докуме-

нта.

Створити XSLT – документ для формування на основі файлу

Cinemas.xml HTML – документа, у якому надається інформація про кінотеа-

три з найбільшою кількістю працюючих. Дані повинні виводитися у вигляді

таблиці з колонками – найменування кінотеатру, дохід за рік, кількість пра-

цюючих.

Створити XSLT – документ для формування на основі файлу

Cinemas.xml HTML – документа, у якому міститься список усіх кінотеатрів з

адресами у дужках.

Варіант №8

Сформувати XPath – вирази для вибору в XML – документі

Wholesale_trade.xml наступних вузлів:

усіх вузлів – нащадків елементів «Оптова база»;

усіх батьківських вузлів елементів «Товари»;

усіх атрибутів «Найменування».

Створити XSLT – документ для формування на основі файлу

Wholesale_trade.xml HTML – документа, у якому міститься таблиця з такими

стовпцями: найменування оптової бази, адреса, телефон, товарообіг, витрати

обігу. Застосувати таблиці стилів CSS для оформлення документа.

66

Створити XSLT – документ для формування на основі файлу

Wholesale_trade.xml HTML – документа, у якому надається інформація про

конкретний товар на різних базах. Дані повинні виводитися у вигляді табли-

ці: заголовок – найменування товару, колонки – найменування оптової бази,

адреса, ціна.

Створити XSLT – документ для формування на основі файлу

Wholesale_trade.xml HTML – документа, у якому міститься список усіх опто-

вих баз з адресами у дужках.

Варіант №9

Сформувати XPath – вирази для вибору в XML – документі

Restaurants.xml наступних вузлів:

усіх атрибутів «Найменування»;

усіх вузлів – нащадків елементів «Контакти»;

усіх батьківських вузлів елементів «Капітал».

Створити XSLT – документ для формування на основі файлу

Restaurants.xml HTML – документа, у якому міститься таблиця з такими сто-

впцями: найменування ресторану, категорія, телефон, e-mail, кількість пра-

цюючих, прибуток. Застосувати таблиці стилів CSS для оформлення доку-

мента.

Створити XSLT – документ для формування на основі файлу

Restaurants.xml HTML – документа, у якому надається інформація про ресто-

рани з найбільшим капіталом. Дані повинні виводитися у вигляді таблиці з

колонками – найменування ресторану, адреса, капітал.

Створити XSLT – документ для формування на основі файлу

Restaurants.xml HTML – документа, у якому міститься список усіх ресторанів

з номерами телефонів у дужках.

Варіант №10

Сформувати XPath – вирази для вибору в XML – документі

Sales_of_cars.xml наступних вузлів:

атрибутів «найменування»;

усіх вузлів – нащадків елементів «Ліки»;

усіх батьківських вузлів елементів «Адреса».

Створити XSLT – документ для формування на основі файлу

Sales_of_cars.xml HTML – документа, у якому міститься таблиця з такими

стовпцями: магазин, адреса, прибуток, кількість працюючих. Застосувати

таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

Sales_of_cars.xml HTML – документа, у якому надається інформація про ціни

на автомобіль конкретної фірми і конкретної моделі в різних магазинах міс-

та. Дані повинні виводитися у вигляді таблиці: заголовок – найменування

фірми – виробника і моделі автомобіля, колонки – найменування магазину,

адреса, ціна.

67

Створити XSLT – документ для формування на основі файлу

Sales_of_cars.xml – документа, у якому міститься список усіх магазинів з

продажу автомобілів.

Варіант №11

Сформувати XPath – вирази для вибору в XML – документі

High_schools.xml наступних вузлів:

усіх атрибутів «Найменування»;

усіх вузлів – нащадків елементів «Спеціальності»;

усіх батьківських вузлів елементів «Кількість студентів».

Створити XSLT – документ для формування на основі файлу

High_schools.xml HTML – документа, у якому міститься таблиця з такими

стовпцями: найменування вузу, адреса, кількість викладачів, кількість студе-

нтів. Застосувати таблиці стилів CSS для оформлення документа.

Створити XSLT – документ для формування на основі файлу

High_schools.xml HTML – документа, у якому надається інформація про ву-

зи, кількість студентів яких перевищує 3000 осіб. Дані повинні виводитися у

вигляді таблиці з колонками – найменування вузу, адреса, кількість студен-

тів.

Створити XSLT – документ для формування на основі файлу

High_schools.xml HTML – документа, у якому міститься список усіх вузів з

адресами у дужках.

Варіант №12

Сформувати XPath – вирази для вибору в XML – документі Libraries.xml

наступних вузлів:

усіх вузлів – нащадків елементів «Контакти»;

усіх атрибутів «Найменування»;

усіх батьківських вузлів елементів «Кількість примірників».

Створити XSLT – документ для формування на основі файлу

Libraries.xml HTML – документа, у якому міститься таблиця з такими стовп-

цями: найменування бібліотеки, адреса, телефон, e-mail, кількість відвідува-

чів за рік, кількість примірників. Застосувати таблиці стилів CSS для оформ-

лення документа.

Створити XSLT – документ для формування на основі файлу

Libraries.xml HTML – документа, у якому надається інформація про бібліо-

теки з найбільшою кількістю примірників (наприклад, більше 1 000 000).

Дані повинні виводитися у вигляді таблиці з колонками – найменування біб-

ліотеки, адреса, кількість примірників.

Створити XSLT – документ для формування на основі файлу

Libraries.xml HTML – документа, у якому міститься список усіх бібліотек з

номерами телефонів у дужках.

68

Приклад тесту

за темою «Мова XPath, мова XSLT»

1) Мова XPath призначена для …

a) Вибору фрагментів дерева XML – документа

b) Перетворення XML – документів на документи інших форматів

c) Виведення фрагментів дерева XML – документа

2) Які вісі існують у мові XPath?

a) parent – дочірня вісь

b) attribute – вісь атрибутів

c) ancestor – вісь батьків

3) Які XPath – вирази коректні?

a) students/student/descendant::*

b) //name/parent

c) //name/ancestor::*

d) students/student /attribute

4) Які функції можна використовувати у XPath – виразах?

a) position()

b) text()

c) count()

d) node()

5) Мова XSLT дозволяє …

a) Перетворити XML – документ на HTML – документ

b) Перетворити XML – документ на файл у форматі RTF

c) Перетворити XML – документ на програму, що розв’язує певні задачі

d) Перетворити XML – документ у інший XML – документ

6) Які ствердження стосовно XSLT - документів правильні?

a) XSLT – документ – це правильно оформлений XML – документ

b) Кореневим елементом XSLT – документа є елемент <xsl:template>.

c) Елемент <xsl:stylesheet> оголошує таблицю стилів.

7) Як у таблицях XSLT використовується елемент <xsl:template>?

a) Для застосування шаблонного правила до вузлів, що обираються за

допомогою XPath – виразу

b) Для передачі у вихідний документ текстових вузлів, що обираються за

допомогою XPath – виразу

c) Для визначення у документі шаблонного правила, за допомогою якого

вхідний документ перетворюється на результатний

8) Які теги підключення таблиці стилів XSLT до XML – документа корект-

ні?

a) <xml-stylesheet type="text/xsl" href="STYLESH.xml">

b) <?xml-stylesheet type="text/xsl" href="STYLESH.xsl" ? >

c) <?xml-stylesheet type="text/xsl" src="STYLESH.xsl" ? >

9) Яким елементом слід скористатися для застосування шаблонного прави-

ла?

a) <xsl:template>

69

b) <xsl:stylesheet>

c) <xsl:apply-templates>

d) <xsl:value-of>

10) За допомогою якого елемента у таблицях XSLT можна організувати

розгалужений процес?

a) <xsl:if>

b) <xsl:value-of>

c) <xsl:apply-templates>

d) <xsl:for-each>

e) <xsl:choose>

11) Як у таблицях XSLT використовується елемент <xsl:choose>?

a) Для перевірки істинності деякої логічної умови

b) Для організації циклічного процесу

c) Для організації розгалуженого процесу завжди по двом напрямкам

d) Для організації розгалуженого процесу одразу по багатьом напрямкам

12) Який елемент використовується для обробки усіх вузлів певної мно-

жини XML – документа?

a) <xsl:value-of>

b) <xsl:for-each>

c) <xsl:choose>

d) <xsl:if>

70

Лабораторна робота №6

Тема: Мова запитів XQuery.

Мета: навчитись створювати XQuery – запити до XML – документів, працю-

вати з XQuery – процесором Saxon.

Програмне забезпечення: операційна система Windows, браузер Internet

Explorer, XQuery – процесор Saxon.

Завдання

1. Виконати приклад створення XQuery – запитів.

2. Виконати практичне завдання у відповідності до індивідуального варі-

анту.

3. Оформити звіт по лабораторній роботі, у якому повинні бути такі

складові:

 титульний лист;

 роздруковані XQuery – запити;

 роздруковані вихідні HTML – документи у вікні браузера;

 опис роботи з XQuery – процесором Saxon.

4. Підготуватись до тестування за темою з використанням тесту - при-

кладу.

Приклад створення XQuery – запитів

1. Завантажте програму Блокнот, введіть уміст XQuery – запиту:

<HTML>

<BODY>

<H2>Список співробітників </H2>

<UL>

{

for $x in doc("employees.xml")/employees/employee

return <li>{data($x/name)}</li>

}

</UL>

</BODY>

</HTML>

Коментар:

1.1. Вихідним документом, що буде отримано у результаті виконання

XQuery – запиту, є HTML – документ.

1.2. У основній частині вихідного документа як заголовок другого рівня

(<H2>) виводиться текст «Список співробітників», починається маркі-

рований список (<UL>).

1.3. Далі формується XQuery – запит. Речення for означає, що змінній $x

XQuery – процесор привласнює значення елемента employees/employee з

XML – документа employees.xml.

71

1.4. Речення return записує у вихідний файл текстові данні (функція data()),

які відповідають елементові name змінної $x, у вигляді чергового еле-

мента списку.

2. Збережіть документ з ім’ям Zaput1.xquery у папці С:\Saxon\saxonhe9-2-0-

3j (кодування UTF – 8).

3. Скопіюйте файл employees.xml у папку С:\Saxon\saxonhe9-2-0-3j (до фай-

лу не повинні підключатися DTD, схема або таблиця стилів).

4. Перейдіть до роботи з командним рядком за допомогою команди Пуск –

Программы – Стандартные – Командная строка.

5. Подайте команду

cd\

для переходу до кореневої папки диску С:.

6. Для переходу у папку, в якій встановлено програму Saxon, подайте ко-

манди:

cd Saxon

cd Saxonhe9-2-0-3j

7. Для виконання XQuery – запиту введіть у командному рядку команду

(при введенні команд можна використовувати буфер обміну /контекстне

меню):

java -cp saxon9he.jar net.sf.saxon.Query -t Zaput1.xquery> output1.html

Коментар:

7.1. Перша частина команди визначає шлях до виконавчого середовища Java

і завантажує Java – інтерпретатор. Друга частина (-cp saxon9he.jar

net.sf.saxon.Query) дає команду Java отримати частину Query із файлу

saxon9he.jar, який і містить процесор Saxon. Третя частина команди (-t

Zaput1.xquery) містить ім’я файлу із запитом XQuery. Остання частина

(> output1.html) визначає адресу запису результату виконання запиту

XQuery – файл output1.html.

8. Розчиніть файл output1.html у програмі Блокнот, збережіть його як HTML

– документ у кодуванні UTF – 8 (не текстовий файл), розкрийте файл у

браузері ІЕ. У вікні браузера документ output1.html буде виглядати так:

72

9. Створіть за допомогою програми Блокнот ще один XQuery – запит – файл

Zaput2.xquery у папці С:\Saxon\saxonhe9-2-0-3j:

<HTML>

<BODY>

<H2>Список співробітників, що мають двох або більше дітей </H2>

<UL>

{

for $x in doc("employees.xml")/employees/employee

where xs:decimal($x/children)>=2

order by $x/children ascending

return <li>{data($x/name)}, кількість дітей - {data($x/children)}</li>

}

</UL>

</BODY>

</HTML>

Коментар:

9.1. Вихідним документом, що буде отримано у результаті виконання

XQuery – запиту, є HTML – документ, у якому формується список спів-

робітників, що мають двох або більше дітей.

9.2. Речення for означає, що змінній $x XQuery – процесор привласнює зна-

чення елемента employees/employee з XML – документа employees.xml.

9.3. Речення where використовується для фільтрації інформації за умовою

xs:decimal($x/children)>=2 – значення елемента children у форматі десят-

кового числа повинно бути більше або рівно 2, інші елементи children не

обробляються.

9.4. Речення order by сортує значення елемента children за зростанням

(ascending).

73

9.5. Речення return записує у вихідний файл у вигляді чергового елемента

списку текстові данні name (функція data()), рядкову константу «кіль-

кість дітей -», значення елемента children.

10. Виконайте запит за допомогою команди командного рядка:

java -cp saxon9he.jar net.sf.saxon.Query -t Zaput2.xquery> output2.html

11. Розчиніть файл output2.html у програмі Блокнот, збережіть його як HTML

– документ у кодуванні UTF – 8, розкрийте файл у браузері ІЕ. У вікні

браузера документ output2.html виглядатиме так:

12. Створіть за допомогою програми Блокнот XQuery – запит – файл

Zaput3.xquery у папці С:\Saxon\saxonhe9-2-0-3j:

<HTML>

<BODY>

<H2>Заробітна плата співробітників підприємства </H2>

<TABLE BORDER="1" CELLPADDING="7">

<TR> <TD ROWSPAN="2"> П І Б</TD>

<TD COLSPAN="2">Оклад</TD></TR>

<TR><TD>грн.</TD>

<TD>USD</TD></TR>

{

for $x in doc("employees.xml")/employees/employee

let $Q:=xs:float($x/salary)

return

<TR> <TD> {data($x/name)} </TD>

<TD> {data($x/salary)} </TD>

<TD> {$Q div 8 } </TD> </TR>

}

</TABLE>

</BODY>

</HTML>

74

Коментар:

12.1. У вихідному HTML – документі формується таблиця «Заробітна плата

співробітників підприємства» з шапкою:

ПІБ Оклад

Грн. USD

12.2. У XQuery – запиті змінній $x привласнюється значення елемента

employees/employee з XML – документа employees.xml.

12.3. Змінній $Q реченням let привласнюється значення елемента salary змін-

ної $x у форматі числа з плаваючою крапкою.

12.4. Речення return записує у вихідний файл черговий рядок таблиці: еле-

мент name, елемент salary, результат ділення значення змінної $Q на 8 -

{$Q div 8 }.

13. Виконайте запит за допомогою команди командного рядка:

java -cp saxon9he.jar net.sf.saxon.Query -t Zaput3.xquery> output3.html

14. Розчиніть файл output3.html у програмі Блокнот, збережіть його як HTML

– документ у кодуванні UTF – 8, розкрийте файл у браузері ІЕ. У вікні

браузера документ output3.html буде виглядати так:

75

15. Для знайомства з умовним оператором If створіть за допомогою програми

Блокнот XQuery – запит – файл Zaput4.xquery у папці С:\Saxon\saxonhe9-

2-0-3j:

<HTML>

<BODY>

<H2>Відомості про співробітників підприємства </H2>

<TABLE BORDER="1" CELLPADDING="7">

<TR> <TD ROWSPAN="2"> П І Б </TD>

<TD ROWSPAN="2"> Посада </TD>

<TD ROWSPAN="2"> Оклад </TD>

<TD COLSPAN="2"> Освіта </TD></TR>

<TR><TD>вища</TD>

<TD>середня</TD></TR>

{

for $x in doc("employees.xml")/employees/employee

order by xs:decimal($x/salary) descending

return

if ($x/education="вища") then

<TR> <TD> {data($x/name)} </TD>

<TD> {data($x/post)} </TD>

<TD> {data($x/salary)} </TD> <TD> + </TD> <TD> - </TD></TR>

else

<TR> <TD> {data($x/name)} </TD>

<TD> {data($x/post)} </TD>

<TD> {data($x/salary)} </TD> <TD> - </TD> <TD> + </TD></TR>

}

</TABLE>

</BODY>

</HTML>

16. Коментар:

17. У запиті формується HTML – документ, у якому міститься таблиця «Ві-

домості про співробітників підприємства» з колонками: ПІБ, посада,

оклад, освіта – вища або середня.

17.1. Безпосередньо у XQuery – запиті змінній $x привласнюється значення

елемента employees/employee з XML – документа employees.xml.

17.2. Здійснюється сортування даних по значенням елементів «salary» за уби-

ванням (order by xs:decimal($x/salary) descending). Тип даних елемента

«salary» потрібно перетворити з текстового на числовий, це робиться за

допомогою конструктору xs:decimal.

18. Речення return записує у вихідний файл черговий рядок таблиці з викори-

станням умовного оператору if: якщо значення елемента «education» -

«вища», то рядок таблиці містить такі чарунки - елемент name (ПІБ),

елемент post (посада), елемент salary (оклад), +, -. У іншому випадку (ко-

76

ли освіта середня) рядок таблиці містить чарунки: елемент name, еле-

мент post, елемент salary, -, +.

19. Виконайте запит за допомогою команди командного рядка:

java -cp saxon9he.jar net.sf.saxon.Query -t Zaput4.xquery> output4.html

20. Розчиніть файл output4.html у програмі Блокнот, збережіть його як HTML

– документ у кодуванні UTF – 8, розкрийте файл у браузері ІЕ. У вікні

браузера документ output4.html виглядатиме так:

77

Індивідуальні завдання

за темою «Мова запитів XQuery»

Варіант №1

Сформувати XQuery – запити для вибору в XML – документі

Drugstores.xml і виведення у HTML – документах таких даних:

перелік усіх аптек міста з кількістю працюючих більше 10 осіб (інфор-

мацію подати у вигляді списку);

інформацію про дохід на одного працюючого по всіх аптеках у вигляді

таблиці зі стовпцями: найменування аптеки, адреса, дохід, кількість працю-

ючих, дохід на одного працюючого.

Варіант №2

Сформувати XQuery – запити для вибору в XML – документі

Confectionery_factories.xml і виведення у HTML – документах таких даних:

список продукції, ціна на яку перевищує 50 грн. (у списку вивести на-

йменування продукції, ціну, найменування кондитерської фабрики);

інформацію про витрати кожної кондитерської фабрики у вигляді таб-

лиці зі стовпцями: найменування фабрики, адреса, дохід, прибуток, витрати.

Варіант №3

Сформувати XQuery – запити для вибору в XML – документі Banks.xml

і виведення у HTML – документах таких даних:

перелік усіх банків з кількістю працюючих менше 30 осіб (інформацію

подати у вигляді списку);

інформацію про фінансовий результат на одного працюючого по всіх

банках у вигляді таблиці зі стовпцями: найменування банку, адреса, фінан-

совий результат, кількість працюючих, фінансовий результат на одного пра-

цюючого.

Варіант №4

Сформувати XQuery – запити для вибору в XML – документі

Trading_enterprises.xml і виведення у HTML – документах таких даних:

список магазинів, товарообіг яких перевищує 200 000 грн. (у списку ви-

вести найменування магазину, товарообіг);

інформацію про витрати обігу кожного магазину у вигляді таблиці зі

стовпцями: найменування магазину, адреса, товарообіг, прибуток, витрати

обігу.

Варіант №5

Сформувати XQuery – запити для вибору в XML – документі

Travel_companies.xml і виведення у HTML – документах таких даних:

перелік усіх туристичних фірм з кількістю клієнтів на рік більшою ніж

2 000 осіб (інформацію подати у вигляді списку);

78

інформацію про дохід на одного клієнта по всіх туристичних фірмах у

вигляді таблиці зі стовпцями: найменування туристичної фірми, адреса, до-

хід, кількість клієнтів за рік, дохід на одного клієнта.

Варіант №6

Сформувати XQuery – запити для вибору в XML – документі

Іndustry_enterprises.xml і виведення у HTML – документах таких даних:

список продукції, ціна на яку перевищує 1000 грн. (у списку вивести

найменування продукції, ціну, найменування підприємства);

інформацію про прибуток кожного підприємства у вигляді таблиці зі

стовпцями: найменування підприємства, адреса, дохід, виробничі витрати,

прибуток.

Варіант №7

Сформувати XQuery – запити для вибору в XML – документі

Cinemas.xml і виведення у HTML – документах таких даних:

перелік усіх кінотеатрів міста з кількістю відвідувачів на рік більшою

ніж 20 000 осіб (інформацію подати у вигляді списку);

інформацію про дохід на одного працюючого по всіх кінотеатрах у ви-

гляді таблиці зі стовпцями: найменування кінотеатру, адреса, дохід, кількість

працюючих, дохід на одного працюючого.

Варіант №8

Сформувати XQuery – запити для вибору в XML – документі

Wholesale_trade.xml і виведення у HTML – документах таких даних:

список оптових баз, товарообіг яких перевищує 500 000 грн. (у списку

вивести найменування оптової бази, товарообіг);

інформацію про прибуток кожної оптової бази у вигляді таблиці зі стов-

пцями: найменування оптової бази, адреса, товарообіг, витрати обігу, при-

буток.

Варіант №9

Сформувати XQuery – запити для вибору в XML – документі

Restaurants.xml і виведення у HTML – документах таких даних:

перелік усіх ресторанів міста з кількістю працюючих більшою ніж 30

осіб (інформацію подати у вигляді списку);

інформацію про прибуток на одного працюючого по всіх ресторанах у

вигляді таблиці зі стовпцями: найменування ресторану, адреса, прибуток, кі-

лькість працюючих, прибуток на одного працюючого.

Варіант №10

Сформувати XQuery – запити для вибору в XML – документі

Sales_of_cars.xml і виведення у HTML – документах таких даних:

79

список автомобілів, ціна яких нижче 200 000 грн. (у списку вивести на-

йменування автомобіля, ціну, найменування магазину);

інформацію про дохід на одного працюючого по всіх магазинах у ви-

гляді таблиці зі стовпцями: найменування магазину, адреса, дохід, кількість

працюючих, дохід на одного працюючого.

Варіант №11

Сформувати XQuery – запити для вибору в XML – документі

High_schools.xml і виведення у HTML – документах таких даних:

перелік усіх вузів з кількістю студентів більшою ніж 3000 осіб (інфор-

мацію подати у вигляді списку);

інформацію про кількість викладачів на 100 студентів по всіх вузах у

вигляді таблиці зі стовпцями: найменування вузу, адреса, кількість виклада-

чів, кількість студентів, кількість викладачів на 100 студентів.

Варіант №12

Сформувати XQuery – запити для вибору в XML – документі

Libraries.xml і виведення у HTML – документах таких даних:

перелік усіх бібліотек з кількістю працюючих більшою ніж 20 осіб (ін-

формацію подати у вигляді списку);

інформацію про кількість відвідувачів на одного працюючого по всіх

бібліотеках у вигляді таблиці зі стовпцями: найменування бібліотеки, адреса,

кількість відвідувачів за рік, кількість працюючих, кількість відвідувачів на

одного працюючого.

Приклад тесту

за темою «Мова запитів XQuery»

1) Мова XQuery призначена для …

a) Вибору фрагментів XML – документів

b) Перетворення XML – документів на документи інших форматів

c) Вибору, обробки, виведення в документах різних форматів інформації

XML – документів

d) Виведення фрагментів XML – документів

2) Які ствердження щодо мови XQuery вірні?

a) Мова XQuery використовує мову XPath для вибору фрагментів дерева

документа

b) Мова XQuery надає засоби для модифікації XML – документів (кори-

гування, знищення фрагментів тощо)

c) Мова XQuery надає засоби для обробки даних і формування результат-

них показників

3) Які програмні засоби використовуються для виконання XQuery – запитів?

a) XQuery – редактори

b) XML – редактори

c) XML - процесори

80

d) XQuery – процесори

4) Які речення використовуються у виразі FLWOR?

a) for

b) order by

c) div

d) return

e) sum

f) let

5) Для чого у XQuery – запитах використовується речення where?

a) для привласнення значення змінній

b) для виконання дій в залежності від істинності логічної умови

c) для визначення критерію фільтрації

6) Яке речення слід використати для сортування значень, що зберігаються у

змінній $x, за убиванням?

a) order by $x ascending

b) order by $x descending

c) order by $x return

7) Які речення використовуються для привласнення значень змінним?

a) order by

b) let

c) where

d) return

e) for

8) Які речення коректні?

a) for $x in doc("employees.xml")

b) where doc("students.xml")/students/student/name=”Іванов”

c) order by x ascending

d) return {data($x)}

9) Для чого у XQuery – запитах використовуються конструктори?

a) для виконання арифметичних операцій

b) для визначення значення, що записується у вихідний файл

c) для перетворення типів даних

10) Які арифметичні операції можна використовувати у XQuery – запитах?

a) +

b) /

c) *

d) div

e) mod

81

Відповіді на тестові завдання

Лабораторна робота №1

Тема: Створення web – сайтів з використанням мови HTML

1. c

2. a d

3. a d

4. c

5. b

6. a

7. a c e

8. a b c e f

9. a b

10. c e

11. a b c f

12. a

13. b c

14. a

15. c

Лабораторна робота №2

Тема: Створення web – сайтів з використанням фреймів, каскадних листів

стилів CSS

1. c

2. a

3. a d

4. a b e

5. c

6. a b c

7. a

8. b c d

9. a b

10. c

11. a

12. c

13. a

14. b c

15. a

Лабораторна робота №3

Тема: Створення XML – документів, опис шаблону документа

1. b d e

2. b

3. a d e

4. a b c

5. b

6. b c

7. b c d

8. b

9. a c

10. c

11. a

12. a c

13. a c d

14. b

15. b

Лабораторна робота №4

Тема: Розробка XML – схем

1. b c

2. c

3. c

4. b

5. a

6. b

7. a b c e

8. b

9. a

10. a b d

82

Лабораторна _______робота №5

Тема: Мова XPath, мова XSLT

1. a

2. b c

3. a c

4. a c

5. a b d

6. a c

7. c

8. b

9. c

10. a e

11. d

12. b

Лабораторна робота №6

Тема: Мова запитів XQuery

1. c

2. a c

3. d

4. a b d f

5. c

6. b

7. b e

8. b d

9. c

10. a c d e

ЛІТЕРАТУРА

1. Дейтел Х.М. Как программировать на XML [пер. с англ.] /Х.М. Дейтел,

П.Дж. Дейтел, Т.Р. Нието, Т.М. Лин, П. Садху. – М: ЗАО «Издательст-

во «БИНОМ», 2005. – 944 с.

2. Кириленко А. Самоучитель HTML. – СПб: Питер; Киев: Издательская

группа BHV, 2005. – 272 с.

3. Коломова Н.В. HTML: Учебный курс. – СПб: Питер, 2006. – 268 с.

4. Палагута К.О. Мовна модель сучасного інформаційного простору: на-

вч. посіб. – Донецьк : [ДонНУЕТ], 2010.

5. Хантер Дэвид и др. XML. Базовый курс, 4-е издание : [пер. с англ.] / Д.

Хантер, Дж. Рафтер, Дж. Фаусетт, Э. ван дер Влист. – М: ООО «И.Д.

Вильямс», 2009. – 1344 с.

6. http://www.w3.org – офіційний сайт World Wide Web Consortium

7. http://www.htmlbook.ru/css/

8. http://ru.wikipedia.org

9. http://about-html.narod.ru

10. http://www.askit.ru/custom/xml_users/xml_users_plan.htm - навчальний

курс XML для користувачів

83

Зміст

Стор.

Вступ 3

Змістовий модуль 1. Розвиток інформаційного суспільства,

мова HTML

3

Лабораторна робота №1. Створення web – сайтів з викори-

станням мови HTML

4

Завдання 4

Приклад створення web – сайту 4

Індивідуальні завдання за темою «Створення web – сайтів

з використанням мови HTML»

12

Приклад тесту за темою «Створення web – сайтів з вико-

ристанням мови HTML»

16

Лабораторна робота №2. Створення web – сайтів з викори-

станням фреймів, каскадних листів стилів CSS

18

Завдання 18

Приклад створення web – сайту з використанням фреймів,

каскадних листів стилів CSS

18

Індивідуальні завдання за темою «Створення web – сайтів

з використанням фреймів,

каскадних листів стилів CSS»

23

Приклад тесту за темою «Створення web – сайтів з вико-

ристанням фреймів, каскадних листів стилів CSS»

25

Змістовий модуль 2. Розширювана мова розмітки XML,

обробка XML – документів

27

Лабораторна робота №3. Створення XML – документів,

опис шаблону документа

27

Завдання 27

Приклад роботи з XML – документом 27

Індивідуальні завдання

за темою «Створення XML – документів, опис шаблону

документа»

34

Приклад тесту

за темою «Створення XML – документів, опис шаблону

документа»

40

Лабораторна робота №4. Розробка XML – схем 43

Завдання 43

Приклад створення схеми XML – документа 43

Індивідуальні завдання за темою «Розробка XML – схем» 46

Приклад тесту за темою «Розробка XML – схем» 48

Лабораторна робота №5. Мова XPath, мова XSLT 50

Завдання 50

Приклад використання мов XPath, XSLT 50

Індивідуальні завдання за темою «Мова XPath, мова 62

84

XSLT»

Приклад тесту за темою «Мова XPath, мова XSLT» 68

Лабораторна робота №6. Мова запитів XQuery 70

Завдання 70

Приклад створення XQuery – запитів 70

Індивідуальні завдання за темою «Мова запитів XQuery» 77

Приклад тесту за темою «Мова запитів XQuery» 79

Відповіді на тестові завдання 81

Література 82

Додатки 85

.

85

Додаток А

Титульний лист звіту по лабораторній роботі

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

ДОНЕЦЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ЕКОНОМІКИ І ТОРГІВЛІ

ІМЕНІ МИХАЙЛА ТУГАН-БАРАНОВСЬКОГО

Кафедра інформаційних систем і технологій управління

Дисципліна: Мовна модель сучасного інформаційного простору

Лабораторна робота №__

Тема: ________________________________________________

Виконав (ла):

студент (ка) групи ______

_______________________

ПІБ

Перевірив(ла):

_______________________

посада, ПІБ

ДОНЕЦЬК - ____

86

Додаток В

Файл employees.xml

<?xml version="1.0" encoding="UTF-8"?>

<employees>

<employee sheetnumber="132">

<name><lname>Петренко</lname>

<fname>Максим</fname>

<mname>Іванович</mname></name>

<post>директор</post>

<education>вища</education>

<salary>3000</salary>

<children>2</children>

</employee>

<employee sheetnumber="133">

<name><lname>Головченко</lname>

<fname>Оксана</fname>

<mname>Степанівна</mname></name>

<post>головний бухгалтер</post>

<education>вища</education>

<salary>2500</salary>

<children>1</children>

</employee>

<employee sheetnumber="144">

<name><lname>Комарова</lname>

<fname>Ірина</fname>

<mname>Володимирівна</mname></name>

<post>касир</post>

<education>середня</education>

<salary>1300</salary>

<children>0</children>

</employee>

<employee sheetnumber="151">

<name><lname>Данілов</lname>

<fname>Олександр</fname>

<mname>Федорович</mname></name>

<post>інженер</post>

<education>вища</education>

<salary>2100</salary>

<children>3</children>

</employee>

<employee sheetnumber="146">

87

<name><lname>Міщенко</lname>

<fname>Олена</fname>

<mname>Олексіївна</mname></name>

<post>продавець</post>

<education>середня</education>

<salary>950</salary>

<children>0</children>

</employee>

<employee sheetnumber="137">

<name><lname>Іванова</lname>

<fname>Галина</fname>

<mname>Станіславівна</mname></name>

<post>продавець</post>

<education>середня</education>

<salary>900</salary>

<children>1</children>

</employee>

<employee sheetnumber="148">

<name><lname>Новікова</lname>

<fname>Марина</fname>

<mname>Володимірівна</mname></name>

<post>продавець</post>

<education>середня</education>

<salary>1150</salary>

<children>2</children>

</employee>

</employees>

88

Навчальне видання

Палагута Катерина Олексіївна, канд. екон. наук, доцент

Мовна модель сучасного інформаційного простору

Методичні вказівки та завдання для проведення

лабораторних робіт і самостійної роботи студентів

напрямів підготовки 6.030509 «Облік і аудит»,