- From: Xan Gregg <Xan.Gregg@jmp.com>
- Date: Thu, 8 Apr 2004 13:04:54 -0400
- To: "Shashikala Shamarao" <shashikala_shamarao@yahoo.com>, <xmlschema-dev@w3.org>
- Message-ID: <939FBCFFFF9B0C40BF8B53294E2296DB4AFA50@merc20.na.sas.com>
I was thinking of something like (off the top of my head -- syntax may be wrong): <element name="Feature1" type="x1:Feature1"/> <complexType name="Feature1"> <sequence> <element name="property1" type="x1:anyHotel" /> </sequence> </complexType> <complexType name="anyHotel"> <sequence> <any minOccurs="0" macOccurs="unbounded"/> </sequence> </complexType> <complexType name="hotel1"> <restriction base="x1:anyHotel> <attribute name="name" type="string" fixed="H1"/> <attribute name="address1" type="string" fixed="A1"/> </restriction> </complexType> <complexType name="hotel2"> <restriction base="x1:anyHotel> <attribute name="name" type="string" fixed="H2"/> <attribute name="address1" type="string" fixed="A2"/> </restriction> </complexType> ... alowing XML like: <Feature1 xmlns:xsi="..."> <property1 xsi:type="hotel1" name="H1" address1="A1"/> <property1 xsi:type="hotel2" name="H2" address1="A2"/> </Feature1> xan ________________________________ From: Shashikala Shamarao [mailto:shashikala_shamarao@yahoo.com] Sent: Wednesday, April 07, 2004 6:32 PM To: Xan Gregg; xmlschema-dev@w3.org Subject: RE: Multiple Types for an element Thank you much for your response. But I don't think I understood quite well, if you could give me an example, it would be great. Thanks, Shashi For your reference I am attaching the XSD <element name="Feature1" type="x1:Feature1"/> <complexType name="Feature1"> <sequence> <element name="property1" type="x1:hotel1" /> </sequence> </complexType> <complexType name="hotel1"> <attribute name="name" type="string" fixed="H1"/> <attribute name="address1" type="string" fixed="A1"/> </complexType> <complexType name="hotel2"> <attribute name="name" type="string" fixed="H2"/> <attribute name="address1" type="string" fixed="A2"/> </complexType> which would give me an XML like below <Feature1> <property1 name="H1" address1="A1"/> </Feature1> but if I want an XML like below: <Feature1> <property1 name="H1" address1="A1"/> <property1 name="H2" address1="A2"/> </Feature1> Xan Gregg <Xan.Gregg@jmp.com> wrote: Your message came through a bit garbled, but I think what you are trying to do might be best done with either substitution groups or xsi:type. With xsi:type, you would define: type anyHotel type hotel1 derived from anyHotel type hotel2 derived from anyHotel element property1 of type anyHotel then the instance would contain something like <property1 xsi:type="hotel1" name="H1" address="A1"/> xan ________________________________ From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On Behalf Of Shashikala Shamarao Sent: Monday, March 29, 2004 8:19 PM To: xmlschema-dev@w3.org Subject: Multiple Types for an element Is there a way to define multiple types for an element? For example ... but if I want an XML like below: <Feature1> <property1 name="H1" address1="A1"/> <property1 name="H2" address1="A2"/> </Feature1> How can I define XML Schema? Basically I want one property element to have hotel1 as type and other one as hotel2. Is there a way to do such things? If so could somebody please mail me a Schema which does that. ________________________________ Do you Yahoo!? Yahoo! Small Business $15K Web Design Giveaway <http://us.rd.yahoo.com/evt=23609/*http://promotions.yahoo.com/design_giveaway/static/index2.html> - Enter today
Received on Thursday, 8 April 2004 13:05:03 UTC