- Schemas are in XML (no special syntax, special editor, validation is possible,...)
- Element type hierarchies can be defined
- Advanced datatypes; one can:
- define constraints on the data types (eg, an attribute shall be a positive integer
but smaller than 100)
- define hierarchies of data types (eg, a type is a subtype of another one by restriction)
- define your own datatypes (eg,
phone numbers should include only numbers, first names only characters,
zip codes follow national patterns,...)
For example, the type:
<simpleType name="Dutch_ZIP_Code">
<restriction base="string">
<xsd:pattern value="\d{4} {0,1}[A-Z]{2}"/>
</restriction>
</simpleType>
defines the Dutch ZIP codes of the type "1183 NW" or "1183NW".