XSD与keyref具有多个参数唯一

时间:2018-05-08 08:32:45

标签: xml xsd

考虑以下XML

<Register name="Error">
  <Bits name="count">
     <lsb>0</lsb>
     <msb>3</msb>
  </Bits>
</Register>

<Register name="Date">
  <Bits name="minutes">
     <lsb>0</lsb>
     <msb>1</msb>
  </Bits>
  <Bits name="seconds">
     <lsb>2</lsb>
     <msb>3</msb>
  </Bits>
</Register>

<parameter name="errors_count">
   <register>
      <!-- /Register@Error/Bits@count exists OK -->
      <name>Error</name>
      <bits>count</name>
   <register>
<parameter> 

<parameter name="seconds">
   <register>
      <!-- /Register@Date/Bits@count doesn't exist INVALID -->
      <name>Date</name>
      <bits>count</name>
   <register>
<parameter>

如何确保给定的寄存器名称和位在XSD中与Register @ name - Bits @ name对具有相同的“Register”标记?

1 个答案:

答案 0 :(得分:0)

似乎XSD无法实现。解决此问题的唯一方法是更改​​XML结构: XSD key/keyref: hierarchical key structure