WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

C (DFDL) からのインポート: サポートされるフィーチャー

C データ・タイプをメッセージ・モデル・エレメントにマップするときに、 C インポーターはデフォルト値を使用します。

以下の表は、C 定義がメッセージ・モデル内の XML スキーマ設定値にどのような影響を与えるかを示しています。 一部の xsd タイプは、不等号括弧 (< >) で囲まれます。 これらの括弧は、このタイプに基づく無名の単純タイプであることを示しています。 ストリングの場合、無名タイプの目的は、最大長の制限を追加することです。 数値タイプの場合、無名タイプの目的は、最小値または最大値のいずれかの制限を追加することです。

C データ・タイプ XML スキーマ・タイプ
char <xsd:string> maxlength=1
char[10] <xsd:string> maxlength=10
char[10][3] <xsd:string>

maxlength=3
maxOccurs=10

char[10][3][6] <xsd:string>

maxlength=6
maxOccurs=30

unsigned char xsd:unsignedByte  
unsigned char[2] xsd:unsignedByte maxOccurs=2
signed char xsd:byte  
signed char[2] xsd:byte maxOccurs=2
int xsd:int  
int[2] xsd:int maxOccurs=2
int[2][3] xsd:int maxOccurs=6
unsigned int xsd:unsignedInt  
short xsd:short  
unsigned short xsd:unsignedShort  
  • long
  • long int
xsd:int  
  • unsigned long
  • unsigned long int
xsd:unsignedInt  
  • long long
  • long long int
xsd:long  
  • unsigned long long
  • unsigned long long int
xsd:unsignedLong  
float xsd:float  
double xsd:double  
long double xsd:double  
<任意のポインター型> xsd:hexBinary  
<any enum>   (注 1 を参照)

以下の表は、メッセージ・モデル内で生成されるエレメントの DFDL プロパティーに C 定義がどのように影響するかを示しています。

C データ・タイプ DFDL プロパティー
char 長さ = 1

長さの単位 = バイト

char[10] 長さ = 10

長さの単位 = バイト

ストリング位置調整 = 左

char[10][3] 長さ = 3

および、最大数 (Max Occurs) = 10

長さの単位 = バイト

ストリング位置調整 = 左

char[10][3][6] 長さ =6

および、最大数 (Max Occurs) = 30

長さの単位 = バイト

ストリング位置調整 = 左

unsigned char 長さ = 1

長さの単位 = バイト

unsigned char[2] 長さ = 1

および、最大数 (Max Occurs) = 2

長さの単位 = バイト

signed char 長さ = 1

長さの単位 = バイト

signed char[2] 長さ = 1

および、最大数 (Max Occurs) = 2

長さの単位 = バイト

int 長さ = 4

長さの単位 = バイト

int[2] 長さ = 4

および、最大数 (Max Occurs) = 2

長さの単位 = バイト

int[2][3] 長さ = 4

および、最大数 (Max Occurs) = 6

長さの単位 = バイト

unsigned int 長さ = 4

長さの単位 = バイト

short 長さ = 2

長さの単位 = バイト

unsigned short 長さ = 2

長さの単位 = バイト

  • long
  • long int
長さ = 4 (注 2 を参照)

長さの単位 = バイト

  • unsigned long
  • unsigned long int
長さ = 4 (注 2 を参照)

長さの単位 = バイト

  • long long
  • long long int
長さ (Length) = 8

長さの単位 = バイト

  • unsigned long long
  • unsigned long long int
長さ = 8

長さの単位 = バイト

float 長さ = 4

長さの単位 = バイト

double 長さ (Length) = 8

長さの単位 = バイト

long double 長さ (Length) = 8

長さの単位 = バイト

<任意のポインター型> 長さ = 4

長さの単位 = バイト

<any enum> (注 1 を参照)
注:
  1. 列挙のタイプおよび長さは、「列挙のサイズ」 C インポーター・オプションの影響を受けます。
    • 1 の場合: 論理タイプ = xsd:byte、dfdl:length = 1 バイト。
    • 2 の場合: 論理タイプ = xsd:short、dfdl:length = 2 バイト。
    • 4 の場合: 論理タイプ = xsd:int、dfdl:length = 4 バイト。
    • Compact の場合 : 列挙が適合する最小の表現が選択されます。
  2. ポインターの長さは、「アドレス・サイズ」C オプションの影響を受けます。
    • 32 ビットの場合: dfdl:length = 4 バイト。
    • 64 ビットの場合: dfdl:length = 8 バイト。
  3. Java™ 言語 キーワードと競合するエレメント名は、単一下線文字の接頭部を付けることによって変更されます。
  4. _Packed キーワードはサポートされません。 ANSI C 宣言のみがサポートされています。
  5. 128 ビット (16 バイト) 長整数はサポートされません。
  6. C++ オブジェクト指向の拡張子はサポートされません。 ANSI C 宣言のみがサポートされています。
  7. 再帰的 C 構造はサポートされません。 ネスト構造に親構造と同じ名前を持つ構造が含まれている場合、インポートは正常に実行されますが、論理定義は正しくありません。 この問題を避けるには、ネスト構造と、外部構造または親構造が同じ名前にならないようにします。
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:48:55


参照トピック参照トピック | バージョン 8.0.0.5 | bd34063_