- From: Brenda Bell <bbell@juicesoftware.com>
- Date: Wed, 17 Jul 2002 12:43:44 -0400
- To: "'xmlschema-dev@w3.org'" <xmlschema-dev@w3.org>
- Message-ID: <846B0B02E1B78B49B678EDCC00EB2962FB4F95@mail01.ent.juice.com>
My confusion stems from some type definitions I've come across in WSDL files, but I believe this is truly a question about XML-Schema and how types work. I've seen array types defined in two different ways: Method 1: <s:complexType name="StringArray"> <s:complexContent mixed="false"> <s:restriction base="soapenc:Array"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="String" type="s:string"/> </s:sequence> </s:restriction> </s:complexContent> </s:complexType> Method 2: <xs:complexType name="DoubleArray"> <xs:complexContent> <xs:restriction base="soapenc:Array"> <xs:sequence/> <xs:attribute ref="soapenc:arrayType" n1:arrayType="xs:double[]" xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/> </xs:restriction> </xs:complexContent> </xs:complexType> </xs:schema> Method 1 makes perfect sense... given the following element declaration: <xs:element name="TestStrings"> <xs:complexType> <xs:sequence> <xs:element name="Data" type="tns:StringArray"></xs:element> </xs:sequence> </xs:complexType> </xs:element> This document is valid (at least, it's valid in XMLSpy :): <TestStrings> <Data> <String>abc</String> <String>xyz</String> </Data> </TestStrings> However, method 2 has me baffled... given the following element declaration: <xs:element name="TestDoubles"> <xs:complexType> <xs:sequence> <xs:element name="Data" type="tns:DoubleArray"></xs:element> </xs:sequence> </xs:complexType> </xs:element> I haven't been able to come up with a valid document. The Data element isn't allowed to have text, but the sequence on DoubleArray is empty and doesn't allow child elements. What am I missing? Brenda Bell Sr. Software Architect Juice Software, Inc. Phone: 603.428.3994 Cell: 603.494.8206 Fax: 603.428.8713 Email: bbell@juicesoftware.com MSN: bbell@theotherbell.com
Received on Wednesday, 17 July 2002 12:45:13 UTC