Регулярные выражения схемы XML

Регулярные выражения схемы XML используются с аспектом pattern для применения условий и ограничений к строке символов, соответствующей заданному шаблону.

Аспект pattern — это ограничение на пространство значений типа данных, налагаемое посредством ограничения лексического пространства литералами, соответствующими заданному шаблону. Значение pattern должно быть регулярным выражением.

Pattern обеспечивает ограничение пространства значений значениями, которые заданы литералами, соответствующими тому или иному регулярному выражению.

Примеры

В следующем примере определяется созданный пользователем производный тип данных, который формирует представление почтовых кодов в США, ограниченное строками, соответствующими заданному регулярному выражению.

Входной файл: 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.

См. также

Справочник

Справочник по схемам XML (XSD)
Справочная таблица по регулярным выражениям схемы XML
Атом

Понятия

Аспекты типов данных