- From: Michael Kay <mike@saxonica.com>
- Date: Fri, 21 Aug 2009 10:35:47 +0100
- To: "'Vijay Anand'" <vijay.gunasekaran@mobax.com>, <xmlschema-dev@w3.org>, <bryce@sysonyx.com>
> > The following is my xml for which I require to write the xsd schema > > <type> > <foo/> > <bar/> > </type> > > In the above xml for type element the following conditions > should be satisfied 1] Atleast one element either foo or bar > must be present 2] foo or bar can have a maximum occurance of > one 3] Both foo and bar can be present > You don't say whether you want to allow <bar/><foo/>. In XSD 1.0, you have to spell it out: <xs:choice> <xs:sequence> <xs:element name="foo"/> <xs:element name="bar" minOccurs="0"/> </xs:sequence> <xs:sequence> <xs:element name="bar" minOccurs="0"/> </xs:sequence> </xs:choice> In XSD 1.1 it's simpler to write <xs:sequence> <xs:element name="foo" minOccurs="0"/> <xs:element name="bar" minOccurs="0"/> </xs:sequence> <xs:assert test="exists(*)"/> Regards, Michael Kay http://www.saxonica.com/ http://twitter.com/michaelhkay
Received on Friday, 21 August 2009 09:36:39 UTC