Xsd 如何在一个带有计数器的模式中正确定义元素名
如何正确定义我的元素\u //当RandomAmount可以是RandomAmount\u 1到RandomAmount\N时Xsd 如何在一个带有计数器的模式中正确定义元素名,xsd,Xsd,如何正确定义我的元素\u //当RandomAmount可以是RandomAmount\u 1到RandomAmount\N时 <xs:element name="RandomAmount"> <xs:complexType> <xs:choice maxOccurs="unbounded" minOccurs="0"> <xs:element type="xs:float" name="RandomAmoun
<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”*,但这不起作用。XSD元素声明必须为元素指定一个名称;对于你显然正在寻找的那种名字的家族没有规定 不清楚建议您做什么,主要是因为不清楚您为什么希望在元素名称中包含数字。如果您想通过在随机数生成器返回值1419时命名元素
RandomAmount\u 1419
来返回对随机数生成器的调用值,那么我建议您仅命名元素RandomAmount
,并在元素的内容或属性中返回值
另一方面,如果您想要这些数字,以便父元素RandomAmount
的子元素将被命名为RandomAmount\u 1
,RandomAmount\u 2
,RandomAmount\u 3
,那么我的建议仍然是相同的:只需给所有子元素起相同的名字,并让您的数据(例如):
1419
8676
862
7331
7318
...
没有必要给孩子起不同的名字;事实上,如果所有的孩子都包含相同的信息(我从你的名字猜他们包含随机数),那么最好不要给他们起不同的名字。(如果您需要能够引用序列中的第三个数字,XPath提供了简单的方法;如果您要映射到一个无法处理多个同名子元素的对象系统,请使用更好的对象映射系统。)感谢您的回复。我上面的示例节点名称仅用于演示。这是一个与知识产权相关的问题,所以我不得不对我的问题措辞非常挑剔。父级的子级来自N个大小的数组。该数组的每个子数组都附加了一个计数器,因此在输出期间它将是子数组1、子数组2等。。(取决于数组的大小)此外,每个子级都拥有不同于其他子级的重要数据,我担心保留相同的名称会给最终用户带来混淆。
<RandomAmount>
<amount>1419</amount>
<amount>8676</amount>
<amount>862</amount>
<amount>7331</amount>
<amount>7318</amount>
...
</RandomAmount>