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

Re: special tags

From: G. Ken Holman <gkholman@CraneSoftwrights.com>
Date: Thu, 21 Sep 2006 11:26:09 -0400
Message-Id: <7.0.1.0.2.20060921112036.029c0690@CraneSoftwrights.com>
To: xmlschema-dev@w3.org

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
Received on Thursday, 21 September 2006 15:26:29 GMT

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