[Home] [By Thread] [By Date] [Recent Entries]

  • To: xml-dev@l...
  • Subject: choice, sequence, all: 'easy' XML Schema question
  • From: John Graybeal <graybeal@m...>
  • Date: Wed, 16 Feb 2005 09:10:39 -0800

We are writing XML of the form:

<element>
   <required_element/>
   <optional_element1/>
   <optional_element2/>
</element>

We would like to specify (for example), that there can be only one of required_element, only one of optional_element1, but as many as desired of optional_element2.  Plus, we would like to be able to specify the elements in any order.

I believe there is no straightforward way to specify this, since 'sequence' enforces order, 'choice' lets you choose any one (possibly repeating) sub-element but repeating the choice group eliminates constraints on the quantity of a given sub-element, and 'all' constrains maxoccurs to 1.  And repeating all possible sequences, within a choice, is not feasible due to the number of elements involved.

If the above is untrue, what is a suitable specification?

If it is true, can you offer a few words about why things were constrained in this way?  It seems like a useful capability.

I'm sure this question has been answered before and elsewhere, but I could not find the answer 'out there'.  Any references would be much appreciated.

John


-- 
----------
John Graybeal   <mailto:graybeal@m...>  -- 831-775-1956 
Monterey Bay Aquarium Research Institute
Marine Metadata Initiative: http://marinemetadata.org   ||  Shore Side Data System: http://www.mbari.org/ssds

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member