<Complete Reference XML - схемы
Определение и использование
Элемент элемент определяет элемент.
Элемент информации
- Parent elements: схемы, выбор, все, последовательность, группа
Синтаксис
<element
id=ID
name=NCName
ref=QName
type=QName
substitutionGroup=QName
default=string
fixed=string
form=qualified|unqualified
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
nillable=true|false
abstract=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
any attributes
>
annotation?,(simpleType|complexType)?,(unique|key|keyref)*
</element>
(Знак? Заявляет, что элемент может появиться ноль или один раз, а знак * указывает, что элемент может произойти ноль или более раз внутри элемента элемента)
Атрибут | Описание |
---|---|
id | Необязательный. Указывает уникальный идентификатор для элемента |
name | Необязательный. Задает имя элемента. Этот атрибут является обязательным, если родительский элемент является элементом схемы |
ref | Необязательный. Относится к имени другого элемента. ref атрибут может включать в себя префикс пространства имен. Этот атрибут не может быть использован, если родительский элемент является элементом схемы |
type | Необязательный. Указывает, либо имя встроенного типа данных или имя simpleType или ComplexType элемента |
substitutionGroup | Необязательный. Задает имя элемента, который может быть заменен с этим элементом. Этот атрибут не может быть использован, если родительский элемент не является элементом схемы |
default | Необязательный. Задает значение по умолчанию для элемента (может использоваться только тогда, когда содержимое элемента является простой тип или только текст) |
fixed | Необязательный. Определяет фиксированное значение элемента (может использоваться только тогда, когда содержимое элемента является простой тип или только текст) |
form | Необязательный. Определяет форму для элемента. "unqualified" указывает на то, что этот элемент не должен быть квалифицированы с префиксом пространства имен. "qualified" указывает на то, что этот элемент должен быть квалифицированы с префиксом пространства имен. Значение по умолчанию значение elementFormDefault атрибута элемента схемы. Этот атрибут не может быть использован, если родительский элемент является элементом схемы |
maxOccurs | Необязательный. Задает максимальное число раз этот элемент может иметь место в родительском элементе. Значение может быть задано любое число> = 0, или если вы хотите , чтобы не устанавливать никакого предела на максимальное число, используйте значение "unbounded" . Значение по умолчанию равно 1. Этот атрибут не может быть использован, если родительский элемент является элементом схемы |
minOccurs | Необязательный. Задает минимальное количество раз, этот элемент может иметь место в родительском элементе. Значение может быть задано любое число> = 0. Значение по умолчанию равно 1. Этот атрибут не может быть использован, если родительский элемент является элементом схемы |
nillable | Необязательный. Определяет, будет ли явное нулевое значение может быть присвоено элементу. Правда активирует экземпляр элемента , чтобы иметь null атрибут установлен в действительности. null атрибут определяется как часть пространства имен XML - схемы для экземпляров. По умолчанию является ложным |
abstract | Необязательный. Указывает, является ли элемент может быть использован в документе. Правда указывает на то, что элемент не может появиться в документе. Вместо этого, другой элемент которого substitutionGroup атрибут содержит полное имя (QName) этого элемента должно появиться на месте этого элемента. По умолчанию является ложным |
block | Необязательный. Предотвращение элемента с указанным типом производного от используемого вместо этого элемента. Это значение может содержать #All или список, который является подмножеством расширение, ограничение или equivClass:
|
final | Необязательный. Устанавливает значение по умолчанию final атрибута элемента элемента. Этот атрибут не может быть использован, если родительский элемент не является элементом схемы. Это значение может содержать #All или список, который является подмножеством расширения или ограничения:
|
any attributes | Необязательный. Определяет любые другие атрибуты с пространством имен без схемы |
Пример 1
Следующий пример представляет собой схему с четырьмя простых элементов , названных "fname" , "lname" , "age" и "dateborn" , которые имеют тип строки, nonNegativeInteger и дата:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="fname" type="xs:string"/>
<xs:element name="lname" type="xs:string"/>
<xs:element name="age" type="xs:nonNegativeInteger"/>
<xs:element name="dateborn" type="xs:date"/>
</xs:schema>
Пример 2
Следующий пример является схемой с элементом под названием "note" , который является сложным типом. "note" элемент содержит четыре других простых элементов; "to" , "from" , "heading" и "body" :
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Пример 3
В этом примере равен примеру 2, но здесь мы решили использовать ref атрибут для обозначения имен элементов:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element ref="to"/>
<xs:element ref="from"/>
<xs:element ref="heading"/>
<xs:element ref="body"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:schema>
<Complete Reference XML - схемы