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

Вариант 1-16

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

  • <class-list>(список классов) – корневой элемент с атрибутомname(наименование справочника);

  • <letter>(буква) – элемент второго уровня с атрибутомvalue(буква, на которую начинается имя класса);

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

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

  • <modifiers>(модификаторы класса) – элемент четвертого уровня с атрибутамиstatic,finalиabstract, которые имеют либо значение"yes", либо значение"no";

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

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

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

  • <interface-list>(список интерфейсов, реализуемых классом) – элемент четвертого уровня;

  • <interface>(интерфейс) – элемент пятого уровня с атрибутомname– именем реализуемого интерфейса;

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

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

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

  • <method>(метод) – элемент пятого уровня с атрибутомname– именем метода в классе и текстовым содержимым – типом возвращаемого значения;

  • <version>(версияJava, в которой впервые появился класс) – элемент четвертого уровня с текстовым содержимым.

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

  • корневой элемент <class-list>должен иметь обязательный атрибутname;

  • в корневом элементе может быть один или более элементов <letter>с обязательным атрибутомvalue;

  • в элементе <letter> может быть несколько элементов <class>с обязательным атрибутомname, либо элемент<class> может отсутствовать;

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

  • в элементе <class> должен быть только один элемент <modifiers>с атрибутамиstatic,finalиabstract, которые имеют либо значение"yes", либо значение"no"(по умолчанию"no");

  • в элементе <class> должен быть только один элемент <superclass>с обязательным атрибутомname;

  • в элементе <class> может быть один элемент <subclass-list>, либо элемент<subclass-list> может отсутствовать;

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

  • в элементе <class> может быть один элемент <interface-list>, либо элемент<interface-list> может отсутствовать;

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

  • в элементе <class> может быть один элемент <fields-list>, либо элемент<fields-list> может отсутствовать;

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

  • в элементе <class> может быть один элемент <methods-list>, либо элемент<methods-list> может отсутствовать;

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

  • в элементе <class> должен быть только один элемент <version>с текстовым содержимым.

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

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

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

  • значение атрибута valueв элементе<letter>должно содержать заглавную латинскую букву;

  • значение атрибута nameв элементах<class>,<superclass>,<subclass>и<interface> должно содержать последовательность заглавных и строчных латинских букв и начинаться с заглавной буквы;

  • значение атрибута nameв элементах<field>и<method> должно содержать последовательность заглавных и строчных латинских букв и начинаться со строчной буквы;

  • элемент <description>должен содержать последовательность букв, цифр, пробельных символов и знаков препинания;

  • в качестве значений атрибутов элемента <modifiers>должны использоваться булевские значения;

  • элемент <method> должен содержать внутри себя один из следующих элементов:<type1/>,<type2/>или<type3/>;

  • в качестве значения элемента <version>должно использоваться одно из следующих значений:"1.1","1.2","1.3","1.4"или"1.5".

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