I would not expect grammar-driven editors to be able to use the pattern to guide authoring but to always be able to use the enumeration.
Cheers,
E.
From: "Costello, Roger L." <costello@mitre.org>
Date: Wednesday, November 8, 2017 at 12:18 PM
To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
Subject: [xml-dev] Enumerating a set of values using the pattern facet versus the enumeration facet ... which is better?
Hi Folks,
Below are two XML Schema element declarations. Both enumerate a set of values for the <type> element. The first uses the pattern facet to enumerate the set of values. The second uses the enumeration facet. Is there a reason to prefer one over the other? Or, are they identical for all practical purposes? /Roger
<xs:element name="type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="contact|acquaintance|friend|met|co\-worker|colleague|co\-resident|neighbor|child|parent|sibling|spouse|kin|muse|crush|date|sweetheart|me|agent|emergency" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="contact" />
<xs:enumeration value="acquaintance" />
<xs:enumeration value="friend" />
<xs:enumeration value="met" />
<xs:enumeration value="co-worker" />
<xs:enumeration value="colleague" />
<xs:enumeration value="co-resident" />
<xs:enumeration value="neighbor" />
<xs:enumeration value="child" />
<xs:enumeration value="parent" />
<xs:enumeration value="sibling" />
<xs:enumeration value="spouse" />
<xs:enumeration value="kin" />
<xs:enumeration value="muse" />
<xs:enumeration value="crush" />
<xs:enumeration value="date" />
<xs:enumeration value="sweetheart" />
<xs:enumeration value="me" />
<xs:enumeration value="agent" />
<xs:enumeration value="emergency" />
</xs:restriction>
</xs:simpleType>
</xs:element>