МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE Тема 2.4. Язык XML — стандарт описания структурированных данных Практическая работа «Создание шаблона нетипового XML-документа» Цель работы: формирование навыков работы по созданию шаблона нетипового XML-документа в инструментальной среде XML-редактора. Задание на работу: 1. Разработайте модель нетипового XML-документа. 2. Сформируйте DTD-определение для нетипового XML-документа. 3. Создайте шаблон нетипового XML-документа. Содержание Технология выполнения работы ...................................................................................1 1. Разработка модели XML-документа ...........................................................................1 2. Формирование DTD-определения XML-документа .......................................................2 3. Создание шаблона нетипового XML-документа ..........................................................4 4. Контрольные вопросы .............................................................................................7 5. Работа в интерактивной образовательной среде «ВУОКСа» ........................................7 Технология выполнения работы 1. Разработка модели XML-документа 1.1. Составьте древовидную модель нетипового XML-документа — электронного шаблона (бланка), соответствующего публикуемому электронному сообщению о некотором событии (например, совещании, заседании, семинаре, конференции и пр.). Для этого в качестве исходной модели используйте модель, приведенную на рис. 1. Здесь показаны названия элементов XML-документа и связи между ними: корневой элемент модели — Event (Событие); корневой элемент включает дочерние элементы первого уровня — Name (Наименование), Location (Место проведения), Date (Дата), Contact (Контактная информация), Description (Описание события); дочерние элементы второго уровня — Start (Начало), End (Окончание), Application (Приложение), Name (Фамилия), Phone (Телефон) и т. д. 1 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE Рис. 1. Исходная модель нетипового XML-документа Замечание: Показанные на рисунке знак вопроса, плюс, звездочка означают следующее: «?» — в действительном XML-документе может быть только один дочерний элемент; «+» — разрешаются один или более элементов; «*» — разрешаются ноль или более элементов. 1.2. Модель XML-документа измените произвольным образом (например, введите новые элементы, другие названия у части имеющихся элементов или удалите какие-либо элементы; вы можете также изменить связи между элементами модели и последовательность элементов), используя для этого графический редактор. 1.3. Сохраните файл Работа_3_ауд с измененной моделью в вашей папке. 2. Формирование DTD-определения XML-документа 2.1. Ознакомьтесь с приведенным ниже фрагментом DTD-определения, соответствующим части модели нетипового XML-документа: <!ELEMENT <!ELEMENT <!ELEMENT <!ELEMENT <!ELEMENT ... <!ELEMENT <!ELEMENT Name (#PCDATA ) > Location (#PCDATA ) > Date (Start, End, Aplication) > Contact (Name, Phone, Email?) > Description (Para+) > Para (#PCDATA | Bold | Italic)* > Bold (#PCDATA | Italic)* > 2 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE Здесь каждая строка является объявлением соответствующего элемента. Она содержит имя элемента и модель содержимого элемента. Модель содержимого указывает, какие дочерние элементы может или должен иметь элемент и в каком порядке и (или) тип данных. Дочерние элементы разделяются запятыми. Например: — строка <!ELEMENT Event (Name, Location, Date, Contact, Description) > указывает, что корневой элемент Event (Событие) должен включать дочерние элементы Name (Наименование), Location (Место), Date (Дата), Contact (Контактная информация), Description (Описание). Некоторые другие основные правила формирования DTD-определения поясняются следующими примерами: — строка <! ELEMENT Name (#PCDATA) > указывает на дочерний элемент Name (Наименование) с ключевым словом #PCDATA, допускающим использование внутри элемента Name только символьных данных; — в строке <!ELEMENT Contact (Name, Phone, Email?) > символом ‘?’ указано, что в действительном XML-документе разрешается только один дочерний элемент Email или его может не быть совсем; — в строке <!ELEMENT Description (Para+) > указано, что элемент Description содержит дочерний элемент Para. Символом ‘+’ разрешается один или более элементов; — строка <! ELEMENT Para (#PCDATA | Bold | Italic)* > говорит о том, что элемент Para может содержать символьные с начертанием Bold или Italic. Разрешаются ноль или более элементов. данные 2.2. Сформируйте новое DTD-определение, соответствующее вашей модели нетипового XML-документа. Для этого: cкопируйте из папки Free_access/e-cоmmerce/XML папку xmetal в вашу персональную папку XML; из текстового редактора Блокнот откройте файл event.dtd (путь: Z:\XML\xmetal\Rules) и внесите в программный код дополнения и изменения, соответствующие вашей модели XML-документа; сохраните исправленный программный код с расширением *.dtd в той же папке Rules. 3 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE 3. Создание шаблона нетипового XML-документа 3.1. Из меню File XML-редактора XMetal Author выберите команду, открывающую диалог New.... На закладке General выберите Blank XML Document (Пустой XML-документ) и затем выберите созданный Вами файл с расширением *.dtd из папки Rules (Правила). Замечание: Вы должны увидеть пустое окно XML-редактора с перечислением всех элементов XML-документа, соответствующих разработанной вами модели (командная строка View/Element List должна быть активна) (рис. 2). Рис. 2. Часть окна XML-редактора в режиме Normal View 3.2. Создайте структуру XML-документа, отвечающую его модели. Для этого сначала создайте корневой элемент Event, дважды щелкнув по его имени. Наблюдайте результат в рабочем окне XML-документа (рис. 3): Рис. 3. Результат создания корневого элемента 3.3. Для создания очередного, теперь уже дочернего элемента модели выполните последовательно следующие операции: переключитесь в режим Plain Text View (Отображение разметки XMLдокумента); установите курсор левее закрывающего тега </Event>; вновь перейдите в режим Normal View; 4 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE Замечание: Обратите внимание: в окне элементов XML-редактора появился новый элемент — Location, строго соответствующий сформированному нами DTD-описанию (рис. 4): Рис. 4. Второй элемент шаблона в окне элементов двойным щелчком вставьте элемент Location в XML-документ. Далее по аналогичной методике вставьте другие элементы модели в XMLдокумент. Полученный результат наблюдайте в режиме Normal View (рис. 5) и в режиме Browse View (рис. 6): Рис. 5. Шаблон документа в режиме Normal View Рис. 6. Шаблон документа в режиме Browse View Замечание: Легко заметить, что в данном пустом, например документе текст заменен командами обработки, такими , как <?xm-replace_text {Click here to enter the event’s name}?>. Подобные команды обработки характерны для XML-редактора XMetal Author. Редактор представляет их как поля ввода, напоминающие поля ввода текстового процессора типа «щелкни на мне». Когда пользователь вводит текст, этот вводимый текст заменяет команду обработки. 5 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE 3.4. В режиме Plain Text View замените англоязычные тексты в фигурных скобках фразами на русском языке, соответствующими модели XML-документа, например такими (рис. 7): Рис. 7. Шаблон нетипового XML-документа в режиме Plain Text View Далее созданный вами шаблон (рис. 8) сохраните в основном каталоге C:\Program Files\Corel\XMetaL 4\Author ?\Template в предварительно созданной папке, например Pineapplesoft с именем Event Description Form.xml (Шаблон описания мероприятия). Рис. 8. Шаблон нетипового XML-документа на русском языке Убедитесь в работоспособности шаблона. Для этого создайте новый документ с использованием созданного вами шаблона (путь New/Pineapplesoft/Event Description Form) (рис. 9): 6 МЕЖДУНАРОДНЫЙ БАНКОВСКИЙ ИНСТИТУТ INTERNATIONAL BANKING INSTITUTE Рис. 9. Закладка с шаблоном нетипового XML-документа Отметьте недостатки их преодоления. созданного шаблона и предложите способы 3.5. Предъявите результаты работы преподавателю. 4. Контрольные вопросы 1. Какой XML-документ можно отнести к нетиповому XML-документу? 2. По какому принципу составляется древовидная модель нетипового XMLдокумента — электронного шаблона (бланка), соответствующего публикуемому электронному сообщению о некотором событии? 3. Что означают знак вопроса, плюс, звездочка в шаблоне древовидной модели нетипового XML-документа? 4. По какому принципу формируется структура каждой строки DTDопределения модели нетипового XML-документа? 5. Как сформировать новое DTD-определение, соответствующее вашей модели нетипового XML-документа? 6. Перечислите действия на первом шаге создания шаблона нетипового XMLдокумента; что вы должны увидеть в окне XML-редактора в результате выполнения этих действий? 7. Перечислите этапы создания структуры XML-документа, отвечающей его модели, относящиеся ко второму шагу создания шаблона нетипового XML-документа. 8. В каком режиме XML-документа нужно выполнять действия для создания корневого и дочерних элементов модели и в каком наблюдать результат? 9. В каком режиме рекомендуется заменить англоязычные тексты в фигурных скобках фразами на русском языке, соответствующими модели XML-документа? 10. Где рекомендуется сохранить созданный вами шаблон нетипового XMLдокумента? 11. Как убедиться в работоспособности созданного Вами шаблона? 5. Работа в интерактивной образовательной среде «ВУОКСа» Выполните задания теста «Создание шаблона нетипового XML-документа» в интерактивной образовательной среде «ВУОКСа». 7