[Home] [By Thread] [By Date] [Recent Entries]

  • From: Eliot Kimber <ekimber@c...>
  • To: "Costello, Roger L." <costello@m...>, "xml-dev@l..." <xml-dev@l...>
  • Date: Wed, 08 Nov 2017 14:31:26 -0600

In addition, the enumeration markup allows binding of annotations to each item, whereas the pattern can only take a single annotation for the entire pattern.

 

In general, I would prefer the enumeration here because it is more granular.

 

This is from  schema I maintain as part of the DITA for Publishers project:

 

        <xs:simpleType>
          <xs:restriction
            base="xs:NMTOKEN">
            <xs:enumeration
              value="map">
              <xs:annotation>
                <xs:documentation>
                  <xhtml:div xmlns="http://www.w3.org/1999/xhtml">
                    <p>The paragraph maps to a map but not a map title.</p>
                  </xhtml:div>
                </xs:documentation>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration
              value="mapTitle">
              <xs:annotation>
                <xs:documentation>
                  <xhtml:div xmlns="http://www.w3.org/1999/xhtml">
                    <p>The paragraph maps to the title of a map. Map titles are optional.</p>
                  </xhtml:div>
                </xs:documentation>
              </xs:annotation>
            </xs:enumeration>

           … many more values …

     </xs:restriction>

</xs:simpleType>

 

Cheers,

 

Eliot

--

Eliot Kimber

http://contrext.com

 

 

 

From: "Costello, Roger L." <costello@m...>
Date: Wednesday, November 8, 2017 at 12:18 PM
To: "xml-dev@l..." <xml-dev@l...>
Subject: 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>


 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member