我想设计一个XML结构来捕获包含客户名称和许多不同数量列的电子表格的输出。还有一排排。如何使用xml架构组元素
我有大约4个数量的列定义,我想作为一个组重用。所以,我宣布了一个名为AmountsGroup的组,然后在我的复杂类型定义中使用Group Name作为'ref'属性。这里是如何看起来像
<xsd:complexType name="AmountByCustomerType">
<xsd:sequence>
<xsd:element name="Customer" type="xsd:string" />
<xsd:group ref="AmountsGroup" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AmountByCustomerTotalType">
<xsd:sequence>
<xsd:element name="Total" type="xsd:string" />
<xsd:group ref="AmountsGroup" />
</xsd:sequence>
</xsd:complexType>
<xsd:group name="AmountsGroup">
<xsd:sequence>
<xsd:element name="AmountByPeriod" type="AmountByPeriodType" maxOccurs="unbounded" />
<xsd:element name="NetAdjustments" type="xsd:decimal" />
<xsd:element name="OriginalSalesAmount" type="xsd:decimal" minOccurs="0"/>
<xsd:element name="RevisedAmount" type="xsd:decimal" />
</xsd:sequence>
</xsd:group>
这里是我的问题:
我已经宣布了集团具有的maxOccurs =“无界”第一复杂类型,其中在第二复杂类型,我已经离开它意思是它只会出现一次。这会正常工作吗?我需要许多行的客户数量和总数量只有一行。
XML实例文档不需要在任何地方都有该组名的名称 - 是否正确?
有没有更好的方法来构造单独的行和结构的总体类型?
这是一个很好的做法,当我使用威尼斯盲人模式?我不想声明一个complexType,因为我必须声明一个将出现在XML实例文档中的元素,从而为XML对象树添加一个级别。有没有办法使用一个命名的类型,而没有给它自己的元素?我希望你明白我在做什么。
有什么想法?