Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ППТС-2 / Лабы / Lab4-01.doc
Скачиваний:
26
Добавлен:
12.05.2015
Размер:
1.28 Mб
Скачать

Вариант 1-30

Составьте документ XMLдля расписания четырех спортивных соревнований (одна из команд участвует в двух соревнованиях, три команды, от 1 до 3 мест и дат проведения соревнований) со следующими элементами и атрибутами:

  • <games-table>(расписание соревнований) – корневой элемент;

  • <team-list>(список команд) – элемент второго уровня;

  • <team>(команда) – элемент третьего уровня с атрибутомname(наименование команды);

  • <time-list>(список времен начала соревнования) – элемент второго уровня;

  • <time-begin>(время начала соревнования) – элемент третьего уровня с атрибутомname(время начала соревнования);

  • <competition-place-list>(список мест проведения соревнования) – элемент второго уровня;

  • <competition-place>(место проведения соревнования) – элемент третьего уровня с атрибутомname(наименование места проведения соревнования);

  • <competition>(соревнование) – элемент второго уровня с текстовым содержимым – наименованием соревнования;

  • <date>(дата проведения соревнования) – элемент третьего уровня с атрибутамиday(день),month(месяц) иyear (год);

  • <time>(ссылка на время начала соревнования) – элемент четвертого уровня с атрибутомref (ссылка на время начала соревнования);

  • <team1>(ссылка на первую команду) – элемент четвертого уровня с атрибутомref(ссылка на первую команду);

  • <team2>(ссылка на вторую команду) – элемент четвертого уровня с атрибутомref(ссылка на вторую команду);

  • <place>(ссылка на место проведения соревнования) – элемент четвертого уровня с атрибутомref(ссылка на место проведения соревнования).

Ограничения документа XMLдля расписания соревнований:

  • в корневом элементе должен быть только один элемент <team-list>;

  • в элементе <team-list> может быть один или более элементов <team>с обязательным атрибутомnameтипаid(наименование команды);

  • в корневом элементе должен быть только один элемент <time-list>;

  • в элементе <time-list> может быть один или более элементов <time-begin>с обязательным атрибутомnameтипаid(время начала соревнования);

  • в корневом элементе должен быть только один элемент <place-list>;

  • в элементе <competition-place-list> может быть один или более элементов <competition-place> с обязательным атрибутом name типа id;

  • в корневом элементе должен быть один и более элементов <competition>;

  • в элементе <content> может быть один или более элементов <date>с обязательными атрибутамиday,monthиyear;

  • в элементе <date> должен быть только один элемент <time>с обязательным атрибутомref типаIDREF;

  • в элементе <date> должен быть только один элемент <team1>с обязательным атрибутомrefтипаIDREF;

  • в элементе <date> должен быть только один элемент <team2>с обязательным атрибутомrefтипаIDREF;

  • в элементе <date> должен быть только один элемент <place>с обязательным атрибутомrefтипаIDREF.

В DTDопределите сущности для нескольких команд, например, сущностьteam1со значением"Спартак"и сущностьteam2со значением "Динамо", а также мест проведения соревнования, например, сущностьplace1со значением"Центральный стадион"и сущностьplace2со значением 'Стадион "Динамо"'и используйте эти сущности в документеXML.

Создайте схему документа XMLдля расписания соревнований со следующими уточнениями:

  • сущности team1,team2,place1 иplace2 представить в виде глобальных элементов с фиксированными значениями, равными соответствующим значениям сущностей;

  • значение атрибута titleв элементе<games-table>, а также элемент<competition>должны содержать слово или последовательность слов, разделенных пробелом, причем первое слово должно начинаться с заглавной буквы;

  • элемент <team>в элементе<team-list> должен быть определен как ключ и содержать последовательность слов, отделенных друг от друга одним пробелом, и начинающуюся с заглавной буквы, либо содержать один из элементов<team1/> и<team2>;

  • минимальное количество элементов <team>должно равняться 2;

  • элемент <time> должен быть определен как ключ и содержать значение типаtimeпо шаблонуhh:mm, гдеhh– значение часа, аmm– значение минуты;

  • элемент <place>должен быть определен как ключ и содержать последовательность слов, отделенных друг от друга одним пробелом, и начинающуюся с заглавной буквы, либо содержать один из элементов<place1/> и<place2>;

  • атрибуты day,monthиyearв элементе<date>должны быть соответственно типаgDay,gMonthиgYear;

  • атрибут refв элементе<time> внутри элемента<content> должен быть определен как ссылка на ключ, заданный в атрибутеnameэлемента<time> внутри элемента<time-list>;

  • атрибут refв элементах<team1> и<team2>внутри элемента<content> должен быть определен как ссылка на ключ, заданный в атрибутеnameэлемента<team> внутри элемента<team-list>;

  • атрибут refв элементе<place> внутри элемента<content> должен быть определен как ссылка на ключ, заданный в атрибутеnameэлемента<place> внутри элемента<place-list>.

Соседние файлы в папке Лабы