- 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".