XML スキーマの生成の動作。 例えば、メッセージ定義ファイルから生成されたスキーマを使用して、WebSphere® Message Broker が作成する XML インスタンス文書を妥当性検査します。
緩い生成は、「内容の妥当性検査」を 「オープン」または「オープン定義」に設定する複合タイプ、 または「構成」を「UnorderedSet」 に設定する複合タイプが、どのように生成されるスキーマで表現されるかに影響を与えます。 そうした妥当性検査スキーマは、 MRM パーサーの妥当性検査より広範囲のメッセージを許可する点に注意してください。
<element name="xmlNameOfMessage">
<complexType>
<sequence>
<any processContent="lax"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
「内容の妥当性検査」が「オープン定義」に設定されている場合、以下のパターンが使用されます。 (ここでリストされるネーム・スペースはすべて、それらを含むメッセージ・セットで定義されているものです。)
<element name="xmlNameOfMessage">
<complexType>
<sequence>
<any processContent="lax"
minOccurs="0" maxOccurs="unbounded"
namespace="http://www.ns1 http://www.ns2" />
</sequence>
</complexType>
</element>
<element name="xmlNameOfMessage">
<complexType>
<sequence maxOccurs="unbounded"
minOccurs= "(minOccurs of original sequence) *
(items in original sequence)">
<choice>
.. sequence contents ..
</choice>
</sequence>
</complexType>
</element>
厳密な生成は、「内容の妥当性検査」を 「オープン」または「オープン定義」に設定する複合タイプ、 または「構成」を「UnorderedSet」 に設定する複合タイプが、どのように生成されるスキーマで表現されるかに影響を与えます。 そうした妥当性検査スキーマは、 MRM パーサーの妥当性検査より狭い範囲のメッセージを許可する点に注意してください。
厳密はデフォルトの生成オプションであり、モデルの拡張をせずに、 メッセージ定義ファイルに保持されているスキーマと一致するスキーマを生成します。
XML 物理形式がスキーマ生成時に指定された場合、 ワイヤー形式カスタマイズが論理モデルに適用されます。 これらのプロパティーは、モデル内のエレメントが XML ワイヤー形式に対するメッセージ内に表示される時にどのようにレンダーされるかを制御します。 使用可能な別のレンダー・オプションについては、メッセージ・セット: XML レンダリング・オプションを参照してください。 生成されるスキーマの例が次にあり、 ローカル・エレメント用に使用可能な様々なレンダー・オプションに対して何が生成されるかが示されています。 これらの例では、ID 属性名または値属性名プロパティーのネーム・スペースを変更しない点に注意してください。また、complexType1 で指定されるすべての エレメントが、スキーマ組み込みのタイプ・ストリングであると想定します。
<xsd:complexType name="complexType1">
<xsd:sequence>
<!-- Local element Render = 'XMLElement' -->
<xsd:element name="localElement1" type="xsd:string"/>
<!-- Local element Render = 'XMLElementAttrID'
ID Attribute Name = 'id' -->
<xsd:element name="localElement2">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="id" type="xsd:string"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<!-- Local element Render = 'XMLElementAttrVal'
Val Attribute Name = 'val' -->
<xsd:element name="localElement3">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="val" type="xsd:string"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<!-- Local element Render = 'XMLElementAttrIDVal'
ID Attribute Name = 'id' Val Attribute Name = 'val' -->
<xsd:element name="localElement4">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="val" type="xsd:string"/>
<xsd:attribute name="id" type="xsd:string"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<!-- Local element Render = 'XMLAttribute' -->
<xsd:attribute name="localElement5" type="xsd:string"/>
</xsd:complexType>
xsd:Attributes のレンダリングはサポートされていません。 ユーザーは属性の名前のみを変更できます。
これらは、メッセージ・セットが WebSphere MQ Integrator Broker バージョン 2.1 を使用して作成された場合にのみ検出される、推奨されないオブジェクトです。
それらは、minOccurs および maxOccurs の両方が 0 に設定され、かつ事前定義された ComIbmMrm_xxx タイプの 1 つを持つエレメントとして、メッセージ定義ファイル内にモデル化されます。 スキーマの生成時に、そうしたエレメントのタイプは、 それぞれの ComIbmMrm_xxx タイプの基本タイプに変更されます。
それらの ComIbmMrm_xxx タイプの 1 つから継承するグローバル単純タイプがある場合、 それらのグローバル単純タイプは、 対応する ComIbmMrm_xxx タイプの基本タイプから継承するように変更されます。
生成されるスキーマ・ファイルには、それらの ComIbmMrm_xxx タイプは出現しません。
例えば、次のようにタイプが定義されたグローバル・エレメントがあるとします。
<element name="globalElement1" type="ns1:ComIbmMrm_BaseValueBinary"/>
この結果として、スキーマ・ファイルおよび次のように定義された対応する xsd 基本タイプを持つ グローバル・エレメントが生成されます。
<element name="globalElement1" type="hexBinary"/>