Defines constraints on a simpleType definition.
<restriction
  base = QName 
  id = ID 
  {any attributes with non-schema Namespace}…>
Content: (annotation?, (simpleType?, (minExclusive | minInclusive | 
maxExclusive | maxInclusive | totalDigits |fractionDigits | length | 
minLength | maxLength | enumeration | whiteSpace | pattern)*))
</restriction>
The base value must be a qualified name (QName).
Required.
Optional.
| Number of occurrences | One time | 
| Parent elements | simpleType | 
| Contents | annotation, fractionDigits, enumeration, length, maxExclusive, maxInclusive, maxLength, minExclusive, minInclusive, minLength, pattern, simpleType, totalDigits, whiteSpace | 
The following example shows a simple type definition using restriction. (The simple type is derived from nonNegativeInteger and its maxInclusive value is set to 100.)
<xs:simpleType name="freezeboilrangeInteger">
  <xs:restriction base="xs:nonNegativeInteger">
    <xs:maxInclusive value="100"/>
  </xs:restriction>
</xs:simpleType>
The following example shows a simple type definition that derives from the integer built-in type and has all the facets of integer (no restrictions).
<xs:simpleType name="myInteger"> <xs:restriction base="xs:integer"/> </xs:simpleType>
The following example shows a simple type definition that derives from string and is an enumerated type. The set of values is restricted to specified values.
<xs:simpleType name="mountainbikesize">
  <xs:restriction base="xs:string">
    <xs:enumeration value="small"/>
    <xs:enumeration value="medium"/>
    <xs:enumeration value="large"/>
  </xs:restriction>
</xs:simpleType>
XML Schema Reference (XSD) | XML Schema Elements
For more information, see the W3C XML Schema Part 2: Datatypes Recommendation at http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#derivation-by-restriction.