Deriving Custom Simple Types : restriction « XML Schema « XML Tutorial






File: Schema.xsd

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  targetNamespace="http://www.java2s.com" xmlns="http://www.java2s.com"
  elementFormDefault="qualified">

  <xs:simpleType name="zipcodeType">
    <xs:restriction base="xs:string">
      <xs:pattern value="\d{5}(-\d{4})?" />
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="zipcode" type="zipcodeType" />
</xs:schema>



File: Data.xml (Both of these zipcode elements are valid.)
<?xml version="1.0"?>
<zipcode>11111</zipcode>
<zipcode>11111-0987</zipcode>

File: Data.xml (Both of these zipcode elements are invalid.)
<?xml version="1.0"?>
<zipcode>1111-12349</zipcode>
<zipcode>111001</zipcode>








3.67.restriction
3.67.1.Deriving Custom Simple Types
3.67.2.Restriction types are declared using the declaration.
3.67.3.restriction specifies values for zero or more constraining facets
3.67.4.Deriving by Restriction