
- •Предназначение xml
- •Язык xml решает проблемы
- •Создание xml-документов
- •Отображение xml-документов
- •Некоторые базовые правила xml
- •Отображение xml-документа
- •Отобразите xml-документ без таблицы стиля
- •Основной критерий для валидного документа
- •Форма записи dtd
- •Создание dtd
- •Объявление типов элементов
- •Форма записи объявления типа элемента
- •Описание содержимого элемента
- •Задание дочернего содержимого элемента
- •Форма записи объявления списка атрибутов
- •Тип атрибута
- •Задание маркерного типа
- •Лабораторная работа 2 Пространства имен xml
- •Теоретическая часть Анатомия элемента
- •Вставка элементов html в xml-документы и использование пространства имен
- •Подготовка:
- •Ситуация:
- •Задание:
- •Примечание:
- •Решение:
- •Теория Вставка элементов html в xml-документы и использование пространства имен
- •Использование одного шаблона xsl
- •Предназначение xml
- •Язык xml решает проблемы
- •Создание xml-документов
- •Отображение xml-документов
- •Некоторые базовые правила xml
- •Отображение xml-документа
- •Отобразите xml-документ без таблицы стиля
- •Основной критерий для валидного документа
- •Форма записи dtd
- •Создание dtd
- •Объявление типов элементов
- •Форма записи объявления типа элемента
- •Описание содержимого элемента
- •Задание дочернего содержимого элемента
- •Форма записи объявления списка атрибутов
- •Тип атрибута
- •Задание маркерного типа
- •Лабораторная работа 2 Пространства имен xml
- •Теоретическая часть Анатомия элемента
- •Вставка элементов html в xml-документы и использование пространства имен
- •Подготовка:
- •Ситуация:
- •Задание:
- •Примечание:
- •Решение:
- •Теория Вставка элементов html в xml-документы и использование пространства имен
- •Использование одного шаблона xsl
- •Предназначение xml
- •Язык xml решает проблемы
- •Создание xml-документов
- •Отображение xml-документов
- •Некоторые базовые правила xml
- •Отображение xml-документа
- •Отобразите xml-документ без таблицы стиля
- •Основной критерий для валидного документа
- •Форма записи dtd
- •Создание dtd
- •Объявление типов элементов
- •Форма записи объявления типа элемента
- •Описание содержимого элемента
- •Задание дочернего содержимого элемента
- •Форма записи объявления списка атрибутов
- •Тип атрибута
- •Задание маркерного типа
- •Лабораторная работа 2 Пространства имен xml
- •Теоретическая часть Анатомия элемента
- •Вставка элементов html в xml-документы и использование пространства имен
- •Подготовка:
- •Ситуация:
- •Задание:
- •Примечание:
- •Решение:
- •Теория Вставка элементов html в xml-документы и использование пространства имен
- •Использование одного шаблона xsl
- •Лабораторная работа 5 Вывод документа xml в Internet Explorer с использованием dom xml
- •3.2. Реализация dom xml в Internet Explorer
- •3.3. Фундаментальные типы узлов dom для xml
- •3.3.1. Узлы NodeList и NamedNodeMap
- •3.3.2. Узел Node
- •3.3.3. Узел Document
- •3.3.4. Узел DocumentFragment
- •3.3.5. Узел Element
- •3.3.6. Узел Attr
- •3.3.7. Узел Comment
- •3.3.8. Узел Text
- •4. Порядок выполнения работы
- •Вариант 2-01
- •Вариант 2-02
- •Вариант 2-03
- •Вариант 2-04
- •Вариант 2-05
- •Вариант 2-06
- •Вариант 2-07
- •Вариант 2-08
- •Вариант 2-09
- •Вариант 2-10
- •Вариант 2-11
- •Вариант 2-12
- •Вариант 2-13
- •Вариант 2-14
- •Вариант 2-15
- •Вариант 2-16
- •Вариант 2-17
- •Вариант 2-18
- •Вариант 2-19
- •Вариант 2-20
- •Вариант 2-21
- •Вариант 2-22
- •Вариант 2-23
- •Вариант 2-24
- •Вариант 2-25
- •Вариант 2-26
- •Вариант 2-27
- •Вариант 2-28
- •Вариант 2-29
- •Вариант 2-30
- •5. Содержание отчета
- •6. Вопросы для самоконтроля
Форма записи объявления списка атрибутов
Объявление списка атрибутов имеет следующую общую форму:
<!ATTLIST Имя ОпрАтр>
Здесь Имя представляет собой имя элемента, ассоциированного с атрибутом или атрибутами. ОпрАтр – это одно или несколько определений атрибутов, каждое из которых определяет один атрибут.
Определение атрибута имеет следующую форму записи:
Имя ТипАтр ОбъявУмолч
Здесь Имя представляет собой имя атрибута.
ТипАтр представляет собой тип атрибута, т.е. виды значений, которые могут быть присвоены атрибуту. (О типах атрибутов пойдет речь в следующем разделе.) ОбъявУмолч – это объявление по умолчанию, которое указывает на обязательность атрибута и содержит другую информацию. (Об этом будет рассказано далее в этой лекции.)
Допустим, вы объявили тип элемента с именем FILM следующим образом:
<!ELEMENT FILM (TITLE, (STAR | NARRATOR | INSTRUCTOR) )>
Вот пример объявления списка атрибутов, которое описывает два атрибута – Class и Year – для элемента FILM:
<!ATTLIST FILM Class CDATA "fictional" Year CDATA #REQUIRED>
На рисунке 3.3 представлены составные части этого объявления.
Рис. 3.3.
Вы можете присвоить атрибуту Class любую строку в кавычках (ключевое слово CDATA ); если вы опускаете атрибут для определенного элемента, ему будет автоматически присвоено значение по умолчанию "fictional". Вы можете присвоить атрибуту Year любую строку в кавычках; этот атрибут, однако, должен быть обязательно присвоен для каждого элемента FILM (ключевое слово #REQUIRED ), поэтому он не имеет значения по умолчанию.
Следующий полный XML-документ включает это объявление списка атрибутов, а также элемент FILM:
<?xml version="1.0" encoding="windows-1251" ?>
<!DOCTYPE FILM
[
<!ELEMENT FILM (TITLE, (STAR | NARRATOR | INSTRUCTOR) )>
<!ATTLIST FILM Class CDATA "fictional" Year CDATA
#REQUIRED>
<!ELEMENT TITLE (#PCDATA)>
<!ELEMENT STAR (#PCDATA)>
<!ELEMENT NARRATOR (#PCDATA)>
<!ELEMENT INSTRUCTOR (#PCDATA)>
]
>
<FILM Year="1948">
<TITLE>The Morning After</TITLE>
<STAR>Morgan Attenbury</STAR>
</FILM>
Для элемента FILM атрибуту Year присвоено значение "1948". Атрибут Class опущен; однако, поскольку этот атрибут имеет значение по умолчанию ("fictional"), оно присваивается атрибуту, как если бы вы записали его в качестве значения атрибута.
Примечание. Если вы использовали для данного типа элемента более одного объявления списка атрибутов, содержания двух объявлений объединяются. Если атрибут с заданным именем объявлен для одного и того же элемента несколько раз, первое объявление используется, а последующие – игнорируются. (Множественные объявления списков атрибутов могут иметь место, если документ имеет как внутренние, так и внешние DTD.)
Тип атрибута
Тип атрибута является вторым необходимым компонентом в определении атрибута. Он задает вид значений, которые вы можете присваивать атрибуту внутри документа, как показано на рисунке 3.4.
Рис. 3.4.
Вы можете задавать тип атрибута тремя различными способами.
Строковый тип. Строковый тип атрибута может быть назначен любой строке в кавычках (литералу), которая отвечает общим правилам. Вы должны объявить строковый тип атрибута с использованием ключевого слова CDATA, как это сделано для определения атрибута Class в следующем примере:
<!ATTLIST FILM Class CDATA "fictional">
Маркерный тип. Значения, которые вы можете присваивать атрибуту маркерного типа, имеют ряд ограничений.
Нумерованный тип. Для нумерованного типа атрибута вы можете присваивать одно значение или список определенных значений.