WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Importación de C (DFDL): características soportadas

El importador C utiliza valores predeterminados al correlacionar tipos de datos C con elementos de modelo de mensaje.

La tabla siguiente muestra cómo influyen las definiciones C en los valores de esquema XML del modelo de mensaje. Algunos tipos xsd están entre corchetes (< >). Los corchetes indican un tipo simple anónimo basado en este tipo. Para las series, la finalidad del tipo anónimo es añadir una restricción de longitud máxima. Para los tipos numéricos, la finalidad del tipo anónimo es añadir una restricción de valor mínimo o máximo.

Tipo de datos C Tipo de esquema XML Notas
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  
<cualquier tipo de puntero> xsd:hexBinary  
<cualquier enum>   (vea la nota 1)

La tabla siguiente muestra cómo influyen las definiciones C en las propiedades DFDL de los elementos que se generan en el modelo de mensaje.

Tipo de datos C Propiedades DFDL
char Longitud = 1

Unidades de longitud = bytes

char[10] Longitud = 10

Unidades de longitud = bytes

Justificación de serie = izquierda

char[10][3] Longitud = 3

(y Máx apariciones = 10)

Unidades de longitud = bytes

Justificación de serie = izquierda

char[10][3][6] Longitud =6

(y Máx apariciones = 30)

Unidades de longitud = bytes

Justificación de serie = izquierda

unsigned char Longitud = 1

Unidades de longitud = bytes

unsigned char[2] Longitud = 1

(y Máx apariciones = 2)

Unidades de longitud = bytes

signed char Longitud = 1

Unidades de longitud = bytes

signed char[2] Longitud = 1

(y Máx apariciones = 2)

Unidades de longitud = bytes

int Longitud = 4

Unidades de longitud = bytes

int[2] Longitud = 4

(y Máx apariciones = 2)

Unidades de longitud = bytes

int[2][3] Longitud = 4

(y Máx apariciones = 6)

Unidades de longitud = bytes

unsigned int Longitud = 4

Unidades de longitud = bytes

short Longitud = 2

Unidades de longitud = bytes

unsigned short Longitud = 2

Unidades de longitud = bytes

  • long
  • long int
Longitud = 4 (vea la nota 2)

Unidades de longitud = bytes

  • unsigned long
  • unsigned long int
Longitud = 4 (vea la nota 2)

Unidades de longitud = bytes

  • long long
  • long long int
Longitud = 8

Unidades de longitud = bytes

  • unsigned long long
  • unsigned long long int
Longitud=8

Unidades de longitud = bytes

float Longitud = 4

Unidades de longitud = bytes

double Longitud = 8

Unidades de longitud = bytes

long double Longitud = 8

Unidades de longitud = bytes

<cualquier tipo de puntero> Longitud = 4

Unidades de longitud = bytes

<cualquier enum> (vea la nota 1)
Notas:
  1. El tipo y la longitud de una enum (enumeración) se ven afectados por la opción de importador C Tamaño de enum (enumeración):
    • Para 1: Tipo lógico = xsd:byte, dfdl:length = 1 byte.
    • Para 2: Tipo lógico = xsd:short, dfdl:length = 2 bytes.
    • Para 4: Tipo lógico = xsd:int, dfdl:length = 4 bytes.
    • Para Condensada: Se elige la representación más pequeña en la que cabe la enumeración.
  2. La longitud de puntero se ve afectada por las opciones C Tamaño de direcciones:
    • Para 32 bits: dfdl:length = 4 bytes.
    • Para 64 bits: dfdl:length = 8 bytes.
  3. Los nombres de elemento que están en conflicto con las palabras clave de lenguaje Java™ se modifican poniendo un carácter de subrayado individual como prefijo.
  4. No se soporta la palabra clave _Packed. Sólo se soportan las declaraciones C ANSI.
  5. No se da soporte a int long de 128 bits (16 bytes).
  6. No se soportan extensiones orientadas a objetos C++. Sólo se soportan las declaraciones C ANSI.
  7. No se soportan las estructuras C recurrentes. Si una estructura anidada contiene una estructura con el mismo nombre que la estructura padre, la importación se realiza satisfactoriamente pero las definiciones lógicas no son correctas. Para evitar este problema, asegúrese de que la estructura anidada y la estructura externa o padre tienen nombres distintos.
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

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

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:01:09


Tema de referenciaTema de referencia | Versión 8.0.0.5 | bd34063_