OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Enumerations

Title: Enumerations
Hi John,
According to XML 1.0, it looks like this DTD would be illegal.
For XML Schema, enumeration values must be valid for the base type.  So, it is possible to list the empty string as a value, but only if the base type allows the empty string (Off the top of my head, I think this includes string, normalizedString, token, hexBinary, base64Binary).
For example,
<xsd:simpleType name="colorType">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value=""/>
    <xsd:enumeration value="green"/>
is OK because "" is a valid value for string.  However,
<xsd:simpleType name="colorType">
  <xsd:restriction base="xsd:integer">
    <xsd:enumeration value=""/>
    <xsd:enumeration value="333333"/>
is not OK because "" is not a valid integer.
-----Original Message-----
From: Anderson, John [mailto:John@Barbadosoft.com]
Sent: Friday, August 10, 2001 7:33 AM
To: Xml-Dev (E-mail)
Subject: Enumerations

Can anyone help?

According to my reading of XML1.0, the following would be an illegal declaration:

<!ATTLIST pangolin color ( |green|blue|red) >

because enumerations must be made up of nmtokens, and a nmtoken must contain at least one namechar.

However, most parsers seem to accept this.

Anyone know if my interpretation is correct, and as a bonus question, does the same apply to enumeration facets in XSD?


John Anderson

CTO BarbadosoftTM  The XML Management Company
+31 (0)20 750 7582 / +31 (0)6 65 347 448 / www.barbadosoft.com

- putting the "X" in "XML" -