- •Лабораторная работа 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-29
Составьте документ XMLдля описания четырех интерфейсов языкаJava(из них два интерфейса имеют один и тот же родительский интерфейс, в каждом интерфейсе от 0 до 3 супереинтерфейсов, от 1 до 3 интерфейсов-потомков, от 1 до 3 методов) со следующими элементами и атрибутами:
<interface-list>(список интерфейсов) – корневой элемент;
<interface>(интерфейс) – элемент второго уровня с атрибутомname(наименование интерфейса);
<description>(описание интерфейса) – элемент третьего уровня с текстовым содержимым;
<modifier>(модификатор интерфейса) – элемент третьего уровня с текстовым содержимым (текстовое содержимое может иметь значение"protected" или"private");
<superinterface-list>(список интерфейсов – родителей данного интерфейса) – элемент третьего уровня;
<superinterface>(интерфейс-родитель) – элемент четвертого уровня с текстовым содержимым – описанием интерфейса и атрибутомname(наименованием интерфейса);
<subinterface-list>(список прямых интерфейсов-потомков) – элемент третьего уровня;
<subinterface>(интерфейс-потомок) – элемент четвертого уровня с текстовым содержимым – описанием интерфейса и атрибутомname(наименованием интерфейса);
<field-list>(список полей интерфейса) – элемент третьего уровня с текстовым содержимым;
<field>(поле интерфейса) – элемент четвертого уровня с текстовым содержимым – описанием поля, а также атрибутамиname (именем поля) и type(типом переменной), который имеет одно из следующих значений:"int","float"и"String";
<method-list>(список методов интерфейса) – элемент третьего уровня с текстовым содержимым;
<method>(метод интерфейса) – элемент четвертого уровня с атрибутомname – именем метода;
<description>(описание метода) – элемент пятого уровня с текстовым содержимым;
<modifiers>(модификаторы метода) – элемент пятого уровня с текстовым содержимым– одним из значений: "static","public", "private" или"protected";
<return-value-type>(тип возвращаемого значения для метода) – элемент пятого уровня с текстовым содержимым;
<method-parameter-list>(список параметров метода) – элемент пятого уровня;
<parameter> (параметр метода) – элемент шестого уровня с текстовым содержимым – описанием параметра, а также атрибутамиname (именем поля) и type(типом параметра), который имеет те же значения, что и атрибутtypeв элементе<field>;
<version>(версияJava, в которой впервые появился интерфейс) – элемент третьего уровня с текстовым содержимым.
Ограничения документа XMLдля описания интерфейсов языкаJava:
в корневом элементе может быть один или более элементов <interface>с обязательным атрибутомname;
в элементе <interface> должен быть только один элемент <description>с текстовым содержимым;
в элементе <interface> должен быть только один элемент <modifier>(модификатор интерфейса) – элемент второго уровня с текстовым содержимым;
в элементе <interface> может быть несколько элементов <superinterfaces-list>, либо элемент<superinterfaces-list> может отсутствовать;
в элементе <superinterface-list> может быть один или более элементов <superinterface>с текстовым содержимым и обязательным атрибутомname;
в элементе <interface> может быть несколько элементов <subinterface-list>, либо элемент<subinterface-list> может отсутствовать;
в элементе <subinterface-list> может быть один или более элементов <subinterface>с текстовым содержимым – описанием интерфейса и обязательным атрибутомname;
в элементе <interface> может быть несколько элементов <field-list>, либо элемент<field-list> может отсутствовать;
в элементе <field-list> может быть один или более элементов <field>с текстовым содержимым, а также обязательными атрибутамиname и type, который имеет одно из следующих значений:"int","float"и"String";
в элементе <interface> может быть несколько элементов <method-list>, либо элемент<method-list> может отсутствовать;
в элементе <method-list> может быть один или более элементов <method>с обязательным атрибутомname;
в элементе <method> должен быть только один элемент <description>с текстовым содержимым;
в элементе <method> должен быть только один элемент <modifiers>с текстовым содержимым;
в элементе <method> должен быть только один элемент <return-value-type>с текстовым содержимым;
в элементе <method> должен быть только один элемент<method-parameter-list>;
в элементе <method-parameter-list> может быть один или более элементов <parameter> с текстовым содержимым, а также обязательными атрибутамиname (именем поля) и type(типом параметра), который имеет те же значения, что и атрибутtypeв элементе<field>;
в элементе <interface> должен быть только один элемент <version>с текстовым содержимым.
В DTDопределите сущности для нескольких модификаторов, например, сущностьmodifier1со значением "private"и сущностьmodifier2со значением "protected", а также типов, например, сущностьtype1со значением "int", сущностьtype2со значением "void"и сущностьtype3со значением "String" и используйте эти сущности в документеXML.
Создайте схему документа XMLдля описания интерфейсов языкаJavaсо следующими уточнениями:
сущности modifier1,modifier2,type1,type2 иtype3представить в виде глобальных элементов с фиксированными значениями, равными соответствующим значениям сущностей;
значение атрибутов nameв элементах<interface>,<superinterface>и<subinterface>должны содержать последовательность заглавных и строчных латинских букв и цифр, причем первым символом должна быть заглавная буква;
значение атрибута nameв элементе<field>должно содержать последовательность заглавных букв и цифр;
элементы <description>и<method-description> должны содержать последовательность букв, цифр, пробельных символов и знаков препинания;
элементы <modifier> и<method-modifiers>должны содержать внутри себя один из следующих элементов:<modifier1/>или<modifier2/>, либо не содержать никакого значения;
значение атрибута nameв элементах<method>,<parameter> и<field> должно содержать последовательность заглавных и строчных латинских букв и цифр, причем первым символом должна быть строчная буква;
элемент <return-value-type>должен иметь те же допустимые значения, что и атрибутtypeв элементе<field>;
элемент <return-value-type>должен содержать внутри себя один из следующих элементов:<type1/>,<type2/>или<type3/>;
в качестве значения элемента <version>должно использоваться одно из следующих значений:"1.1","1.2","1.3","1.4"или"1.5".
