XML 結構描述規則運算式
XML 結構描述規則運算式是配合 pattern Facet 使用,提供符合定義模式之字元字串的條件約束或限制。
pattern Facet 是資料型別值空間上的條件約束,將語彙空格限制為符合特定模式的常值。 pattern 的值必須是規則運算式。
Pattern 會將值空間限制為符合特定規則運算式之常值代表的值。
範例
下列範例定義了一個使用者衍生的資料型別,它可建立美國的郵遞區號呈現形式 (限制在符合特定規則運算式的字串)。
Input file: T.xml
<zips xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="t.xsd">
<zip>12345</zip>
<zip>12345-1234</zip>
</zips>
XML 結構描述:T.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >
<xs:element name="zips">
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="zip" type="better-us-zipcode"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="better-us-zipcode">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{5}(-[0-9]{4})?"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
規則運算式中使用的字元有兩種:中繼字元和一般字元。 中繼字元是下列其中一個字元:.、\、?、*、+、{、}、(、)、[ 或 ]。 這些字元在規則運算式中有特殊的意義,但是可以從表示字串集合 (只包含其本身) 的原子中逸出。 逸出的中繼字元具有一般字元的行為。
一般字元是非中繼字元的任何 XML 字元。 在規則運算式中,一般字元是代表只包含本身的單一字串集合的原子。
以下主題描述 XML 結構描述規則運算式。
若要了解 XML 結構描述規則運算式中的關聯性,請參閱 XML 結構描述規則運算式參考圖表。