W3C home > Mailing lists > Public > xmlschema-dev@w3.org > February 2008

RE: Applying enumeration-facet on list type

From: Michael Kay <mike@saxonica.com>
Date: Thu, 7 Feb 2008 13:49:27 -0000
To: "'Eran Balter'" <E.Balter@F5.com>, <xmlschema-dev@w3.org>
Message-ID: <01c401c86990$4203c6d0$6401a8c0@turtle>
I'm 99% sure that it's intended to be legal. Schema Part 2 states the
intention clearly:

4.3.5 enumeration


[Definition:]   enumeration constrains the
<http://www.w3.org/TR/xmlschema-2/#dt-value-space> .value space. to a
specified set of values. 

There is however a minor bug in the spec; it says that when going from the
XML representation of the schema to the component representation, the
"actual value" of the enumeration/@value attribute is used, and the
definition of "actual value" suggests that the enumerated value "1.0 2" is
interpreted as an instance of xs:anySimpleType (because that's the type of
@value as defined in the schema for schemas), rather than as an instance of
the type whose facet is being defined.

Until fairly recently, unfortunately, Saxon implemented what the spec says,
not what it obviously meant to say.

Michael Kay

http://www.saxonica.com/ 


  _____  

From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On
Behalf Of Eran Balter
Sent: 07 February 2008 09:10
To: xmlschema-dev@w3.org
Subject: Applying enumeration-facet on list type



Hi,

 

When defining an enumeration-facet on a list, should we consider the
lexical-space or value-space of the value? 

Is the following example legal?

 

Instance: 

<root MyAtt="1.0 2.0"/> 

 

Schema:

<?xml version="1.0" ?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

            <xsd:element name="root">

                <xsd:complexType>

                        <xsd:attribute name="MyAtt">

                                    <xsd:simpleType>

                                    <xsd:restriction>

                                                <xsd:simpleType>

                                                   <xsd:list
itemType="xsd:decimal" />

                                                </xsd:simpleType>

                                    <xsd:enumeration value='1.0 2'/> 

                                    </xsd:restriction>

                                    </xsd:simpleType>

                        </xsd:attribute>

                </xsd:complexType>

            </xsd:element>

</xsd:schema>
Received on Thursday, 7 February 2008 13:49:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 00:15:02 GMT