将限制为“混合”元素



你好,我希望能够定义这样的内容:

<Infos>
      <Mileage>9987
          <UseIn>POS_DISPLAY</UseIn>
          <UseIn>READER_DISPLAY</UseIn>
      </Mileage>
</Infos>

Mileage是混合类型。9987是其值,UseIn是一些属性。问题是我找不到定义Mileage内容限制的方法。

是否有任何方法可以定义上述结构,而不会落后:

<Infos>
      <Mileage>
          <MileageValue>9987</MileageValue>
          <UseIn>POS_DISPLAY</UseIn>
          <UseIn>READER_DISPLAY</UseIn>
      </Mileage>
</Infos>

出于历史原因,我不愿意描述,XSD类型混合内容允许字符数据出现在任何位置。很容易定义允许您显示的结构的类型,但是定义允许您显示的类型并不容易,同时拒绝

之类的变体
<Mileage>
    <UseIn>POS_DISPLAY</UseIn>
    9987
    <UseIn>READER_DISPLAY</UseIn>
</Mileage>

<Mileage>99
    <UseIn>POS_DISPLAY</UseIn>
    8
    <UseIn>READER_DISPLAY</UseIn>
    7
</Mileage>

我的建议,FWIW,是回到第二个设计,该设计将在大多数XML基础架构中更好地工作。

最新更新