xml – XSD all和XSD序列之间的中间
发布时间:2020-12-16 08:06:28 所属栏目:百科 来源:网络整理
导读:我用XSD定义一个用户元素。对于此示例,用户具有名称,电子邮件和一个或多个国籍。我试过了: xs:all xs:element name="name" blabla / xs:element name="email" blabla / xs:element name="nationality" minOccurs="1" maxOccurs="unbounded" //xs:all 但是
我用XSD定义一个用户元素。对于此示例,用户具有名称,电子邮件和一个或多个国籍。我试过了:
<xs:all> <xs:element name="name" blabla /> <xs:element name="email" blabla /> <xs:element name="nationality" minOccurs="1" maxOccurs="unbounded" /> </xs:all> 但是,这是非法的。显然,“All”中的元素只能出现一次(或根本不出现)。 是否有这两种可用的组合?不是根据http://www.w3schools.com/Schema/schema_complex_indicators.asp,但也许它的隐藏(或我没有经验的眼睛不看到它)。 通过直觉,我也试过: <xs:all> <xs:element name="name" blabla /> <xs:element name="email" blabla /> <xs:sequence> <xs:element name="nationality" minOccurs="1" maxOccurs="unbounded" /> </xs:sequence> </xs:all> 但是,这是不幸的是无效。 这里是XSD的当前,真实的一块: <!-- user --> <xs:complexType name="user"> <xs:sequence> <xs:element name="firstname" type="xs:string" minOccurs="1" maxOccurs="1" /> <xs:element name="appendix" type="xs:string" minOccurs="0" maxOccurs="1" /> <xs:element name="lastname" type="xs:string" minOccurs="1" maxOccurs="1" /> <xs:element name="address" type="xs:string" minOccurs="1" maxOccurs="1" /> <xs:element name="zipcode" type="xs:string" minOccurs="1" maxOccurs="1" /> <xs:element name="city" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="username" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="email" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="country" type="country" minOccurs="1" maxOccurs="1"/> <xs:element name="nationality" type="xs:string" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType>
您的代码应在XSD 1.1中有效。对于XSD 1.0,你必须找到一个解决方法。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |