- From: G. Ken Holman <gkholman@CraneSoftwrights.com>
- Date: Thu, 21 Sep 2006 11:26:09 -0400
- 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 UTC