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] XML Schema

[ Lists Home | Date Index | Thread Index ]

Hi Henry,

   Thanks for your response. I have some more queries to ask. Actually we are
using Castor Libraries for marshalling/unmarshalling and Castor can not
unmarshal java.lang.Object (hence the limitation on not using xsd:anyType) . If
I proceed with

  <xs:element name="Argument">
   <xs:complexType mixed="true">
     <xs:any minOccurs="0" maxOccurs="unbounded"/>

the given approach then does xs:any going to have similar problems with Castor
or is it going to work fine. Can it support structures like HashMaps of Vectors
of beans.

Secondly, as I wrote "Argument " can be either complex/simple while the above
snippet just has the option for complex type.

Regards and Thanks
Ashish Rajvanshi

ht@cogsci.ed.ac.uk (Henry S. Thompson) on 11/12/2002 02:47:19 PM

To:   Ashish Rajvanshi/HSS@HSS
cc:   xml-dev@lists.xml.org

Subject:  Re: [xml-dev] XML Schema

arajvanshi@hss.hns.com writes:

> Hi,
> <xs:element name="APIMsg">
>        <xs:complexType>
>         <xs:sequence>
>        <xs:attribute name="ApiName" type="xs:string" use="required"/>
>       <xs:attribute name="ApiReturnType" type="xs:string" use="required"/>

Those attr decls need to be after the <sequence>.

>        <xs:element ref="Argument"  minOccurs="0" maxOccurs="unbounded"/>
>        </xs:sequence>
>     </xs:complexType>
>  </xs:element>
>   <xs:element name="Argument">
>     <xs:complexType>
>       <xs:choice>
>      <xs:element ref="Vector" />
>      <xs:element ref="HashMap" />
>      <xs:element ref="xsd:string" /> ----- (How can I refer to the primitive
> types directly (using something like xsd:lang) or do I need to have a
> reference of int,boolean,float etc.)
       <xs:element name="text" type="xs:string"/>
>      <xs:element ref="Object" />
>      <xs:element ref="Array" />
>       </xs:choice>
>     </xs:complexType>
>   </xs:element>
> 1. I have an element APIMsg which has two attributes "ApiName" and
> "ApiReturnType". The element Argument can be anything - Vector, HashMap,Array,
>     Java bean Object or the primitive types (int,string,boolean etc). I want
> specify the same using choice and ref. Do we have anything we can refer to for
>     the primitive types rather than separately adding to the choice.

Ah, now I (maybe) understand -- If it can be _anything_ (i.e. any
well-formed XML), then say:

  <xs:element name="Argument">
   <xs:complexType mixed="true">
     <xs:any minOccurs="0" maxOccurs="unbounded"/>

If it can be any simple type, then use

  <xs:element name="Argument" type="xs:anySimpleType"/>

> 2. Another query is that whether XML Schemas have any support for
> Vectors/HashMaps type of comples objects (other than xsd:anyType)

See the XML Schema Type Library:


  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2002, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
         Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
               URL: http://www.ltg.ed.ac.uk/~ht/
 [mail really from me _always_ has this .sig -- mail without it is forged spam]

The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl>


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

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