Ход работы
Рассмотрим пример создания xml-файла в текстовом редакторе MS Word (можно использовать Блокнот). Создадим файл example.xml, в котором будет содержаться информация об имени клиента, его адресе, городе, штате и почтовом коде.
Пример xml-файла:
Создайте xml-файл, содержащий аналогичную информацию о ваших друзьях или одногруппниках.
Создадим xml-документ, содержащий информацию об авторах журнала:
Дополните файл пятью записями.
В папке с лабораторной работой находится папка Пример 1, содержащая прайс-лист в формате xml, а также связанные с ним файлы преобразования *.xsl и файл схемы *.xsd. На основе данного прайс-листа составьте собственный прайс-лист (например, книжного магазина).
Задания для самостоятельной работы
Требуется разработать стандарт хранения адресных книг в формате XML. В настоящее время информация хранится в виде, аналогичном представленном в трех таблицах ниже:
Номер |
1 |
Фамилия |
Иванов |
Имя |
Иван |
Отчество |
Иванович |
Телефон |
1111111 (гор.) 8-911-1111111 (моб.) |
Номер |
2 |
Фамилия |
Петров |
Имя |
Петр |
Отчество |
Петрович |
Телефон |
2222222 (гор.) 8-911-2222222 (моб.) |
Номер |
3 |
Фамилия |
Сидорова |
Имя |
Светлана |
Отчество |
Степановна |
Телефон |
3333333 (гор.) 8-911-3333333 (моб.) |
Задание:
создайте внешнее определение типа документа (файл pbml.dtd), которое определяло бы XML-совместимый формат для хранения данных, аналогичных представленных в таблицах. Затем на основе созданного вами DTD создайте файл PhoneBook.xml, который должен содержать в себе информацию из этих трех таблиц, при этом обеспечьте выполнение следующих условий:
корневым элементом телефонной книги должен быть элемент Phonebook;
каждая запись должна быть представлена элементом Record;
у каждого элемента Record должен быть обязательный атрибут Number (с информацией о номере записи);
в каждый элемент Record должны быть вложены обязательные элементы LastName (с информацией о фамилии), FirstName (с информацией об имени) и может быть вложен необязательный элемент Initials (с информацией об отчестве); каждый элемент LastName, FirstName, Initials может быть вложен в элемент Record только один раз;
в каждый элемент Record могут быть вложены необязательные элементы PhoneNumber; эти элементы могут быть вложены в элемент Record неограниченное количество раз;
для каждого элемента PhoneNumber должен быть предусмотрен обязательный атрибут PhoneType с двумя допустимыми значениями: L – для городских телефонов и M – для мобильных телефонов.
Преобразуйте xml-документ, созданный в предыдущем задании, с помощью стилевых таблиц xsl.
Папка «Преобразования» содержит примеры связи xml-документов с файлами *.xls. Рассмотрите подробно каждый пример.
Примените к документу «base_of_students.xml» (расположен в папке Пример 2) следующие преобразования:
выведите все группы вуза НТГУ;
выведите информацию о студентах женского пола вуза НТГУ;
выберите адреса лиц мужского пола вуза НГТУ;
отобразите средний балл студентов обоих вузов.
Примечание к Заданию 1.
Итоговый код файла pbml.dtd может быть таким:
Итоговый код файла PhoneBook.xml может быть таким: