Упражнения
8.3. Используя JavaScript, добавьте к документу article.xml (рис. 8.2) корневой элемент
<rating>*****</rating> Результат отобразите так, как показано на рис. 8.4. Используя Javascript, создайте XML-документ. Документ должен иметь корневой элемент с именем message, который содержит дочерний элемент myMessage, содержащий в свою очередь текстовый узел. Отобразите документ с помощью Internet Explorer. [Подсказка. Используйте HTML-свойство innerText для отображения XML. Также можно использовать свойство xml объекта DOMDocument.]
8.5. Расширьте возможности приложения распорядка дня (рис. 8.17 и 8.18) так, чтобы пользователь мог добавлять note как дочерний узел date. Используйте компоненты графического пользовательского интерфейса для того, чтобы пользователь мог задавать год, месяц, день, время и примечание. Если отсутствует узел date, соответствующий дате, введенной пользователем, то необходимо создать новый узел типа date внут-. ри соответствующего узла year и добавить новый узел note. Отобразите новый узел с помощью запроса. jtti.
8.6. Напишите приложение Java, которое загружает XML-документ, содержащий DTD, приведенное на рис. 8.19. Используйте данные XML-документа для вывода прямоугольников и кругов с текстом внутри. Атрибуты х и у представляют левую верхнюю точку фигуры. Предполагается, что круг вписан в невидимый прямоугольник. Атрибу- ты width и height соответствуют ширине и высоте прямоугольника, a radius — радиусу круга. Выполните контроль допустимости XML-документа следующему DTD.
<!DOCTYPE figure [
<!ELEMENT figure ( rectangle*, circle* )>
<!ELEMENT rectangle ( #PCDATA )>
<!ATTLIST rectangle x CDATA #REQUIRED
у CDATA #REQUIRED
width CDATA #REQUIRED
height CDATA #REQUlRED>
<!ELEMENT circle ( #PCDATA )>
<!ATTLIST circle x CDATA #REQUIRED у CDATA #REQUIRED
radius CDATA #REQUIRED>
Рис. 8.19. DTD для упражнения 8.6
8. 7. (Проверка допустимости). Создайте Web-страницу, использующую JavaScript и msxml, для проверки допустимости XML-документов. Отобразите либо сообщение о том, что документ является допустимым, либо сообщение, указывающее, что документ не удовлетворяет DTD. В сообщении должен быть указан номер ошибочной строки и описание ошибки. [Подсказка. Используйте объект XMLDOMParserError msxml для отображения ошибок синтаксического анализа и свойство reason для получения сообщения о причине аварийного завершения синтаксического анализа документа.]
Упражнения для самоконтроля
11.1. Определите, какие из нижеследующих высказываний истинные, а какие ложные. Если высказывание ложное, то объясните почему.
a) Язык XML Path (XPath) используется для нахождения определенных частей XML-документа.
b)XPath отображает XML-документ как SAX-документ, содержащий различные элементы, Имеется семь различных типов узлов, которые могут быть в составе XML-документа. Узел-атрибут имеет родительский узел и является дочерним для родительского узла.
c) Ось указывает, какие узлы необходимо искать, и определена относительно контекстного узла.
d)Оси, тесты узлов и предикаты можно объединять для формирования пути доступа.
g) Предикаты используются для выделения набора узлов, основываясь на некоторых критериях.
h) Шаг в пути доступа всегда содержит предикат.
11.2. Заполните пробелы в каждом из следующих предложений:
a) В соответствии с XPath каждый узел XML-документа, исключая корневой, имеет __________________ узел, каждый из которых может иметь любое количество узлов.
b)В XML документе ___________ узел может быть только в корне дерева.
c)Каждый XML-элемент имеет набор ___________ , автоматически связанных с ним.
d)Узел, с которого XPath начинает поиск, называется ___________ узлом.
е)_____ узлов определяют подмножество узлов, которые определены осью.
f) Путь____ состоит из____ , разделенных слэшами.
g)_____ выполняют действия над набором узлов, возвращенных путем доступа.
h) Функция___ возвращает число узлов в наборе, указанном в аргументе.
i)______ значение, связанное с узлом-комментарием, включает_______ комментария без предшествующих и завершающих пробелов.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.