假设我有以下复杂类型
<xs:complexType name="matrix">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="rows" type="xs:integer" use="required" />
<xs:attribute name="cols" type="xs:integer" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
这代表一个矩阵,我的想法是我可以像这样填写它(例如,对于 2x2 矩阵):
<matrix rows=2 cols=2>1,2,3,4</matrix>
现在说我想根据这种类型制作一个元素,比如
<xs:element name="eulerangles" type="matrix">
在这种情况下,我仍然需要显式设置 rows 和 cols 属性,但该元素将始终具有 3 行和 3 列。是否有可能以某种方式将属性设置为模式中的特定数字,这样我就不需要明确指定我想要 3 行和 3 列
即不必写这个:
<eulerangles rows=3 cols=3>1,2,3,4,5,6,7,8,9</eulerangles>
我希望能够这样写
<eulerangles>1,2,3,4,5,6,7,8,9</eulerangles>
虽然 eulerangles 仍然是具有 3 行和 3 列的“矩阵”类型
注意:我对 XML 和 XSD 很陌生。我非常感谢任何有助于改善我的风格的评论。