- From: Arshad Noor <arshad.noor@strongauth.com>
- Date: Mon, 23 Jun 2008 16:16:10 -0700
- To: Koray SAKIROGLU <koray.sakiroglu@gmail.com>
- CC: xmlschema-dev@w3.org
Its not quite what I wanted. If I understand your construction, you've essentially given elementB an attribute called "name" and elementA may either use the locally-defined elementB (with two sub-elements C & D) or the globally defined elementB with the "name" attribute. What I'm looking for is to have the elementB either contain the sub-elements (C & D, as in your example), or fixed-text content in the body of elementB rather than in an attribute. Is that possible? Michael Kay from another posting has indicated that it is not possible directly in XML Schema 1.0. Thanks. Arshad Noor StrongAuth, Inc. Koray SAKIROGLU wrote: > Damned, sorry my previous message got sent before I completed it. > > Hello :) > > From what I understood you want something like this : > > <?xml version="1.0"?> > <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" > elementFormDefault="qualified" attributeFormDefault="unqualified"> > > <xsd:element name="elementB"> > <xsd:complexType> > <xsd:simpleContent> > <xsd:extension base="xsd:string"> > <xsd:attribute name="name" type="xsd:string" > use="required" /> > </xsd:extension> > </xsd:simpleContent> > </xsd:complexType> > </xsd:element> > > <xsd:element name="elementA"> > <xsd:complexType> > <xsd:choice> > > <xsd:element name="elementB"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="elementC" type="xsd:string"/> > <xsd:element name="elementD" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > > <xsd:element ref="elementB" /> > > </xsd:choice> > </xsd:complexType> > </xsd:element> > </xsd:schema> > > does this help or you want something more specific ? > > 2008/6/22 Arshad Noor <arshad.noor@strongauth.com > <mailto:arshad.noor@strongauth.com>>: > > > How is it possible to define an XSD to allow an element to > either contain custom sub-elements, or a fixed string? > > For example, I would like to be able to do the following: > > <ElementA> > <ElementB> > <ElementC>Some value</ElementC> > <ElementD>Another value</ElementD> > </ElementB> > </ElementA> > > or > > <ElementA> > <ElementB>Any</ElementB> > </ElementA> > > I'm not sure how to use <xsd:choice> to define this? Thanks > for any suggestions. > > Arshad Noor > StrongAuth, Inc. > > > >
Received on Monday, 23 June 2008 23:16:57 UTC