- •Лабораторная работа 4-01
- •3.1.2. Объявления
- •3.1.3. Элемент
- •3.1.4. Инструкция по обработке
- •3.1.5. СекцииCdata
- •3.1.6. Ссылки
- •3.1.7. Комментарии
- •3.2. Объявление типа документа (dtd)
- •3.2.1. Структура dtd
- •3.2.2. Определение элемента
- •3.2.3. Определение атрибутов элемента
- •3.2.4. Определение сущности
- •3.2.5. Определение нотации
- •3.3. Программа xmlSpy2006HomeEdition
- •3.3.1. Общие сведения о xmlSpy2006HomeEdition
- •3.3.2. Установка xmlSpy
- •3.3.3. Работа с xmlSpy
- •3.3.3.1. Компоненты xmlSpy
- •3.3.3.2. Создание dtd документа xml
- •3.3.3.3. Создание нового документа xml
- •3.3.3.4. Другие операции с документами xml и dtd
- •3.4. Назначение схем xml
- •3.5. Типы данных схемы xml
- •3.5.1. Встроенные примитивные типы данных схемы xml
- •3.5.2. Встроенные производные типы данных схемы xml
- •3.5.3. Свойства данных схемы xml
- •3.5.3.1. Фундаментальные свойства
- •3.5.3.2. Ограничивающие свойства
- •3.5.3.3. Ограничивающие условия для встроенных типов данных схемыXml
- •3.6. Компоненты схемыXml
- •3.6.1. Первичные компоненты схемы xml
- •3.6.1.1. Определения простого типа
- •3.6.1.2. Определения комплексного типа
- •3.6.1.3. Объявления атрибутов и элементов
- •3.6.2. Вторичные компоненты схемы xml
- •3.6.2.1. Определение группы атрибутов и группы моделей
- •3.6.2.2. Определения ограничений
- •3.6.2.3. Объявление нотации
- •3.6.3. Справочные компоненты схемы xml
- •3.6.3.1. Аннотации
- •3.6.3.2. Определения моделей в группе
- •3.6.3.3. Определения шаблонов
- •3.6.4. Определение ограничивающих свойств
- •3.6.5. Компоненты схемы в целом
- •3.6.6. Назначение атрибутов в компонентах схемы xml
- •3.6.7. Допустимые значения атрибутов в компонентах схемыXml
- •3.6.8. Использование регулярных выражений в схемах xml
- •3.6.8.1. Метасимволы
- •3.6.8.2. Ссылки на символы
- •3.6.8.3. Операторы повторения
- •3.6.8.4. Операторы диапазона символов
- •3.6.8.5. Специальные символы
- •3.7. Включение схемы в документ xml
- •3.8. Формирование схем в xmlSpy2006HomeEdition
- •3.8.3.2. Формирование схемы с использованием модели содержимого
- •3.8.3.3. Пример формирование простой схемы
- •4. Порядок выполнения работы
- •Вариант 1-01
- •Вариант 1-02
- •Вариант 1-03
- •Вариант 1-04
- •Вариант 1-05
- •Вариант 1-06
- •Вариант 1-07
- •Вариант 1-08
- •Вариант 1-09
- •Вариант 1-10
- •Вариант 1-11
- •Вариант 1-12
- •Вариант 1-13
- •Вариант 1-14
- •Вариант 1-15
- •Вариант 1-16
- •Вариант 1-17
- •Вариант 1-18
- •Вариант 1-19
- •Вариант 1-20
- •Вариант 1-21
- •Вариант 1-22
- •Вариант 1-23
- •Вариант 1-24
- •Вариант 1-25
- •Вариант 1-26
- •Вариант 1-27
- •Вариант 1-28
- •Вариант 1-29
- •Вариант 1-30
- •5. Содержание отчета
- •6. Вопросы для самоконтроля
3.2.3. Определение атрибутов элемента
Список атрибутов некоторого элемента задается следующим образом:
<!ATTLISTэлемент
атрибут-1 тип-1 значение-1
атрибут-2 тип-2 значение-2...
>
В этом определении параметр элементзадает имя элемента, для которого определяется данный список атрибутов,атрибут-i–имяi-го атрибута,тип-i– типi-го атрибута изначение-i–значениеi-го атрибута.
Параметр значение-iопределяет, как и какие значения должны быть присвоены атрибуту. Параметр может принимать одно из следующих значений:
ключевое слово #REQUIRED, которое показывает, что этот атрибут должен всегда присутствовать в элементе и иметь некоторое значение;
ключевое слово #IMPLIED, которое показывает, что атрибут является необязательным и может отсутствовать в элементе;
ключевое слово #FIXED, за которым следует значение, заключенное в кавычки (задает атрибут, который всегда должен иметь одно и то же фиксированное значение);
значение, заключенное в кавычки, которое определяет значение атрибута по умолчанию.
Параметр тип-iопределяет тип атрибута. ВXMLсуществуют три различных типа атрибутов:
строковые атрибуты (StringType);
маркированные атрибуты (TokenizedType);
перечислимые атрибуты (EnumeratedType).
Строковые атрибуты(типCDATA) могут принимать в качестве значения любые символьные строки.
Маркированные атрибутыимеют один из следующих фиксированных значений типов:
ID–уникальный идентификатор для элемента в документе. ЗначениеIDдолжно состоять из имени – буквы или символа подчеркивания, за которыми могут следовать другие символы;
IDREF–указывает на элемент с заданным значениемID;
IDREFS– указывает на два и более элемента в документе при помощи спискаID, в котором элементы списка отделены друг от друга пробелами;
ENTITY–указывает на внешнюю сущность (значение должно состоять из имени, а также должно соответствовать имени внешней сущности);
ENTITIES–указывает на две и более внешних сущностей при помощи списка сущностей, в котором элементы списка отделены друг от друга пробелами;
NMTOKEN–принимает значение имени (в отличие от значений типа CDATA, которые могут содержать любые символы, значенияNMTOKENмогут содержать только буквы, цифры, а также ".", "-", "_" и ":");
NMTOKENS–принимает значение двух или более имен, разделенных пробелами.
Атрибуты перечислимого типа представляются списком значений. Атрибуты могут принимать одно значение из списка значений, предоставляемых в объявлении. Тип перечисления может задаваться нотациями (notationtype) и собственно перечислениями (enumeration). Перечисление – это одно или несколько имен, которые разделены пробелами и символами "|". Перечисление задает несколько возможных вариантов значения атрибута. Хотя в качестве значения можно использовать ключевые слова#IMPLIEDили#REQUIRED, обычно используется значение по умолчанию.
Специальный атрибут, называемый xml:space, может быть присоединён к элементу для того, чтобы уведомить процессор о намерении сохранить пробел в данном элементе для использования приложением. Если данный атрибут объявляется, он должен быть задан как перечислимый тип, значениями которого могут быть либо "default" или "preserve", либо одно из значений.
Значение "default" указывает, что для данного элемента принимаются режимы обработки по умолчанию пробелов в данном приложении, а значение "preserve" задает режим сохранения в приложении всех пробелов. Это определение действует для всех элементов внутри содержимого элемента, для которого оно задано, если только оно не переопределяется другим экземпляром атрибутаxml:space. Обычно атрибутxml:spaceуказывается, если необходимо сохранить исходное форматирование документа, например, при выводе программы или стихов.
При обработке документа также часто используется идентификация естественного или формального языка, на котором написано содержимое. Для определения языка содержимого элемента и языка значений атрибутов в элемент документа может быть вставлен специальный атрибут xml:lang. Значением атрибута являются коды языков, например,uk,ru,en,en-USилиen-GB. документ, чтобы специфицировать язык, используемый в содержимом и значениях атрибутов любого элемента в документе XML. В правильных документах этот атрибут, как и некоторые другие, обязан быть объявлен, если используется.
