0

こんにちは、次のようなものを定義できるようにしたいです。

<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>
4

1 に答える 1

3

あえて説明しない歴史的な理由から、混合コンテンツを持つ 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 インフラストラクチャでより適切に機能する 2 番目の設計にフォールバックすることです。

于 2012-12-19T20:03:14.530 に答える