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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Schema issue with enumerated element content

[ Lists Home | Date Index | Thread Index ]

Thanks Kasimier. I think I'll just move enumerations into attributes. A little more complex for end users, but seemingly much better on the schema end.


-------- Original Message --------
Subject: RE: [xml-dev] Schema issue with enumerated element content
From: Kasimier Buchcik <K.Buchcik@4commerce.de>
Date: Fri, November 18, 2005 3:04 pm
To: russ@weststreetconsulting.com
Cc: ML-xml-dev <xml-dev@lists.xml.org>

Hi,

On Fri, 2005-11-18 at 12:07 -0700, russ@weststreetconsulting.com wrote:
> Henry, thanks for the speedy response. I've tried your suggestion, but
> XML Spy will not validate it. It claims that the schema might be valid
> as a part of another schema, but not standalone. As standalone, the
> <xs:attribute> element is unexpected.  I think there is something
> basic that I'm missing here.  I've reprinted the revised definition
> below.

>From the schema for schemata:

<xs:group name="complexTypeModel">
 <xs:choice>
     <xs:element ref="xs:simpleContent"/>
     <xs:element ref="xs:complexContent"/>
     <xs:sequence>  
      <xs:group ref="xs:typeDefParticle" minOccurs="0"/>
      <xs:group ref="xs:attrDecls"/>
     </xs:sequence>
 </xs:choice>
</xs:group>

So either <simpleContent> or attribute declarations, but not both.
The attribute declaration goes into the <restriction>.

An example would be the short hand form of xs:anyType restrictions
and the explicit form (although we have a <complexContent> here).

Short hand:

<xs:complexType name="myType">      
   <xs:attribute name="attr">
</xs:complexType>

Explicit:

<xs:complexType name="myType">  
<xs:complexContent>
  <xs:restriction base="xs:anyType">
    <xs:attribute name="attr" type="xs:string"></xs:attribute>
  </xs:restriction>
</xs:complexContent>
</xs:complexType>

Regards,

Kasimier

> Thanks, Russ
>  
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schemaxmlns:xs="http://www.w3.org/2001/XMLSchema"elementFormDefault="qualified"attributeFormDefault="unqualified">
>  
>  
> <xs:element name="ElemName">
>   <xs:complexType>
>     <xs:simpleContent>
>       <xs:restrictionbase="xs:anyType">
>         <xs:simpleType>
>           <xs:list>
>             <xs:simpleType>
>               <xs:restriction base="xs:string">
>                 <xs:enumerationvalue="Value1"></xs:enumeration>
>                 <xs:enumerationvalue="Value2"></xs:enumeration>
>                 <xs:enumerationvalue="Value3"></xs:enumeration>
>                 <xs:enumerationvalue="Value4"></xs:enumeration>
>               </xs:restriction>
>             </xs:simpleType>
>           </xs:list>
>         </xs:simpleType>
>       </xs:restriction>
>     </xs:simpleContent>
>     <xs:attribute name="attr" type="xs:string"></xs:attribute>
>   </xs:complexType>
> </xs:element>
>
>
>  
>        
>         -------- Original Message --------
>         Subject: Re: [xml-dev] Schema issue with enumerated element
>         content
>         From: ht@markup.co.uk (Henry S. Thompson)
>         Date: Fri, November 18, 2005 1:52 pm
>         To: russ@weststreetconsulting.com
>         Cc: xml-dev@lists.xml.org
>        
>         russ@weststreetconsulting.com writes:
>        
>         > So far, I have the following, which satisfies #1, but I
>         can't figure out how
>         > to add an attribute. Any ideas?
>         >
>         > <xs:element name="ElemName">
>         >   <xs:complexType>
>         >     <xs:simpleContent>
>         >      ....
>         >     </xs:simpleContent>
>         >>>>>  <xs:attribute name="attr" type="xs:string"/> <<<<<
>         attributes go here
>         >   </xs:complexType>
>         > </xs:element>
>        
>         ht
>         --
>                       Henry S. Thompson, Markup Technology Ltd.
>             4 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- +44 (0)
>         7866 471 388
>                    Fax: (44) 131 650-4587, e-mail:
>         ht@markuptechnology.com
>                          URL: http://www.markup.co.uk/
>         [mail really from me _always_ has this .sig -- mail without it
>         is forged spam]
> ----------------------------------------------------------------- The
> xml-dev list is sponsored by XML.org , an initiative of OASIS  The
> list archives are at http://lists.xml.org/archives/xml-dev/ To
> subscribe or unsubscribe from this list use the subscription manager:




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS