W3C home > Mailing lists > Public > xmlschema-dev@w3.org > September 2006

Re: special tags

From: Debora Vanni <debora.vanni@tvblob.com>
Date: Thu, 21 Sep 2006 18:34:51 +0200
To: "G. Ken Holman" <gkholman@CraneSoftwrights.com>
Cc: xmlschema-dev@w3.org
Message-Id: <1158856491.8344.27.camel@localhost.localdomain>

That it doesn't work: it says that element choice has an invalid
content. 
I didn't find anywhere that I can write both "all" and "choice" inside
the same complextype, is that possible?
I probably need somenthing like "union" but for complex type, is there
somenting like that?
Thank you very much for your answer
Debora
Il giorno gio, 21/09/2006 alle 11.26 -0400, G. Ken Holman ha scritto:
> At 2006-09-21 17:15 +0200, Debora Vanni wrote:
> >I have this schema
> ><xs:element name="parameters">
> >         <xs:complexType>
> >                 <xs:all>
> >                 <xs:element name="family-name" type = "simple_text"/>
> >                 <xs:element name="first-name"type = "simple_text"/>
> >                 <xs:element name="cod-fisc" type = "alfa_numeric"/>
> >
> >                 <xs:element name="home-address" type = "simple_text"/>
> >
> >                 </xs:all>
> >         </xs:complexType>
> ></xs:element>
> >I need somenthing to say that the other 2 elements(e-mail and
> >cell-phone) are special(one or other or both), how could I use the
> >Kleene notation inside that?
> 
> I haven't taken the time to check the following 
> for errors, but you need something along the lines of:
> 
> <xs:element name="parameters">
>    <xs:complexType>
>      <xs:sequence>
>        <xs:element name="family-name" type = "simple_text"/>
>        <xs:element name="first-name" type = "simple_text"/>
>        <xs:element name="cod-fisc" type = "alfa_numeric"/>
>        <xs:element name="home-address" type = "simple_text"/>
>        <xs:choice>
>           <xs:sequence>
>             <xs:element name="cell-phone" type = "simple_text"/>
>             <xs:element name="email" type = "simple_text" minOccurs="0"/>
>           </xs:sequence>
>           <xs:sequence>
>             <xs:element name="email" type = "simple_text"/>
>             <xs:element name="cell-phone" type = "simple_text" minOccurs="0"/>
>           </xs:sequence>
>        </xs:choice>
>      </xs:sequence>
>    </xs:complexType>
> </xs:element>
> 
> Which will implement my earlier suggestion.
> 
> I hope this helps.
> 
> . . . . . . . . . . . Ken
> 
> Il giorno gio, 21/09/2006 alle 10.40 -0400, G. Ken Holman ha scritto:
> > > At 2006-09-21 16:28 +0200, Debora Vanni wrote:
> > > >I have this problem now.
> > > >I have this xml messagge
> > > >
> > > >            <parameters>
> > > >                 <family-name>Rossi</family-name>
> > > >                 <first-name>Paolo</first-name>
> > > >                 <cod-fisc>123123123</cod-fisc>
> > > >               <home-address>via Vai</home-address>
> > > >               <cell-phone>12354356</cell-phone>
> > > >               <e-mail> pippo@yrr.it.net</e-mail>
> > > >             </parameters>
> > > >  The problem is that family-name, first-name,
> > > > cod-fisc and home-address are mandatory and 
> > I need at least one of cell-phone
> > >
> > > Using Kleene notation as a short cut, I think you would need:
> > >
> > >   home-address, ( ( cell-phone, email? ) | ( email, cell-phone? ) )
> > >
> > > ... so that you have one or the other or both, but not neither.
> > >
> > > Which would validate your examples below, and at
> > > the same time not be ambiguous.
> 
> 
> --
> UBL/XML/XSLT/XSL-FO training: Vårø, Denmark 2006-10-02/06,11-20/24
> UBL International 2006  2006-11-13/17 http://www.ublconference.com
> World-wide corporate, govt. & user group UBL, XSL, & XML training.
> G. Ken Holman                 mailto:gkholman@CraneSoftwrights.com
> Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/x/
> Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
> Male Cancer Awareness Aug'05  http://www.CraneSoftwrights.com/x/bc
> Legal business disclaimers:  http://www.CraneSoftwrights.com/legal
> 
> 
> 
-- 
 Debora Vanni - TVBLOB S.r.l.
 Software Engineer

 Via G. Paisiello, 9 20131 Milano, Italia
 -----------------------------------------
 Phone +39 02 36562440
 Fax +39 02 20408347
 Web Site http://www.tvblob.com
 E-mail debora.vanni@tvblob.com
Received on Thursday, 21 September 2006 16:35:25 GMT

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