- •Лабораторная работа 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.6.3.2. Определения моделей в группе
Определения моделей в группе моделей приведены в табл. 4.2.13.
Таблица 4.2.13. Определения моделей в группе моделей
|
Элемент |
Объявление |
Назначение |
|
sequence |
<sequence id = ID maxOccurs = (nonNegativeInteger | unbounded) : 1 minOccurs = nonNegativeInteger : 1 > (annotation?, (element | group | choice | sequence | any)*) </sequence> |
Определяет, что дочерние элементы данного элемента должны появляться в заданной последовательности. |
|
choice |
<choice id = ID maxOccurs = (nonNegativeInteger | unbounded) : 1 minOccurs = nonNegativeInteger : 1 > (annotation?, (element | group | choice | sequence | any)*) </choice> |
Разрешает задавать в родительском элементе только один из присутствующих в списке элементов. |
|
all |
<all id = ID maxOccurs = 1 : 1 minOccurs = (0 | 1) : 1 > (annotation?, element*) </all> |
Определяет, что элементы, содержащийся в нем, могут появляться в родительском элементе в любом порядке, и каждый элемент может появляться 0 или 1 раз. |
3.6.3.3. Определения шаблонов
Определения шаблонов приведены в табл. 4.2.14.
Таблица 4.2.14. Определения шаблонов схемы XML
|
Элемент |
Объявление |
Назначение |
|
any |
<any id = ID maxOccurs = (nonNegativeInteger | unbounded) : 1 minOccurs = nonNegativeInteger : 1 namespace = ((##any | ##other) | List (anyURI | (##targetNamespace | ##local))) : ##any processContents = (strict | lax | skip) : strict > (annotation?) </any> |
Позволяет расширить документ XML элементами, которые не определены в схеме. |
|
anyAttribute |
< anyAttribute id = ID namespace = ((##any | ##other) | List (anyURI | (##targetNamespace | ##local))) : ##any processContents = (strict | lax | skip) : strict > (annotation?) </anyAttribute> |
Позволяет расширить документ XML атрибутами, которые не определены в схеме. |
3.6.4. Определение ограничивающих свойств
Определения ограничивающих свойств приведены в табл. 4.2.15.
Таблица 4.2.15. Определения ограничивающих свойств схемы XML
|
Элемент |
Объявление |
Назначение |
|
length |
<length id = ID fixed = boolean : false value = nonNegativeInteger > (annotation?) </length> |
Задание ограничения на длину значения. |
|
minLength |
<minLength id = ID fixed = boolean : false value = nonNegativeInteger > (annotation?) </minLength> |
Задание ограничения на минимальную длину значения. |
|
maxLength |
<maxLength id = ID fixed = boolean : false value = nonNegativeInteger > (annotation?) </maxLength> |
Задание ограничения на максимальную длину значения. |
|
maxInclusive |
<maxInclusive id = ID fixed = boolean : false value = anySimpleType > (annotation?) </maxInclusive> |
Задание ограничения на включающую верхнюю границу значения. |
|
minInclusive |
<minInclusive id = ID fixed = boolean : false value = anySimpleType > (annotation?) </minInclusive> |
Задание ограничения на включающую нижнюю границу значения. |
|
maxExclusive |
<maxExclusive id = ID fixed = boolean : false value = anySimpleType > (annotation?) </maxInclusive> |
Задание ограничения на исключающую верхнюю границу значения. |
|
minExclusive |
<minExclusive id = ID fixed = boolean : false value = anySimpleType > (annotation?) </minExclusive> |
Задание ограничения на исключающую нижнюю границу значения. |
|
pattern |
<pattern id = ID value = anySimpleType > (annotation?) </pattern> |
Задание ограничения на шаблон значения. |
|
enumeration |
< enumeration id = ID value = anySimpleType > (annotation?) </ enumeration > |
Задание ограничения на список допустимых значений. |
|
whiteSpace |
< whiteSpace id = ID fixed = boolean : false value = ('collapse' | 'preserve' | 'replace') > (annotation?) </ whiteSpace > |
Задание ограничения на пробельные символы. |
|
totalDigits |
< totalDigits id = ID fixed = boolean : false value = positiveInteger > (annotation?) </ totalDigits > |
Задание ограничения на количество цифр в числе. |
|
fractionDigits |
< fractionDigits id = ID fixed = boolean : false value = nonNegativeInteger > (annotation?) </ fractionDigits > |
Задание ограничения на количество цифр в числе. |
