- From: Fermín Galán Márquez <fermin.galan@cttc.es>
- Date: Fri, 6 Oct 2006 11:54:38 +0200
- To: <xmlschema-dev@w3.org>
Hi,
I'm trying to define using XML Schema a element which content mixes several
elements, some of then multiple, that can come in any order and I wonder if
even this is possible.
Let me clarify with a example. Consider a <book> element whose content can
be up to one <title> (minOccurs=0, maxOccurs=1), up to one <author>
(minOccurs=0, maxOccurs=1) and many <chapter> (minOccurs=0,
maxOccurs=unbounded) that comes together, but combining child tags in any
order.
Examples:
<book>
<title>...</title>
<chapter>...</chapter>
<chapter>...</chapter>
<chapter>...</chapter>
<author>...</autor>
</book>
<book>
<title>...</title>
<author>...</autor>
<chapter>...</chapter>
<chapter>...</chapter>
<chapter>...</chapter>
</book>
How would be the XML Schema definition for such <book> element, please?
Firstly, I though using <xs:all>, but the problem is that it only allows
elements with maxOccurs=1, so it doesn't fit with <chapter> (that has
maxOccurs=unbounded).
Anybody knows a solution or workaround, please? I'm getting crazy reviewing
the XML Schema reference for some solution, but I'm not finding anything ..
Please, any help is very welcome!
Regards,
--------------------
Fermín Galán Márquez
CTTC - Centre Tecnològic de Telecomunicacions de Catalunya
Parc Mediterrani de la Tecnologia, Av. del Canal Olímpic s/n, 08860
Castelldefels, Spain
Room 1.02
Tel : +34 93 645 29 12
Fax : +34 93 645 29 01
Email address: fermin.galan@cttc.es
PD. Of course I could do something like:
<book>
<title>...</title>
<author>...</autor>
<chapters>
<chapter>...</chapter>
<chapter>...</chapter>
<chapter>...</chapter>
</chapters>
</book>
and define <book> as a <xs:all> of <title>, <author> and <chapters>, but I
would like to solve the problem without adding the <chapters> "grouping"
element.
Received on Friday, 6 October 2006 13:43:14 UTC