Элемент schema определяет корневой элемент XML схемы.
- Родительские элементы: нет
Синтаксис элемента
<schema
id=идентификатор
attributeFormDefault=qualified | unqualified
elementFormDefault=qualified | unqualified
blockDefault=(#all | список из (extension | restriction | substitution))
finalDefault=(#all | список из (extension | restriction | list | union))
targetNamespace=anyURI
version=token
xmlns=anyURI
любые атрибуты
>
((include | import | redefine | annotation)*, (((simpleType | complexType |
group | attributeGroup) | element | attribute | notation), annotation*)*)
</schema>
Атрибуты элемента
Атрибут | Описание |
---|---|
id | Не обязательный. Определяет уникальный идентификатор для элемента |
attributeFormDefault | Не обязательный. Определяет форму атрибутов, декларированных в целевом пространстве имен данной схемы. Может принимать значение "qualified" или "unqualified". Значение по умолчанию "unqualified". Значение "unqualified" указывает на то, что атрибуты из целевого пространства имен не требуют уточнения префиксом пространства имен. Значение "qualified" указывает на то, что атрибуты из целевого пространства имен должны уточняться префиксом пространства имен |
elementFormDefault | Не обязательный. Определяет форму элементов, декларированных в целевом пространстве имен данной схемы. Может принимать значение "qualified" или "unqualified". Значение по умолчанию "unqualified". Значение "unqualified" указывает на то, что элементы из целевого пространства имен не требуют уточнения префиксом пространства имен. Значение "qualified" указывает на то, что элементы из целевого пространства имен должны уточняться префиксом пространства имен |
blockDefault | Не обязательный. Определяет значение по умолчанию для атрибута block для элементов element и complexType в целевом пространстве имен. Запрещает использование сложного типа или элемента с определенным типом наследования на месте данного сложного типа или элемента. Может принимать значение #all или список из расширений/ограничений/замещений:
|
finalDefault | Не обязательный. Устанавливает значение по умолчанию атрибута final для элементов element, simpleType и complexType в целевом пространстве имен. Атрибут final запрещает расширять элементы по определенному методу. Для элементов element и complexType может принимать значение #all или список из расширений/ограничений. Для элементов simpleType сюда также добавляются списки и объединения:
|
targetNamespace | Не обязательный. URI пространства имен данной схемы |
version | Не обязательный. Версия схемы |
xmlns | URI, определяющая одно или больше пространств имен для использования в данной схеме. Если префикс не указан, то компоненты пространства имен схемы могут использоваться без уточнения |
любые атрибуты | Не обязательный. Любые другие атрибуты вне пространства имен схемы |
Пример использования
Пример №1
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="values" type="xs:string">
</xs:schema>
Пример №2
В следующем примере компоненты схемы (имя элемента, тип) в пространстве имен "http://www.w3.org/2001/XMLSchema" не уточняются, а для пространства имен "https://www.example.com/sschema" (mystring) уточняются при помощи префикса wsc:
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:wsc="https://www.example.com/sschema">
<element name="fname" type="wsc:mystring"/>
</schema>