[XMLSCHEMA-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

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>
RE: Applying enumeration-facet on list type
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

Subscribe to the Stylus Scoop newsletter for helpful XML tips and tutorials.
Email
First Name
Last Name
Company

Download Stylus Studio 6 XML Enterprise Edition

Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2007 All Rights Reserved.