- From: Gwenael Treguier <gwenael_treguier@altavista.fr>
- Date: 28 Sep 2000 10:35:48 +0200
- To: xmlschema-dev@w3.org
Hi, I want to describe arrays whose sizes are different. The only way I found to express Array with XML Schema is by mean of XPath expression in 'minOccurs' attribut value. <xsd:element name='myArray'> <xsd:complexType> <xsd:element name='Size' type='xsd:short'/> <xsd:element name='myArrayElt' type='xsd:string' minOccurs='Size/text()'/> </xsd:complexType> </xsd:element> Before the last change (22/09), I have read that 'maxOccurs'='minOccurs' if 'maxOccurs' omitted. But now I have to write : <xsd:element name='myArray'> <xsd:complexType> <xsd:element name='Size' type='xsd:short'/> <xsd:element name='myArrayElt' type='xsd:string' minOccurs='Size/text()' maxOccurs='Size/text()'/> </xsd:complexType> </xsd:element> The first problem is XPath expressions are forbidden in 'minOccurs' and 'maxOccurs' attributes value. Can Someone tell me if I am in a wrong way or if there is a better solution? I also use XPath expression to say if an element should appeared depend on another element value. <xsd:element name='Description' type='xsd:string' minOccurs='Flags/description[text()=1]' maxOccurs='Flags/description[text()=1]'/> The second problem is XPath expressions can have results of different type (Boolean, Double, NodeSet...). So I have to check and then cast explictly expression. Did Someone encounter this kind of problem? Bye. Internet et mail gratuit AltaVista http://www.altavista.fr
Received on Thursday, 28 September 2000 04:35:51 UTC