MRM メッセージは異なるコード・ページまたはエンコード方式、あるいはその両方に変換することができます。
そのためには、適切な出力 WebSphere MQ ヘッダー内の CodedCharSetId および Encoding フィールドをターゲット値に設定する必要があります。
適切な WebSphere MQ ヘッダーとは、出力メッセージ本文に先行して隣接するヘッダーです。
実行されるデータ変換は、各エレメントの単純タイプに依存します。
- バイナリー・スキーマ・タイプ: base64Binary、hexBinary オブジェクトは変換されません。
- ブール・スキーマ・タイプ: booleanオブジェクトは変換されません。
- 日時スキーマ・タイプ: date、dateTime、gDay、gMonth、gMonthDay、gYear、gYearMonth、time オブジェクトは、バイナリー、ストリング、またはパック 10 進数のいずれかとして扱われます。
dateTime エレメントは、バイナリーとして定義されている場合は、変換されません。
ストリングとして定義されている場合は、これはストリング・エレメントとして変換されます (以下で説明)。
パック 10 進数値として定義されている場合は、これは 「Physical Type (物理タイプ)」が「Packed Decimal (パック 10 進数)」に設定された DECIMAL として変換されます (以下で説明)。
- 「Physical Type (物理タイプ)」が「External Decimal (外部 10 進数)」に
設定された 10 進スキーマ・タイプ: decimal、integer、negativeInteger、nonNegativeInteger、nonPositiveInteger、positiveInteger オブジェクトは、ターゲット CodedCharSetId に変換されます。
他の物理タイプの設定を持つエレメントは、ターゲット Encoding に変換されます。
- 「Physical Type (物理タイプ)」が「External Decimal (外部 10 進数)」に
設定された 浮動小数点スキーマ・タイプ: double、float オブジェクトは、ターゲット CodedCharSetId に変換されます。
他の物理タイプの設定を持つエレメントは、ターゲット Encoding に変換されます。
- 「Physical Type (物理タイプ)」が「External Decimal (外部 10 進数)」に
設定された 整数スキーマ・タイプ: byte、int、long、short、unsignedByte、unsignedInt、unsignedLong、unsignedShort オブジェクトは、ターゲット CodedCharSetId に変換されます。
他の物理タイプの設定を持つエレメントは、ターゲット Encoding に変換されます。
- ストリング・スキーマ・タイプ: すべての URI、期間、ENTITIES、ENTITY、ID、IDREF、IDREFS、言語、Name、NCName、NMTOKEN、NMTOKENS、normalizedString、NOTATION、QName、ストリング、トークン オブジェクトはターゲット CodedCharSetId に変換されます
(「Length Encoded String 2 (長さエンコード 2)」の「Physical Type (物理タイプ)」を
持つオブジェクトの長さは、ターゲット Encoding に変換されます)。