0

我将如何正确定义我的元素 RandomAmount_

//当RandomAmount可以是RandomAmount_1到RandomAmount_N时

<xs:element name="RandomAmount">
   <xs:complexType>
       <xs:choice maxOccurs="unbounded" minOccurs="0">
            <xs:element type="xs:float" name="RandomAmount_" />
       </xs:choice>
   </xs:complexType>
 </xs:element>

我觉得应该将 RandomAmount 命名为 =“ RandomAmount_* ”来解决问题,但这不起作用。

4

1 回答 1

1

XSD 元素声明必须为元素指定一个名称;没有提供您显然正在寻找的那种姓名的家庭。

目前尚不清楚建议您做什么,主要是因为不清楚为什么要在元素名称中包含数字。如果您想通过RandomAmount_1419在随机数生成器返回值 1419 时命名元素来返回对随机数生成器的调用的值,那么我建议您只需命名元素RandomAmount并返回元素内容中的值,或在属性中。

另一方面,如果您想要数字以便父RandomAmount元素的子元素命名为RandomAmount_1, RandomAmount_2,RandomAmount_3等,那么我的建议仍然是相同的:只需给所有子元素取相同的名称,然后让您的数据为 (例如):

<RandomAmount>
  <amount>1419</amount>
  <amount>8676</amount>
  <amount>862</amount>
  <amount>7331</amount>
  <amount>7318</amount>
  ...
</RandomAmount>

没有必要给孩子起不同的名字;实际上,如果所有孩子都包含相同类型的信息(我从您的命名中猜测它们包含随机数),那么最好不要给他们不同的名字。(如果您需要能够引用序列中的第三个数字,XPath 有简单的方法来做到这一点;如果您要映射到一个无法处理多个同名子元素的对象系统,请获得一个更好的对象映射系统.)

于 2012-10-25T19:01:15.517 回答