Что такое XML? - 2.2.1 Ограничение вхождений

E-mail Печать PDF
Рейтинг пользователей: / 0
ХудшийЛучший 
Индекс материала
Что такое XML?
Невозможно найти взаимосвязанные ресурсы.
Применения XML
Структура XML-документа
8.1.3.2. Пролог и директивы
8.1.3.3. Комментарии
8.1.3.4. Имена и данные
Page 8
8.1.3.6. Секции CDATA
Разделы и их декларации
Декларация типа документа
8.1.6. Пример XML-документа
8.2.1. Общие сведения
8.2.2. Декларации типов элементов
8.2.3. Декларации списков атрибутов
8.2.4. Декларации нотаций
8.2.5. Пример DTD
8.2.6. Параметрические разделы
8.2.7. Условные секции
XML-схемы - стандарты, написанные на компьютерном языке
8.3.3. Область действия пространства имен
8.3.4. Базовые URI фрагментов XML-документа
Основные понятия: документ
2.1 Схема заказа на покупку
2.2 Определение комплексных типов, объявление элементов и атрибутов
2.2.1 Ограничение вхождений
2.2.2 Глобальные элементы и атрибуты
2.2.3 Конфликты имен
2.3 . Простые типы
2.3.1 Тип List
2.3.2 Тип Union
2.4 Определение анонимных типов
2.5 Содержимое элемента
2.5.2 Смешанное содержимое
2.5.3 Пустое содержимое
2.6 Аннотации
Page 37
2.8 Группы атрибутов
2.9 Значения Nil
3 Дополнительные понятия I: именные пространства, схемы & квалификация
3.1 Целевые именные пространства и не квалифицируемые локальные объекты
3.2 Квалифицируемые локальные объекты
3.3 Глобальные объявления в сравнении с локальными объявлениями
3.4 Необъявленные целевые именные пространства
4 . Дополнительные понятия II: международный заказ на покупку
4.1 Схема в нескольких файлах
4.2 Получение производных типов расширением
4.3 Использование производных типов в документах
4.4 Производные сложные типы, полученные путем ограничений
4.5 Переопределение типов и групп
4.6 Группы замены
4.7 Абстрактные элементы и типы
4.8 Управление созданием и использованием производных типов
5 Дополнительные понятия III: квартальный отчет
5.1 Определение уникальности
5.2 Определение ключей и ссылок на них
5.3 Ограничения XML-схемы в сравнении с атрибутом ID XML 1.0
5.4 Импортирование типов
5.4.1 Библиотеки типов
5.5 Любой элемент, любой атрибут
5.6 schemaLocation
5.7 Соответствие
A Благодарности
B Простые типы и их фасеты
C Использование сущностей
D Регулярные выражения
Все страницы
2.2.1 Ограничение вхождений

Значение параметра minOccurs равное 0 у элемента comment говорит о том, что он не обязательно будет присутствовать в составе элемента PurchaseOrderType. Вообще, элемент является обязательным, если значение minOccurs больше или равно 1. Максимальное число появлений элемента определяется значением, задаваемым параметром maxOccurs. Это значение может быть положительным целым числом типа 41, или термом unbounded, что означает отсутствие ограничения максимального числа появлений. Значение по умолчанию для minOccurs и для maxOccurs равно 1. Таким образом, когда элемент типа comment объявлен без maxOccurs , то это означает, что элемент может появиться не более одного раза. Если Вы определяете значение только для minOccurs, то убедитесь что это значение меньше или равно значению по умолчанию maxOccurs. То есть это значение должно быть 0 или 1. Точно так же, если Вы определяете значение только для maxOccurs, то это значение должно быть больше или равно значению по умолчанию minOccurs, то есть 1 или больше. Если оба значения опущены, элемент должен появиться в документе точно один раз.

Атрибуты, в отличие от элементов, могут появиться только однажды или ни разу. Поэтому и синтаксис для определения появления атрибутов отличается от синтаксиса для определения числа появлений элементов. В частности атрибуты могут быть объявлены с параметром use. В зависимости от значения этого параметра атрибут обязателен (use="required"), необязателен (use="optional"), или запрещен (use="prohibited"). Например, объявление атрибута partNum в po.xsd.

Значения по умолчанию и атрибутов и элементов могут быть объявлены с использованием параметра default, хотя этот параметр в том или ином случае работает по разному. Атрибут со значением, определенным по умолчанию, может появляться или не появляться в документе. Если атрибут не появляется в документе, то обработчик схемы обеспечивает, атрибут со значением равным значению default. Обратите внимание, что значения по умолчанию для атрибутов имеют смысл, только если сами атрибуты являются необязательными, поэтому будет ошибкой определить значение по умолчанию вместе с параметром use отличным от use="optional".

Значение по умолчанию для элементов обрабатывается немного по-другому. Если элемент появляется в документе, но не содержит какого либо значения, то в качестве его значения подставляется значение по умолчанию. Однако если элемент не появляется в документе, то обработчик схемы не обеспечивает его значения вообще. В общем, различия между значениями по умолчанию элемента и атрибута в следующем: заданное по умолчанию значение атрибута применяется тогда, когда атрибут отсутствует, а заданное по умолчанию значение элемента применяются тогда, когда элемент присутствует в документе, но не имеет значения (пуст).

Атрибут fixed используется в объявлениях и атрибутов и элементов. Он используется, чтобы указать, что атрибут или элемент могут принимать фиксированные значения. Например, в po.xsd объявлен атрибут country, со значением равным US. Приведенное в примере объявление означает, что атрибут country является необязательным (по умолчанию значение параметра use равно optional), хотя, если атрибут появляется в документе, то его значением должно быть US. Если атрибут country, не появляется в документе, обработчик схемы обеспечит атрибут country со значением US. Обратите внимание, что понятия фиксированного значения и значения по умолчанию являются взаимоисключающими, поэтому объявление не может одновременно содержать атрибуты fixed и default.

Примеры использования указанных выше параметров в объявлениях элементов и атрибутов приведены в таблице 1.

Таблица 1 . Ограничения на появление элементов и атрибутов в документе

Элементы
(minOccurs, maxOccurs) fixed, default

Атрибуты
use, fixed, default

Примечание

(1, 1) -, -

required, -, -

элемент/атрибут должен появиться однажды, может иметь любое значение

(1, 1) 37, -

required, 37, -

элемент/атрибут должен появиться однажды, его значение должно быть 37

(2, unbounded) 37, -

n/a

элемент должен появиться не менее 2 раз, его значение должно быть 37; minOccurs и maxOccurs могут быть положительными целыми числами. maxOccurs равный unbounded задает неограниченное появление элемента

(0, 1) -, -

optional, -, -

элемент/атрибут может появиться однажды, и может иметь любое значение

(0, 1) 37, -

optional, 37, -

элемент/атрибут может появиться однажды. Если он появится, то его значение должно быть 37. Если он не появится, то его значение будет 37.

(0, 1) -, 37

optional, -, 37

элемент/атрибут может появиться однажды. Если элемент не задан, то его значение по умолчанию равно 37, иначе его допустимое значение равно заданному

(0, 2) -, 37

n/a

элемент может появиться однажды, или дважды, или ни разу. Если элемент не появится, то его значение не обеспечено; если появится, и его значение не задано, то по умолчанию его значение будет равно 37; иначе его допустимое значение равно заданному в документе. Вообще значениями, minOccurs и maxOccurs могут быть положительные целые числа. При этом значение maxOccurs может также принимать значение unbounded (не ограничено)

(0, 0) -, -

prohibited, -, -

элемент/атрибут не должен появиться в документе

Обратите внимание, что ни minOccurs, maxOccurs, ни use не может появиться в объявлениях глобальных элементов и атрибутов.



 

Добавьтe Ваш комментарий

Ваше имя (псевдоним):
Ваш адрес почты:
Заголовок:
Комментарий: