- •Лабораторная работа 4-01
- •3.1.2. Объявления
- •3.1.3. Элемент
- •3.1.4. Инструкция по обработке
- •3.1.5. СекцииCdata
- •3.1.6. Ссылки
- •3.1.7. Комментарии
- •3.2. Объявление типа документа (dtd)
- •3.2.1. Структура dtd
- •3.2.2. Определение элемента
- •3.2.3. Определение атрибутов элемента
- •3.2.4. Определение сущности
- •3.2.5. Определение нотации
- •3.3. Программа xmlSpy2006HomeEdition
- •3.3.1. Общие сведения о xmlSpy2006HomeEdition
- •3.3.2. Установка xmlSpy
- •3.3.3. Работа с xmlSpy
- •3.3.3.1. Компоненты xmlSpy
- •3.3.3.2. Создание dtd документа xml
- •3.3.3.3. Создание нового документа xml
- •3.3.3.4. Другие операции с документами xml и dtd
- •3.4. Назначение схем xml
- •3.5. Типы данных схемы xml
- •3.5.1. Встроенные примитивные типы данных схемы xml
- •3.5.2. Встроенные производные типы данных схемы xml
- •3.5.3. Свойства данных схемы xml
- •3.5.3.1. Фундаментальные свойства
- •3.5.3.2. Ограничивающие свойства
- •3.5.3.3. Ограничивающие условия для встроенных типов данных схемыXml
- •3.6. Компоненты схемыXml
- •3.6.1. Первичные компоненты схемы xml
- •3.6.1.1. Определения простого типа
- •3.6.1.2. Определения комплексного типа
- •3.6.1.3. Объявления атрибутов и элементов
- •3.6.2. Вторичные компоненты схемы xml
- •3.6.2.1. Определение группы атрибутов и группы моделей
- •3.6.2.2. Определения ограничений
- •3.6.2.3. Объявление нотации
- •3.6.3. Справочные компоненты схемы xml
- •3.6.3.1. Аннотации
- •3.6.3.2. Определения моделей в группе
- •3.6.3.3. Определения шаблонов
- •3.6.4. Определение ограничивающих свойств
- •3.6.5. Компоненты схемы в целом
- •3.6.6. Назначение атрибутов в компонентах схемы xml
- •3.6.7. Допустимые значения атрибутов в компонентах схемыXml
- •3.6.8. Использование регулярных выражений в схемах xml
- •3.6.8.1. Метасимволы
- •3.6.8.2. Ссылки на символы
- •3.6.8.3. Операторы повторения
- •3.6.8.4. Операторы диапазона символов
- •3.6.8.5. Специальные символы
- •3.7. Включение схемы в документ xml
- •3.8. Формирование схем в xmlSpy2006HomeEdition
- •3.8.3.2. Формирование схемы с использованием модели содержимого
- •3.8.3.3. Пример формирование простой схемы
- •4. Порядок выполнения работы
- •Вариант 1-01
- •Вариант 1-02
- •Вариант 1-03
- •Вариант 1-04
- •Вариант 1-05
- •Вариант 1-06
- •Вариант 1-07
- •Вариант 1-08
- •Вариант 1-09
- •Вариант 1-10
- •Вариант 1-11
- •Вариант 1-12
- •Вариант 1-13
- •Вариант 1-14
- •Вариант 1-15
- •Вариант 1-16
- •Вариант 1-17
- •Вариант 1-18
- •Вариант 1-19
- •Вариант 1-20
- •Вариант 1-21
- •Вариант 1-22
- •Вариант 1-23
- •Вариант 1-24
- •Вариант 1-25
- •Вариант 1-26
- •Вариант 1-27
- •Вариант 1-28
- •Вариант 1-29
- •Вариант 1-30
- •5. Содержание отчета
- •6. Вопросы для самоконтроля
Вариант 1-14
Составьте документ XMLдля расписания полетов самолетов на четыре даты полетов (от двух до пяти рейсов в день, из них два – в один и тот же аэропорт назначения) со следующими элементами и атрибутами:
<airport-table>(расписание полетов) – корневой элемент;
<airport-list>(список аэропортов назначения) – элемент второго уровня;
<airport>(аэропорт назначения) – элемент третьего уровня с атрибутомname(наименование аэропорта) типаID;
<airplane-type-list>(список типов самолетов) – элемент второго уровня;
<airplane-type>(тип самолета) – элемент третьего уровня с атрибутомname(тип самолета) типаID;
<current-airport>(наименование аэропорта) – элемент второго уровня с атрибутомrefтипаIDREF(наименованием аэропорта, для которого составлено расписание);
<date>(дата полета) – элемент второго уровня с текстовым содержимым;
<airplane-table> (строка расписания для самолета) – элемент третьего уровня с атрибутом departure-airport типа IDREF (ссылка на идентификатор аэропорта вылета) и destination-airport типа IDREF (ссылка на идентификатор аэропорта назначения);
<number>(номер рейса) – элемент четвертого уровня с текстовым содержимым;
<departure-time>(время вылета) – элемент четвертого уровня с текстовым содержимым;
<arrival-time>(время прилета в аэропорт назначения) – элемент четвертого уровня с текстовым содержимым;
<airplane-ref> (ссылка на тип самолета) – элемент четвертого уровня с атрибутомrefтипаIDREF.
Ограничения документа XMLдля расписания полетов самолетов:
<airport-table>(расписание полетов) – корневой элемент;
в корневом элементе должен быть только один элемент <airport-list>;
в элементе <airport-list> может быть один или более элементов <airport>с обязательным атрибутомnameтипаID;
в корневом элементе должен быть только один элемент <airplane-type-list>;
в элементе <airplane-type-list> может быть один или более элементов <airplane-type>с обязательным атрибутомnameтипаID;
в корневом элементе должен быть только один элемент <current-airport>с обязательным атрибутомrefтипаIDREF;
в корневом элементе может быть один или более элементов <date>с текстовым содержимым;
в элементе <date> может быть один или более элементов <airplane-table> с обязательным атрибутом departure-airport типа IDREF и обязательным атрибутом destination-airport типа IDREF;
в элементе <airplane-table> должен быть только один элемент <number>с текстовым содержимым;
в элементе <airplane-table> должен быть только один элемент <departure-time>с текстовым содержимым;
в элементе <airplane-table> должен быть только один элемент <arrival-time>с текстовым содержимым;
в элементе <airplane-table> должен быть только один элемент <airplane-ref> (ссылка на тип самолета) с обязательным атрибутомrefтипаIDREF.
В DTDопределите сущности для нескольких аэропортов, например, сущностьcity1со значением "Киев"и сущностьcity2со значением "Днепропетровск", и используйте эти сущности в документеXML.
Создайте схему документа XMLдля расписания полетов самолетов со следующими уточнениями:
сущности city1иcity2представить в виде глобальных элементов с фиксированными значениями, равными соответствующим значениям сущностей;
элемент <airport> должен быть задан без атрибутаname, являться ключом и содержать последовательность букв, начинающуюся с заглавной буквы, либо иметь значение<city1/> или<city2/>;
элемент <airplane-type> должен быть задан без атрибутаname, являться ключом и содержать последовательность букв и цифр, начинающуюся с заглавной буквы;
атрибут refэлемента <airplane >должен являться ссылкой на ключ – тип самолета;
атрибут idэлемента<current-airport>, а также атрибутыdeparture-airportиdestination-airportэлемента<airplane-table> должны являться ссылкой на ключи – имена аэропортов;
элемент <date> должен содержать данные типаdate;
элемент <number> должен содержать целое положительное число, значение которого должно быть уникальным;
элементы <departure-time> и<arrival-time> должны содержать две цифры, двоеточие, за которым следуют две цифры – час и минута начала занятия.
