Элемент <xsd:schema>
Содержит определение схемы.
<schema
attributeFormDefault = (qualified | unqualified): unqualified
blockDefault = (#all | List of (extension | restriction | substitution) : ''
elementFormDefault = (qualified | unqualified): unqualified
finalDefault = (#all | List of (extension | restriction | list |
union): ''
id = ID
targetNamespace = anyURI
version = token
xml:lang = language
{any attributes with non-schema Namespace}...>
Content: ((include | import | redefine | annotation)*, (((simpleType |
complexType | group | attributeGroup) | element | attribute | notation),
annotation*)*)
</schema>
Атрибуты
attributeFormDefault
Форма атрибутов, объявляемых в целевом пространстве имен этой схемы. Значение должно быть одной из следующих строк: qualified или unqualified. Значение по умолчанию ― unqualified.Если значение составляет unqualified, необходимости в дополнении атрибутов из целевого пространства имен префиксом этого пространства имен нет.
Если значение составляет qualified, атрибуты из целевого пространства имен должны быть дополнены префиксом этого пространства имен.
Это значение является глобальным параметром по умолчанию для всех атрибутов, объявляемых в целевом пространстве имен. Индивидуальные атрибуты могут переопределять эту настройку в своей локальной области с помощью атрибута form.
Необязательный.
blockDefault
Тип наследования. Атрибут blockDefault задает значение по умолчанию атрибута block для элементов element и complexType в целевом пространстве имен этой схемы. Атрибут block предотвращает использование вместо этого унаследованного сложного типа (или элемента) сложного типа (или элемента), имеющего указанный тип наследования. Значение может содержать строку #all или список, состоящий из строк extension, restriction и substitution.extension
Предотвращает использование вместо этого сложного типа сложных типов, унаследованных по расширению.
restriction
Предотвращает использование вместо этого сложного типа сложных типов, унаследованных по ограничению.
substitution
Предотвращает замену элементов. (Элемент может объявить себя заменой для другого элемента, указав имя этого другого элемента в своем атрибуте substitutionGroup.)
#all
Предотвращает использование вместо этого сложного типа всех унаследованных сложных типов.
Необязательный.
elementFormDefault
Форма элементов, объявляемых в целевом пространстве имен этой схемы. Значение должно быть одной из следующих строк: qualified или unqualified. Значение по умолчанию ― unqualified.Если значение составляет unqualified, необходимости в дополнении элементов из целевого пространства имен префиксом этого пространства имен нет.
Если значение составляет qualified, элементы из целевого пространства имен должны быть дополнены префиксом этого пространства имен.
Это значение является глобальным параметром по умолчанию для всех элементов, объявляемых в целевом пространстве имен. Индивидуальные элементы могут переопределять эту настройку в своей локальной области с помощью атрибута form.
Необязательный.
finalDefault
Тип наследования. Атрибут finalDefault задает значение по умолчанию атрибута final для элементов element, simpleType и complexType в целевом пространстве имен этой схемы. Атрибут final предотвращает указанный тип наследования элементов element, simpleType или complexType. Для элементов element и complexType это значение может содержать строку #all или список, являющийся подмножеством extension либо restriction. Для элементов simpleType это значение может дополнительно содержать list и union.extension
По умолчанию элементы в данной схеме не могут быть унаследованы по расширению. Применимо только к элементам element и complexType.
restriction
Предотвращает наследование ограничением.
list
Предотвращает наследование списком. Применимо только к элементам simpleType.
union
Предотвращает наследование объединением. Применимо только к элементам simpleType.
#all
#all. По умолчанию элементы в данной схеме не могут быть унаследованы с использованием любого метода.
Необязательный.
id
Идентификатор данного элемента. Значение id должно иметь тип ID и быть уникальным в пределах документа, содержащего этот элемент.Необязательный.
targetNamespace
URI-ссылка пространства имен данной схемы. Может быть назначен также префикс для пространства имен. Если префикс не назначен, содержащиеся в схеме компоненты пространства имен могут быть использованы с неполными ссылками.Необязательный.
version
Номер версии схемы.Необязательный.
xml:lang
Индикатор языка, используемого в содержимом.Необязательный.
Сведения об элементе
Количество вхождений |
Однократно |
Родительские элементы |
(Нет родительских элементов) |
Содержимое |
include, import, annotation, redefine attribute, attributeGroup, element, group, notation, simpleType, complexType |
Другое |
Элементы include, import и redefine должны указываться перед другими элементами, за исключением элемента annotation, который может указываться в любом месте. |
Примечания
Элемент schema является элементом документа (элементом верхнего уровня) в определении схемы.
Пространства имен, заданные с помощью атрибута xmlns, должны включать в себя пространство имен для элементов определения схемы, а также атрибуты (schema, element и т. д). Допускается применение любого префикса, однако в качестве пространства имен по умолчанию удобно использовать пространство имен schema; это дает возможность не указывать префикс при упоминании каждого элемента XML Schema.
targetNamespace — это пространство имен всех компонентов схем в данной схеме, а также всех схем, включенных с использованием элемента include. (Включенные схемы должны иметь то же целевое пространство имен, что и содержащая их схема, или вовсе не иметь целевого пространства имен.) В следующем примере компоненты схем (имя элемента, тип) в пространстве имен http://www.w3.org/2001/XMLSchema являются неполными, а компоненты в пространстве имен http://tempuri.org/myschema (mydecimal) — полными; они дополняются префиксом msc.
Для схемы XML используется следующее пространство имен:
http://www.w3.org/2001/XMLSchema
Кроме того, элемент schema должен содержать объявления пространств имен для всех других используемых им схем.
Пример
В следующей схеме пространство имен XML Schema используется в качестве пространства имен по умолчанию, а целевое пространство имен для этой схемы определяется как http://mynamespace/myschema
.
Другие ресурсы
Дополнительные сведения см. в документе «Рекомендация W3C по схемам XML, часть 1: структуры» по адресу www.w3.org/TR/2001/REC-xmlschema-1-20010502/\#element-all.
См. также
Справочник
Справочник по схемам XML (XSD)
Элементы схемы XML
Элемент <xsd:include>