Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ППТС-2 / Лекции / Lect4-03.doc
Скачиваний:
6
Добавлен:
12.05.2015
Размер:
261.12 Кб
Скачать

4.2.6.2.8. ЭлементыtotalDigitsиfractionDigits

Элементы totalDigitsиfractionDigitsзадают соответственно общее количество символов в числовом данном, включая десятичную точку, и количество цифр в числовом данном после десятичной точки. Эти элементы имеют следующий формат:

<префикс:totalDigits

id = ID

value = positiveInteger

fixed = boolean : false

>

(annotation?)

</префикс:totalDigits>

<префикс:fractionDigits

id = ID

value = nonNegativeInteger

fixed = boolean : false

>

(annotation?)

</префикс:fractionDigits>

Необязательный атрибут idзадает уникальный идентификатор элемента. Атрибутvalueзадает положительное число – общее количество символов в числовом данном, включая десятичную точку (вtotalDigits) или неотрицательное число – количество цифр в числовом данном после десятичной точки (воfractionDigits). Атрибутfixedфиксирует обработку значенияvalueв данном. Если значение атрибутаfixedравноtrue, то типы данных, для которых текущий тип является базовым, не могут иметь значение, отличное от значения, заданной в атрибутеvalue. По умолчанию или, если значение атрибутаfixedравноfalse, типы данных могут иметь другое значение.

Пример задания элементов totalDigits и fractionDigits:

<xs:totalDigits value="5"/>

<xs:fractionDigits value="1"/>

Значения данного должны иметь 4 цифры до десятичной точки и одну цифру после десятичной точки.

4.2.6.3. Элементrestriction

Элемент restriction задает ограничения на определяемый простой тип и имеет для элементаsimpleType следующий формат:

<префикс:restriction

base = QName

id = ID

>

(annotation?, (simpleType?, (minExclusive | minInclusive |

maxExclusive | maxInclusive | totalDigits | fractionDigits |

length | minLength | maxLength |

enumeration | whiteSpace | pattern)*))

</префикс:restriction>

где необязательный атрибут idопределяет уникальный идентификатор элемента, а атрибутbaseопределяет имя встроенного типа данных, либо имя элемента типаsimpleType, определенного ранее в этой или другой схеме.

Элемент restrictionможет быть также задан как дочерний элемент элементовsimpleContentиcomplexContent, но с другим содержимым, которое будет описано при рассмотрении указанных элементов.

Примеры задания элемента restriction:

1. <xs:simpleType name="latinString">

<xs:restriction base="xs:string">

<xs:pattern value="[A-Z]([a-z])+"/>

<xs:maxLength value="10"/>

</xs:restriction>

</xs:simpleType>

В этом примере задаются ограничения для простого типа latinString, на основе примитивного типаstring: первым символом значения должна быть заглавная латинская буква, за которой следует одна или несколько латинских строчных букв и, кроме того, максимальная длина имени не должна превышать 10 символов.

2. <xs:simpleType>

<xs:restriction base="latinString">

<xs:minLength value="5"/>

</xs:restriction>

</xs:simpleType>

В этом примере задаются ограничения для простого типа на основе простого типа latinStringв предыдущем пункте примера. Дополнительно к ограничениям для типаlatinStringвведено ограничение на минимальную длину строки.

Соседние файлы в папке Лекции