2

これを解決する必要があり、助けが必要なようです。

ここに問題の定義があります

既存のスキーマ X [X は業界標準のスキーマ] があり、新しいスキーマ Y (別のターゲット名前空間) でいくつかの拡張機能を構築しています。

ここでの問題は、スキーマ Y の要素/属性の使用を、X の定義済みの要素/型のメンバーとしてのみに制限したいことです。[無効な使用の場合、スキーマの検証は失敗するはずです]。

どうすればこれを達成できますか? これを行う最善の方法は何ですか?

RM

4

1 に答える 1

0

変更する量とスキーマがどのように見えるかによって異なります。1 つの側面は、拡張機能がルートまたはリーフの近くにあるかどうかです。

ルート付近の一般的なアプローチを次に示します。

X.xsd
element name=foo type=fooType

complexType fooType
  sequence
     element name=bar type=BarType

Y.xsd
import X.xsd namespace=xns

element name=foo type=foo2Type

complexType foo2Type
  sequence
     element name=bar type=xns:BarType
     element name=baz type=BazType

ここでは、独自の定義の新しい要素 baz を追加しましたが、bar には業界標準で必要なすべての子要素が含まれます。

X を Y にインポートします ( import 要素を使用)。

于 2011-02-03T04:10:03.377 に答える