ユニオン メカニズムを使用した単純型の派生
ユニオン メカニズムを使用して既存の単純型から新しい単純型を派生させる場合、一連の型を指定することにより、対応する属性または要素の値に対し、複数の型を割り当てることができます。 たとえば、1 つの属性または要素に対して、日付、時刻、日付/時刻のすべての型を割り当てることができます。
ユニオン メカニズムを使用して新しい単純型を派生させる方法の概要については、W3C Web サイトを参照してください。 この Web サイトや他の Web サイトへのさまざまなリンクについては、「 XSD Resources on the Web」を参照してください。
単純型を複数の可能な型の和集合として派生するには、スキーマ ツリーで関連する [フィールド要素] ノードまたは [フィールド属性] ノードを選択し、プロパティ ウィンドウの [基本データ型] プロパティのドロップダウン リストから単純型を選択します。 このプロパティの値を選択するとすぐに、 Derived By プロパティは既定値から Restriction に自動的に変更されます。これは、型派生の既定値として機能します。 派生プロパティを Restriction から Union に変更する必要があります。これにより、基本データ型プロパティの名前が Member Types プロパティとして変更されます (プロパティのアルファベット順の並べ替えにより、名前が変更されたプロパティはプロパティ リスト内の別の位置に移動します)。
最後に、[メンバーの種類] ドロップダウン チェックリストの [チェック] ボックスを使用して、インスタンス メッセージ内の対応する値を許可する追加の型を選択できます。
最初に Field Element ノードまたは Field Attribute ノードをデータ型から基本データ型に変更し (これにより単純型派生のプロセスを開始する)、Derived By プロパティを Union に設定すると、XSD ビューの対応するフラグメントで次の変更を確認できます。
以前は、DatesAndOrTimes という名前の新しく挿入された Field Element ノードを使用します。
<xs:element name="ContainingRecord"> <xs:complexType> <xs:sequence> </xs:sequence> </xs:complexType> </xs:element>
基本データ型プロパティを xs:date に設定し、Derived By プロパティを Union に設定した後 (その後、基本データ型プロパティの名前が Member Types プロパティに変更されます)、[メンバーの種類] ドロップダウン チェックリストで追加の許可される型として xs:datetime と xs:time を選択します。
<xs:element name="ContainingRecord"> <xs:complexType> <xs:sequence> </xs:sequence> </xs:complexType> </xs:element>