W3C home > Mailing lists > Public > xmlschema-dev@w3.org > April 2003

Re: XML Schema: Alternating "unbounded" elements

From: Navid <silencer2020@yahoo.ca>
Date: Fri, 18 Apr 2003 13:16:04 -0400 (EDT)
Message-ID: <20030418171604.13947.qmail@web41712.mail.yahoo.com>
To: Mohan Raj <mohanrajd@hotmail.com>, xmlschema-dev@w3.org

>    <field1>
>       <value>x
>       </value>
>    </field1>
> 
>    <field3>
>       <value>x
>       </value>
>    </field3>

This should do it:

<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.com"
elementFormDefault="qualified"
xmlns:target="http://www.example.com">
	
	<element name="field1"  type="target:myType"/>
	<element name="field2"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field3"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field4"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field5"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field6"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field7"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field8"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field9"  type="target:myType"
substitutionGroup="target:field1"/>
	<element name="field10" type="target:myType"
substitutionGroup="target:field1"/>
				
	<element name="record">
		<complexType>
			<sequence>
				<element ref="target:field1" minOccurs="0"
maxOccurs="unbounded"/>
			</sequence>
		</complexType>
	</element>
	
	<complexType name="myType">
		<sequence>
			<element name="value" type="string"/>
		</sequence>
	</complexType>
</schema>


Navid.


 --- Mohan Raj <mohanrajd@hotmail.com> wrote: > 
> 
> I am fairly new to XML and i searched through the
> archives but did not find 
> any solution for this issue.
> 
> I am trying to define a schema that can validate the
> following XML document.
> 
> <record>
>    <field1>
>       <value>x
>       </value>
>    </field1>
> 
>    <field2>
>       <value>x
>       </value>
>    </field2>
> 
>    <field1>
>       <value>x
>       </value>
>    </field1>
> 
>    <field3>
>       <value>x
>       </value>
>    </field3>
> 
>    <field2>
>       <value>x
>       </value>
>    </field2>
> 
> ...
> 
> </record>
> 
> i have a bunch of fields field1 through field10 and
> i can have multiple 
> occurences of every field (maxOccurs = "unbounded")
> and they need not be in 
> a sequence (i.e.
> field1 occuring thrice followed by field2 occuring
> twice etc). these 
> elements can alternate as shown above (in any
> order).
> 
> please provide a sample schema that can do something
> like this. i appreciate 
> your help.
> 
> thanks
> mohan
> 
> 
>
_________________________________________________________________
> Help STOP SPAM with the new MSN 8 and get 2 months
> FREE*  
> http://join.msn.com/?page=features/junkmail
>  

______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca
Received on Friday, 18 April 2003 13:16:10 GMT

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