OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] XML-Schema Help

[ Lists Home | Date Index | Thread Index ]

"Dave Yancey" <dyancey1@hotmail.com> writes:

> Hello all,
> 
> I've been following the threads here for a while and have learned a
> great deal from everyone.
> 
> 
> My question is this, in a Schema is it possible to have an element be
> required only if its parent element exists.
> 
> 
> For example in the code below if timeframetype exists then either
> earliestdate or latestdate would be required, 1 or the other but both
> are not required.
> 
> 
> Thanks for any help in advance.
> 
> David Yancey
> david_yancey@harte-hanks.com
> 
> 
> <xs:complexType name="timeframeType">
> 	<xs:sequence>
> 		<xs:element ref="description"/>
> 		<xs:element ref="earliestdate" minOccurs="0"/>
> 		<xs:element ref="latestdate" minOccurs="0"/>
> 	</xs:sequence>
> </xs:complexType>

Sure -- for compactness, I'll use DTD notation:

<!ELEMENT eltWithTypeTimeframeType
          (description,((earliestDate,latestDate?)|latestDate))>

Turn that into xs:sequence and xs:choice and you've got what you need.

ht
-- 
  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2002, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
		     URL: http://www.ltg.ed.ac.uk/~ht/
 [mail really from me _always_ has this .sig -- mail without it is forged spam]




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS