jochen      2005/07/05 01:04:32

  Modified:    .        status.xml
               src/jaxme/org/apache/ws/jaxme/generator/sg/impl
                        EnumerationSG.java
               src/test/jaxb enumeration.xsd
  Log:
  Fixed, that driver and handler classes could not be compiled, if enumerations 
had default values.
  
  Revision  Changes    Path
  1.57      +10 -0     ws-jaxme/status.xml
  
  Index: status.xml
  ===================================================================
  RCS file: /home/cvs/ws-jaxme/status.xml,v
  retrieving revision 1.56
  retrieving revision 1.57
  diff -u -r1.56 -r1.57
  --- status.xml        20 May 2005 20:21:23 -0000      1.56
  +++ status.xml        5 Jul 2005 08:04:31 -0000       1.57
  @@ -35,6 +35,16 @@
            Added support for mixed content.
          </action>
        </release>
  +    <release version="0.4.1" date="Not yet released">
  +      <action dev="JW" type="enhancement" context="generator">
  +        Use of xs:extension is now mapped to proper Java
  +        inheritance (at least for the bean classes).
  +      </action>
  +      <action dev="JW" type="fix" context="generator">
  +        Fixed that the handler and driver classes could not
  +        be compiled, if enumerations had default values.
  +      </action>
  +    </release>
       <release version="0.4" date="2005-May-19">
         <action dev="JW" type="fix" context="xs">
           The methods XSSimpleContentImpl.isEmpty(),
  
  
  
  1.6       +1 -1      
ws-jaxme/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/EnumerationSG.java
  
  Index: EnumerationSG.java
  ===================================================================
  RCS file: 
/home/cvs/ws-jaxme/src/jaxme/org/apache/ws/jaxme/generator/sg/impl/EnumerationSG.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- EnumerationSG.java        28 Apr 2005 23:57:53 -0000      1.5
  +++ EnumerationSG.java        5 Jul 2005 08:04:32 -0000       1.6
  @@ -147,7 +147,7 @@
     public TypedValue getCastFromString(SimpleTypeSG pController, String 
pValue) throws SAXException {
       for (int i = 0;  i < values.length;  i++) {
         if (values[i].getValue().equals(pValue)) {
  -        return new TypedValueImpl(values[i].getName(), qName);
  +        return new TypedValueImpl(new Object[]{qName, ".", 
values[i].getName()}, qName);
         }
       }
       return super.getCastFromString(pController, pValue);
  
  
  
  1.4       +264 -264  ws-jaxme/src/test/jaxb/enumeration.xsd
  
  Index: enumeration.xsd
  ===================================================================
  RCS file: /home/cvs/ws-jaxme/src/test/jaxb/enumeration.xsd,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- enumeration.xsd   29 Sep 2004 08:41:02 -0000      1.3
  +++ enumeration.xsd   5 Jul 2005 08:04:32 -0000       1.4
  @@ -1,264 +1,264 @@
  -<?xml version="1.0" encoding="UTF-8"?>

  -<!--

  - Copyright 2003, 2004  The Apache Software Foundation

  -  

  - Licensed under the Apache License, Version 2.0 (the "License");

  - you may not use this file except in compliance with the License.

  - You may obtain a copy of the License at

  -  

  - http://www.apache.org/licenses/LICENSE-2.0

  -  

  - Unless required by applicable law or agreed to in writing, software

  - distributed under the License is distributed on an "AS IS" BASIS,

  - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

  - See the License for the specific language governing permissions and

  - limitations under the License.

  --->

  -<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";

  -    xml:lang="EN"

  -    targetNamespace="http://ws.apache.org/jaxme/test/misc/enumeration";

  -    xmlns:ex="http://ws.apache.org/jaxme/test/misc/enumeration";

  -    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb";

  -    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc";

  -    jaxb:extensionBindingPrefixes="xjc"

  -    elementFormDefault="qualified"

  -    attributeFormDefault="unqualified"

  -    jaxb:version="1.0">

  -  <xs:annotation>

  -    <xs:documentation>

  -      Demonstration of a complex type with all sorts of enumeration values.

  -    </xs:documentation>

  -    <xs:appinfo>

  -      <jaxb:globalBindings

  -          typesafeEnumBase="xs:string xs:int xs:long xs:short xs:double 
xs:float">

  -        <xjc:serializable/>

  -      </jaxb:globalBindings>

  -    </xs:appinfo>

  -  </xs:annotation>

  -

  -  <!-- In this example the typesafeEnumMember instances are part of the

  -       typesafeEnumClass. -->

  -  <xs:simpleType name="StringType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyStringTypeClass">

  -          <jaxb:typesafeEnumMember name="FOO" value="FOO"/>

  -          <jaxb:typesafeEnumMember name="BAR" value="BAR"/>

  -        </jaxb:typesafeEnumClass>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:string">

  -      <xs:enumeration value="FOO"/>

  -      <xs:enumeration value="BAR"/>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <!-- Here's another case: The typesafeEnumMember instances are part

  -       of their respective values. Choose your own style. -->

  -  <xs:simpleType name="IntType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyIntTypeClass"/>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:int">

  -      <xs:enumeration value="3">

  -        <xs:annotation>

  -          <xs:appinfo>

  -            <jaxb:typesafeEnumMember name="INT3"/>

  -          </xs:appinfo>

  -        </xs:annotation>

  -      </xs:enumeration>

  -      <xs:enumeration value="0">

  -        <xs:annotation>

  -          <xs:appinfo>

  -            <jaxb:typesafeEnumMember name="INT0"/>

  -          </xs:appinfo>

  -        </xs:annotation>

  -      </xs:enumeration>

  -      <xs:enumeration value="-7">

  -        <xs:annotation>

  -          <xs:appinfo>

  -            <jaxb:typesafeEnumMember name="INT_7"/>

  -          </xs:appinfo>

  -        </xs:annotation>

  -      </xs:enumeration>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <!-- I personally prefer the former style, for shortness. So we

  -       revert to this style. -->

  -  <xs:simpleType name="LongType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyLongTypeClass">

  -          <jaxb:typesafeEnumMember name="LONG_POSITIVE" 
value="987298379879887"/>

  -          <jaxb:typesafeEnumMember name="LONG_ZERO" value="0"/>

  -          <jaxb:typesafeEnumMember name="LONG_NEGATIVE" 
value="-23987982739273989"/>

  -        </jaxb:typesafeEnumClass>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:long">

  -      <xs:enumeration value="987298379879887"/>

  -      <xs:enumeration value="0"/>

  -      <xs:enumeration value="-23987982739273989"/>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <xs:simpleType name="ShortType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyShortTypeClass">

  -          <jaxb:typesafeEnumMember name="SHORT_POSITIVE" value="3468"/>

  -          <jaxb:typesafeEnumMember name="SHORT_ZERO" value="0"/>

  -          <jaxb:typesafeEnumMember name="SHORT_NEGATIVE" value="-23"/>

  -        </jaxb:typesafeEnumClass>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:short">

  -      <xs:enumeration value="3468"/>

  -      <xs:enumeration value="0"/>

  -      <xs:enumeration value="-23"/>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <xs:simpleType name="DoubleType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyDoubleTypeClass">

  -          <jaxb:typesafeEnumMember name="DOUBLE_POSITIVE" 
value="3249239847982.234"/>

  -          <jaxb:typesafeEnumMember name="DOUBLE_ZERO" value="0"/>

  -          <jaxb:typesafeEnumMember name="DOUBLE_NEGATIVE" 
value="-324234.234"/>

  -        </jaxb:typesafeEnumClass>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:double">

  -      <xs:enumeration value="3249239847982.234"/>

  -      <xs:enumeration value="0"/>

  -      <xs:enumeration value="-324234.234"/>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <xs:simpleType name="FloatType">

  -    <xs:annotation>

  -      <xs:appinfo>

  -        <jaxb:typesafeEnumClass name="MyFloatTypeClass">

  -          <jaxb:typesafeEnumMember name="FLOAT_POSITIVE" value="47982.234"/>

  -          <jaxb:typesafeEnumMember name="FLOAT_ZERO" value="0"/>

  -          <jaxb:typesafeEnumMember name="FLOAT_NEGATIVE" value="-24234.234"/>

  -        </jaxb:typesafeEnumClass>

  -      </xs:appinfo>

  -    </xs:annotation>

  -    <xs:restriction base="xs:float">

  -      <xs:enumeration value="47982.234"/>

  -      <xs:enumeration value="0"/>

  -      <xs:enumeration value="-24234.234"/>

  -    </xs:restriction>

  -  </xs:simpleType>

  -

  -  <xs:complexType name="AllSimpleTypes">

  -    <xs:sequence>

  -      <xs:element name="StringElem" type="ex:StringType"/>

  -      <xs:element name="IntElem" type="ex:IntType"/>

  -      <xs:element name="LongElem" type="ex:LongType"/>

  -      <xs:element name="ShortElem" type="ex:ShortType"/>

  -      <xs:element name="DoubleElem" type="ex:DoubleType"/>

  -      <xs:element name="FloatElem" type="ex:FloatType"/>

  -      <xs:element name="DateTimeElem" minOccurs="0">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:dateTime">

  -            <xs:enumeration value="2002-12-17T12:23:11"/>

  -            <xs:enumeration value="2002-12-16T12:00:11"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:element>

  -      <xs:element name="DateElem" minOccurs="0">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:date">

  -            <xs:enumeration value="2002-12-17"/>

  -            <xs:enumeration value="2002-12-16"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:element>

  -      <xs:element name="TimeElem" minOccurs="0">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:time">

  -            <xs:enumeration value="12:23:11"/>

  -            <xs:enumeration value="12:00:11"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:element>

  -    </xs:sequence>

  -  </xs:complexType>

  -

  -  <xs:element name="AllTypesElement">

  -    <xs:complexType>

  -      <xs:sequence>

  -        <xs:element type="ex:AllSimpleTypes" name="AllSimpleTypesElement"/>

  -      </xs:sequence>

  -    </xs:complexType>

  -  </xs:element>

  -

  -  <xs:element name="LocalEnumElement">

  -    <xs:complexType>

  -      <xs:sequence>

  -        <xs:element name="LocalString">

  -          <xs:simpleType>

  -            <xs:annotation><xs:appinfo>

  -              <jaxb:typesafeEnumClass name="LocalStringCl"/>

  -            </xs:appinfo></xs:annotation>

  -            <xs:restriction base="xs:string">

  -              <xs:enumeration value="a"/>

  -              <xs:enumeration value="b"/>

  -            </xs:restriction>

  -          </xs:simpleType>

  -        </xs:element>

  -        <xs:element name="LocalInt">

  -          <xs:simpleType>

  -            <xs:restriction base="xs:int">

  -              <xs:enumeration value="0"/>

  -              <xs:enumeration value="1"/>

  -            </xs:restriction>

  -          </xs:simpleType>

  -        </xs:element>

  -        <xs:element name="LocalDouble">

  -          <xs:simpleType>

  -            <xs:restriction base="xs:double">

  -              <xs:enumeration value="0.0"/>

  -              <xs:enumeration value="1.0"/>

  -            </xs:restriction>

  -          </xs:simpleType>

  -        </xs:element>

  -      </xs:sequence>

  -    </xs:complexType>

  -  </xs:element>

  -

  -  <xs:element name="LocalEnumAttribute">

  -    <xs:complexType>

  -      <xs:attribute name="stringAttr">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:string">

  -            <xs:enumeration value="a"/>

  -            <xs:enumeration value="b"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:attribute>

  -      <xs:attribute name="intAttr">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:int">

  -            <xs:enumeration value="0"/>

  -            <xs:enumeration value="1"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:attribute>

  -      <xs:attribute name="doubleAttr">

  -        <xs:simpleType>

  -          <xs:restriction base="xs:double">

  -            <xs:enumeration value="0.0"/>

  -            <xs:enumeration value="1.0"/>

  -          </xs:restriction>

  -        </xs:simpleType>

  -      </xs:attribute>

  -    </xs:complexType>

  -  </xs:element>

  -</xs:schema>

  +<?xml version="1.0" encoding="UTF-8"?>
  +<!--
  + Copyright 2003, 2004  The Apache Software Foundation
  +  
  + Licensed under the Apache License, Version 2.0 (the "License");
  + you may not use this file except in compliance with the License.
  + You may obtain a copy of the License at
  +  
  + http://www.apache.org/licenses/LICENSE-2.0
  +  
  + Unless required by applicable law or agreed to in writing, software
  + distributed under the License is distributed on an "AS IS" BASIS,
  + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + See the License for the specific language governing permissions and
  + limitations under the License.
  +-->
  +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
  +    xml:lang="EN"
  +    targetNamespace="http://ws.apache.org/jaxme/test/misc/enumeration";
  +    xmlns:ex="http://ws.apache.org/jaxme/test/misc/enumeration";
  +    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb";
  +    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc";
  +    jaxb:extensionBindingPrefixes="xjc"
  +    elementFormDefault="qualified"
  +    attributeFormDefault="unqualified"
  +    jaxb:version="1.0">
  +  <xs:annotation>
  +    <xs:documentation>
  +      Demonstration of a complex type with all sorts of enumeration values.
  +    </xs:documentation>
  +    <xs:appinfo>
  +      <jaxb:globalBindings
  +          typesafeEnumBase="xs:string xs:int xs:long xs:short xs:double 
xs:float">
  +        <xjc:serializable/>
  +      </jaxb:globalBindings>
  +    </xs:appinfo>
  +  </xs:annotation>
  +
  +  <!-- In this example the typesafeEnumMember instances are part of the
  +       typesafeEnumClass. -->
  +  <xs:simpleType name="StringType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyStringTypeClass">
  +          <jaxb:typesafeEnumMember name="FOO" value="FOO"/>
  +          <jaxb:typesafeEnumMember name="BAR" value="BAR"/>
  +        </jaxb:typesafeEnumClass>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:string">
  +      <xs:enumeration value="FOO"/>
  +      <xs:enumeration value="BAR"/>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <!-- Here's another case: The typesafeEnumMember instances are part
  +       of their respective values. Choose your own style. -->
  +  <xs:simpleType name="IntType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyIntTypeClass"/>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:int">
  +      <xs:enumeration value="3">
  +        <xs:annotation>
  +          <xs:appinfo>
  +            <jaxb:typesafeEnumMember name="INT3"/>
  +          </xs:appinfo>
  +        </xs:annotation>
  +      </xs:enumeration>
  +      <xs:enumeration value="0">
  +        <xs:annotation>
  +          <xs:appinfo>
  +            <jaxb:typesafeEnumMember name="INT0"/>
  +          </xs:appinfo>
  +        </xs:annotation>
  +      </xs:enumeration>
  +      <xs:enumeration value="-7">
  +        <xs:annotation>
  +          <xs:appinfo>
  +            <jaxb:typesafeEnumMember name="INT_7"/>
  +          </xs:appinfo>
  +        </xs:annotation>
  +      </xs:enumeration>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <!-- I personally prefer the former style, for shortness. So we
  +       revert to this style. -->
  +  <xs:simpleType name="LongType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyLongTypeClass">
  +          <jaxb:typesafeEnumMember name="LONG_POSITIVE" 
value="987298379879887"/>
  +          <jaxb:typesafeEnumMember name="LONG_ZERO" value="0"/>
  +          <jaxb:typesafeEnumMember name="LONG_NEGATIVE" 
value="-23987982739273989"/>
  +        </jaxb:typesafeEnumClass>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:long">
  +      <xs:enumeration value="987298379879887"/>
  +      <xs:enumeration value="0"/>
  +      <xs:enumeration value="-23987982739273989"/>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <xs:simpleType name="ShortType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyShortTypeClass">
  +          <jaxb:typesafeEnumMember name="SHORT_POSITIVE" value="3468"/>
  +          <jaxb:typesafeEnumMember name="SHORT_ZERO" value="0"/>
  +          <jaxb:typesafeEnumMember name="SHORT_NEGATIVE" value="-23"/>
  +        </jaxb:typesafeEnumClass>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:short">
  +      <xs:enumeration value="3468"/>
  +      <xs:enumeration value="0"/>
  +      <xs:enumeration value="-23"/>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <xs:simpleType name="DoubleType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyDoubleTypeClass">
  +          <jaxb:typesafeEnumMember name="DOUBLE_POSITIVE" 
value="3249239847982.234"/>
  +          <jaxb:typesafeEnumMember name="DOUBLE_ZERO" value="0"/>
  +          <jaxb:typesafeEnumMember name="DOUBLE_NEGATIVE" 
value="-324234.234"/>
  +        </jaxb:typesafeEnumClass>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:double">
  +      <xs:enumeration value="3249239847982.234"/>
  +      <xs:enumeration value="0"/>
  +      <xs:enumeration value="-324234.234"/>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <xs:simpleType name="FloatType">
  +    <xs:annotation>
  +      <xs:appinfo>
  +        <jaxb:typesafeEnumClass name="MyFloatTypeClass">
  +          <jaxb:typesafeEnumMember name="FLOAT_POSITIVE" value="47982.234"/>
  +          <jaxb:typesafeEnumMember name="FLOAT_ZERO" value="0"/>
  +          <jaxb:typesafeEnumMember name="FLOAT_NEGATIVE" value="-24234.234"/>
  +        </jaxb:typesafeEnumClass>
  +      </xs:appinfo>
  +    </xs:annotation>
  +    <xs:restriction base="xs:float">
  +      <xs:enumeration value="47982.234"/>
  +      <xs:enumeration value="0"/>
  +      <xs:enumeration value="-24234.234"/>
  +    </xs:restriction>
  +  </xs:simpleType>
  +
  +  <xs:complexType name="AllSimpleTypes">
  +    <xs:sequence>
  +      <xs:element name="StringElem" type="ex:StringType"/>
  +      <xs:element name="IntElem" type="ex:IntType"/>
  +      <xs:element name="LongElem" type="ex:LongType"/>
  +      <xs:element name="ShortElem" type="ex:ShortType"/>
  +      <xs:element name="DoubleElem" type="ex:DoubleType"/>
  +      <xs:element name="FloatElem" type="ex:FloatType"/>
  +      <xs:element name="DateTimeElem" minOccurs="0">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:dateTime">
  +            <xs:enumeration value="2002-12-17T12:23:11"/>
  +            <xs:enumeration value="2002-12-16T12:00:11"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:element>
  +      <xs:element name="DateElem" minOccurs="0">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:date">
  +            <xs:enumeration value="2002-12-17"/>
  +            <xs:enumeration value="2002-12-16"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:element>
  +      <xs:element name="TimeElem" minOccurs="0">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:time">
  +            <xs:enumeration value="12:23:11"/>
  +            <xs:enumeration value="12:00:11"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:element>
  +    </xs:sequence>
  +  </xs:complexType>
  +
  +  <xs:element name="AllTypesElement">
  +    <xs:complexType>
  +      <xs:sequence>
  +        <xs:element type="ex:AllSimpleTypes" name="AllSimpleTypesElement"/>
  +      </xs:sequence>
  +    </xs:complexType>
  +  </xs:element>
  +
  +  <xs:element name="LocalEnumElement">
  +    <xs:complexType>
  +      <xs:sequence>
  +        <xs:element name="LocalString">
  +          <xs:simpleType>
  +            <xs:annotation><xs:appinfo>
  +              <jaxb:typesafeEnumClass name="LocalStringCl"/>
  +            </xs:appinfo></xs:annotation>
  +            <xs:restriction base="xs:string">
  +              <xs:enumeration value="a"/>
  +              <xs:enumeration value="b"/>
  +            </xs:restriction>
  +          </xs:simpleType>
  +        </xs:element>
  +        <xs:element name="LocalInt">
  +          <xs:simpleType>
  +            <xs:restriction base="xs:int">
  +              <xs:enumeration value="0"/>
  +              <xs:enumeration value="1"/>
  +            </xs:restriction>
  +          </xs:simpleType>
  +        </xs:element>
  +        <xs:element name="LocalDouble">
  +          <xs:simpleType>
  +            <xs:restriction base="xs:double">
  +              <xs:enumeration value="0.0"/>
  +              <xs:enumeration value="1.0"/>
  +            </xs:restriction>
  +          </xs:simpleType>
  +        </xs:element>
  +      </xs:sequence>
  +    </xs:complexType>
  +  </xs:element>
  +
  +  <xs:element name="LocalEnumAttribute">
  +    <xs:complexType>
  +      <xs:attribute name="stringAttr" default="b">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:string">
  +            <xs:enumeration value="a"/>
  +            <xs:enumeration value="b"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:attribute>
  +      <xs:attribute name="intAttr">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:int">
  +            <xs:enumeration value="0"/>
  +            <xs:enumeration value="1"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:attribute>
  +      <xs:attribute name="doubleAttr">
  +        <xs:simpleType>
  +          <xs:restriction base="xs:double">
  +            <xs:enumeration value="0.0"/>
  +            <xs:enumeration value="1.0"/>
  +          </xs:restriction>
  +        </xs:simpleType>
  +      </xs:attribute>
  +    </xs:complexType>
  +  </xs:element>
  +</xs:schema>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to