- 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