我的问题涉及定义XSD文档.我的具体问题是如何定义XSD,以便在生成 XML时,元素将具有type =“array”. 期望的结果将是这样的: names type="array" name ...... /name/names 我已经尝试过在几个论坛上推
期望的结果将是这样的:
<names type="array"> <name> ...... </name> </names>
我已经尝试过在几个论坛上推荐使用的方法,但是从我发现在我看来,甚至可能没有数组的类型,这让我感到困惑,因为生成的XML元素可以有一种类型的数组.
有些工具可以使用XSD并生成符合XSD的示例XML文档,但您应该了解XSD的主要用途是验证XML文档.此XSD将验证您的XML文档:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="names"> <xs:complexType> <xs:sequence> <xs:element name="name" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="type"/> </xs:complexType> </xs:element> </xs:schema>
还要注意,在XML中使用type =“array”属性 – 值对是非常规的,因为类型信息在XSD中在名称的内容模型中传达,不需要在XML文档中明确重复.