
- •Лекция 404
- •Схема XML. Элемент attribute.Формат
- •Схема XML. Элемент attribute. Атрибуты
- •Схема XML. Элемент attribute. Примеры
- •Схема XML. Встроенные атрибуты
- •Схема XML. Элемент element. Назначение
- •Схема XML. Элемент element. Формат
- •Схема XML. Элемент element. Атрибуты (1)
- •Схема XML. Элемент element. Атрибуты (2)
- •Схема XML. Элемент element. Примеры
- •Схема XML. Элемент unique.
- •Схема XML. Элемент selector.
- •Схема XML. Элемент field.
- •Схема XML. Элементы unique, selector и field. Пример
- •Схема XML. Элемент key.
- •Схема XML. Элемент keyref.
- •Схема XML. Элементы key, keyref, selector и field. Пример
- •Схема XML. Комплексные элементы
- •Схема XML. Элемент complexType
- •Схема XML. Элемент complexType. Варианты содержимого
- •Схема XML. Элемент sequence
- •Схема XML. Элемент sequence. Пример
- •Схема XML. Элемент any. Формат
- •НеобязательныйСхема атрибутXML. Элементзадаетanyуникальный. Атрибуты (1) id
- •Схема XML. Элемент any. Атрибуты (2)
- •Схема XML. Элемент any. Пример
- •Схема XML. Элемент choice. Формат
- •Схема XML. Элемент any. Пример
- •Схема XML. Элемент all. Формат
- •Схема XML. Элемент any. Пример
- •Схема XML. Элемент group. Формат
- •Схема XML. Элемент group. Пример
- •Схема XML. Элемент attributeGroup. Формат
- •Схема XML. Элемент attributeGroup. Пример
- •Схема XML. Элемент anyAttribute. Формат
- •Схема XML. Элемент anyAttribute. Пример
- •Схема XML. Элемент simpleContent. Формат
- •Схема XML.
- •Схема XML.
- •Схема XML.
- •Схема XML.
- •Схема XML.
- •Схема XML.
- •Схема XML.
- •Схема XML. Элементы restriction и extension для simpleContent. Пример (1)
- •Схема XML. Элементы restriction и extension для simpleContent. Пример (2)
- •Схема XML. Элемент notation. Формат
- •Схема XML. Элемент notation. Пример
- •Схема XML. Элемент schema. Определение
- •Схема XML. Элемент schema. Формат
- •Схема XML.
- •Схема XML.
- •Схема XML. Элемент include. Формат
- •Схема XML. Элемент import. Формат
- •Схема XML. Элемент redefine. Формат
- •Схема XML. Включение схемы для документа XML
- •Схема XML. Включение схемы для документа
- •Схема XML. Включение схемы для документа
- •Схема XML. Включение схемы для документа
- •Схема XML. Включение схемы для документа

Лекция 404
Схемы XML (структуры)
1

Схема XML. Элемент attribute.Формат
Элемент attribute определяет атрибут и имеет
<префикс:attribute name = NCName ref = QName type = QName default = string fixed = string
use = (optional | prohibited | required) :
optional id = ID
form = (qualified | unqualified)
>
(annotation?, (simpleType?)) </префикс:attribute>
2

Схема XML. Элемент attribute. Атрибуты
Атрибуты в элементе attribute имеют следующий смысл:
name – имя атрибута;
ref – ссылка на объявление атрибута;
type – тип данных значения атрибута;
default – значение атрибута по умолчанию;
fixed – используется для присвоения атрибуту постоянного (фиксированного) значения;
use – используется для того, чтобы указать, что атрибут является необязательным (optional) – значение по умолчанию, обязательным (required) или
запрещенным (prohibited). |
|
id – связывает с атрибутом уникальный |
|
идентификатор; |
|
form – используется для отмены значения заданного в |
|
атрибуте attributeFormDefault элемента schema или в |
|
атрибуте form элемента-родителя. |
|
Если родителем элемента attribute является элемент |
3 |
schema, то объявление атрибута является глобальным, |
|
иначе локальным. |
|

Схема XML. Элемент attribute. Примеры
1)<xs:attribute name="age" type="xs:positiveInteger" use="required"/>
Объявление обязательного атрибута age, значение которого – целое положительное число.
2) <xs:attribute name="RGBColor" default="red" use="optional">
<xs:simpleType> <xs:restriction>
<xs:enumeration value="red"/> <xs:enumeration value="green"/> <xs:enumeration value="blue"/>
</xs:restriction> </xs:simpleType>
</xs:attribute>
Объявление необязательного атрибута RGBColor, значением которого является один из цветов RGB. Значение атрибута по умолчанию – "red4".

Схема XML. Встроенные атрибуты
Вспецификации схемы XML определены четыре встроенных
объявления атрибута, которые доступны без объявления в любой схеме XML. Объявления всех атрибутов являются глобальными, т.е. их можно использовать в любом элементе XML. Ограничения на значения этих атрибутов отсутствуют. Для этих атрибутов в качестве целевого пространства имен используется
http://www.w3.org/2001/XMLSchema-instance.
Объявление атрибута type задает тип атрибута, значение
которого имеет тип данных QName.
Объявление атрибута nil задает атрибут, значение которого имеет тип данных boolean.
Объявления атрибутов schemaLocation и |
|
noNamespaceSchemaLocation задают местонахождения |
|
схемы соответственно с указанием пространства имен и без |
|
указания пространства имен. Значения для этих атрибутов |
|
имеют тип данных anyURI. |
5 |

Схема XML. Элемент element. Назначение
Объявление элемента выполняет:
локальную проверку значений элемента с использованием определения типа;
задание значения по умолчанию или фиксированного значения для элемента;
обеспечение уникальности и ограничений на отношения на значения связанных элементов и атрибутов;
управление подстановками элементов
через группы подстановок элемента.
6

Схема XML. Элемент element. Формат
<префикс:element name = NCName ref = QName type = QName default = string fixed = string id = ID
form = (qualified | unqualified) fixed = string
abstract = boolean : false
block = (#all| List(extension | restriction | substitution))
final = (#all | List(extension | restriction)) maxOccurs = (nonNegativeInteger | unbounded) : 1 minOccurs = nonNegativeInteger : 1
nillable = boolean : false substitutionGroup = QName
>
(annotation?, ((simpleType | complexType)?, (unique | key |
keyref)*)) |
|
</префикс:element> |
7 |
|

Схема XML. Элемент element. Атрибуты (1)
Атрибуты name, ref, type, id, default, form и fixed в элементе element имеют тот же смысл, что и в элементе attribute (атрибут name является обязательным только в том случае, если родительским элементом данного элемента является элемент schema или элемент redefine). Остальные атрибуты задают следующие свойства:
abstract – указывает, что элемент просто задает другие
элементы, которые находятся в его группе подстановки (substitutionGroup);
block – запрещает замену этого элемента элементом его
группы подстановки (значение substitution) или запрещает замену этого типа элемента производным
сужающим типом (значение restriction) или расширенным типом (значение extension), если же задано значение #all, то блокируются все приведенные выше замены;
final – действует аналогично атрибуту block, но блокирует |
|
только замены типа restriction и/или extension; |
8 |

Схема XML. Элемент element. Атрибуты (2)
maxOccurs – задает максимальное число появлений элемента в документе (элемент может также появляться в документе сколько угодно раз – значение unbounded), по умолчанию элемент может появиться в документе только один раз;
minOccurs – задает минимальное число появлений элемента (по умолчанию значение этого атрибута равно 1);
nillable указывает, что для элемента недоступно никакое
значение, когда для него задается атрибут nil;
substitutionGroup – указывает, что данный элемент может замещаться элементом, заданным в группе подстановки.
9

Схема XML. Элемент element. Примеры
1)<xs:element name="birthDate" type="xs:date"/>
Объявление элемента birthDate (дата рождения) с типом данных
date |
<xs:element name ="author" |
minOccurs="1" maxOccurs="5"> |
|
2) |
|||
<xs:simpleType> |
|
||
|
|
<xs:restriction>
<xs:pattern
value="[A-Я][а-я]{1,18} [A-Я]\. [A-Я]\."> </xs:restriction>
</xs:simpleType> </xs:element>
Объявление элемента author (автор). Минимальное количество |
|
элементов в документе XML – 1, максимальное – 5. Значением элемента |
|
является шаблон для фамилии и инициалов автора. |
10 |
|