XML Schema schema 元素
定义和用法
schema 元素定义 schema 的根元素。
元素信息
出现次数 | 一次 |
父元素 | (无父元素) |
内容 | include、import、annotation、redefine、attribute、attributeGroup、element、group、notation、simpleType、complexType |
语法
<schema id=ID attributeFormDefault=qualified|unqualified elementFormDefault=qualified|unqualified blockDefault=(#all|list of (extension|restriction|substitution)) finalDefault=(#all|list of (extension|restriction|list|union)) targetNamespace=anyURI version=token xmlns=anyURI Enhver attribut > ((include|import|redefine|annotation)*,(((simpleType|complexType| (group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
Egenskab
id
Valgfri. Angiver det unikke ID for elementet.
attributeFormDefault
Valgfri. Formen af egenskaber deklarerede i schemaets målnavnerum. Værdien skal være en af følgende strenge: "qualified" eller "unqualified". Standardværdien er "unqualified".
- "unqualified" indikerer, at egenskaber i målnavnerummet ikke skal være navnerumskvalificerede.
- "qualified" indikerer, at egenskaber i målnavnerummet skal være navnerumskvalificerede.
elementFormDefault
Valgfri. Formen af elementer deklarerede i schemaets målnavnerum. Værdien skal være en af følgende strenge: "qualified" eller "unqualified". Standardværdien er "unqualified".
- "unqualified" indikerer, at elementer i målnavnerummet ikke skal være navnerumskvalificerede.
- "qualified" indikerer, at elementer i målnavnerummet skal være navnerumskvalificerede.
blockDefault
Valgfri. Angiver standardværdien for block-attributten på element og complexType-elementer i målnavnerummet. Block-attributten forbyder brug af komplekse typer (eller elementer) med angivet afledningstyp til at erstatte arvede komplekse typer (eller elementer). Værdien kan indeholde #all eller en liste, som er en delmængde af extension, restriction eller substitution:
- extension - Forbyder brug af afledte komplekse typer til at erstatte den komplekse type gennem udvidelse.
- restriction - Forbyder brug af afledte komplekse typer til at erstatte den komplekse type gennem begrænsning.
- substitution - Forbyder erstatning af elementer.
- #all - Forbyder alle afledte komplekse typer at erstatte den komplekse type.
finalDefault
Valgfri. Definerer standardværdien for element, simpleType og complexType-elementernes final-attribut i målnavnerummet for dette schema. Final-attributten forhindrer, at element, simpleType eller complexType-elementer afledes til specifikke derivationsTyper. For element og complexType-elementer kan værdien indeholde #all eller en liste, der er en delmængde af extension eller restriction. For simpleType-elementer kan værdien også indeholde list og union:
- extension - Som standard kan elementerne i dette schema ikke afledes ved udvidelse. Gælder kun for element og complexType-elementer.
- restriction - Forhindrer afledelse gennem begrænsning.
- list - Forhindrer afledelse gennem liste. Gælder kun for simpleType-elementer.
- union - Forhindrer afledelse gennem union. Gælder kun for simpleType-elementer.
- #all - Som standard kan elementerne i dette schema ikke afledes ved nogen metode.
targetNamespace
URI-referencen til schemaets navnerum. Man kan også tildele et præfiks til dette navnerum. Hvis ingen præfiks er tildelt, kan komponenterne i dette navnerum bruges sammen med ubegrænsede referencer.
version
Valgfri. Definerer versionen af schema.
xmlns
Definerer en eller flere URI-referencer til navnerum, der bruges i dette schema. Hvis ingen præfiks er tildelt, kan schema-komponenten i dette navnerum bruges sammen med ubegrænsede referencer.
Enhver attribut
Valgfri. Definerer hvilke andre attributter der kan have en non-schema navnerum
Eksempel
Eksempel 1
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="values" type="xs:string"> </xs:schema>
Eksempel 2
I dette eksemplet er komponenten schema (element navn, type) ikke begrænset i navnerummet http://www.w3.org/2001/XMLSchema, mens http://www.codew3c.com/codew3cschema (mystring) er begrænset gennem præfiks wsc:
<?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsc="http://www.codew3c.com/codew3cschema" <element name="fname" type="wsc:mystring"/> </schema>