Share via


<xsd:restriction> Element (simpleContent)

Defines constraints on a simpleContent 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)*)?, 
((attribute | attributeGroup)*, anyAttribute?))
</restriction>

Attributes

  • base
    The name of a built-in data type, simpleType element, or complexType element defined in this schema (or another schema indicated by the specified namespace). The element containing the restriction element is derived from the type specified by the base value.

    base is the name of a built-in data type, simple type, or complex type. If a complex type, this type must be of one of the following: built-in data type, simple type, or simple content.

    The base value must be a qualified name (QName).

    Required.

  • id
    The ID of this element. The id value must be of type ID and be unique within the document containing this element.

    Optional.

Element Information

Number of occurrences

One time

Parent elements

simpleContent

Contents (simpleContent)

annotation, fractionDigits, enumeration, length, maxExclusive, maxInclusive, maxLength, minExclusive, minInclusive, minLength, pattern, simpleType, totalDigits, whiteSpace, attribute, attributeGroup, anyAttribute

Example

The following example shows a simpleContent definition that restricts another simpleContent extension. The set of values is restricted to a short list of values and the attribute.

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

<xs:complexType name="FamilyMountainBikeSizes">
   <xs:simpleContent>
      <xs:extension base="mountainbikesize">
         <xs:attribute name="familyMember" type="xs:string" />
      </xs:extension>
   </xs:simpleContent>
</xs:complexType>

<xs:complexType name="ChildMountainBikeSizes>
   <xs:simpleContent>
<xs:restriction base="FamilyMountainBikeSizes" >
<xs:enumeration value="small"/>
<xs:enumeration value="medium"/>
</xs:restriction>
   </xs:simpleContent>
</xs:complexType>

See Also

Reference

XML Schemas (XSD) Reference
XML Schema Elements