Elementos de casting em um mapa de mensagens
No editor de Mapeamento de Dados Gráficos, use a função Cast para redefinir partes da entrada ou do modelo de saída em um mapa de mensagens. Essa função também é conhecida como um mapping cast.
Sobre esta tarefa
Para criar um modelo de mensagem flexível, é possível definir elementos em seu esquema XML como curingas, ou é possível fornecer uma extensão ou tipo derivado de um tipo base. Em um esquema JSON, é possível usar as palavras-chave "oneOf" ou "anyOf" para permitir flexibilidade.
Um curinga é um elemento em seu esquema XML que é definido como xsd:any, xsd:anyType ou xsd:anySimpleType.
Um esquema de modelo de mensagem pode conter um ou mais curingas. Além disso, o modelo para o Ambiente do conjunto da mensagem, Ambiente local, pastas de cabeçalhos de transporte e mensagens de domínio SOAP e JSON, inclui curingas, como na pasta Variables do ambiente, que permite definir dados especificamente para a operação do fluxo.
No editor de Mapeamento de Dados Gráficos, é possível redefinir esses curingas usando a função Cast para selecionar um elemento ou tipo que é definido em um modelo de mensagem, como um esquema XML, esquema DFDL, esquema JSON ou o documento Swagger. Para obter mais informações, consulte Casting um curinga definido como xsd: any em um tipo específico para uma mensagem SOAP e Configurando um tipo genérico na árvore de ambientes locais usando a função Cast.
Se você não tiver um modelo de mensagem que forneça um elemento adequado para cast, considere incluir um elemento definido pelo usuário, conforme descrito em Definindo elementos definidos pelo usuário. Quando você tiver incluído um elemento definido pelo usuário, será possível configurar seu tipo a partir de um tipo global em seu modelo de mensagens, conforme descrito em Definindo a estrutura de um elemento complexo definido pelo usuário
- xsd:any
- Todos os elementos globais definidos nos modelos de mensagem que estão contidos no mesmo aplicativo ou biblioteca referenciada e que são, portanto, visíveis para o mapa. Isso inclui elementos de XML, DFDL e objetos e matrizes de nível superior no esquema JSON.
- xsd:anyType
- Todos os tipos globais definidos nos modelos de mensagens que estão contidos no mesmo aplicativo ou biblioteca referenciada e que são, portanto, visíveis para o mapa. Isso inclui tipos globais de XML, DFDL e os tipos definidos para objetos e matrizes de nível superior no esquema JSON.
- xsd:anySimpleType
- Todos os tipos XML padrão e quaisquer extensões de tipo global para tipos simples XML definidos nos modelos de mensagem XML que estão contidos no mesmo aplicativo ou biblioteca referenciada e que são, portanto, visíveis para o mapa.
- <namespace>:<base XML schema type>
- Todos os tipos XML que são definidos como extensões ou derivados desse tipo de esquema XML.
- Tipo JSON definido com
"oneOf"ou"anyOf" - Os tipos JSON definidos na matriz
"oneOf"ou"anyOf".
É possível usar a função Cast para redefinir um curinga ou tipo base várias vezes. Cada tipo que você efetua cast aparece sob o curinga ou o tipo base em um grupo de opções.
Para definir transformações entre subtipos de um tipo de dados XML, é possível usar extensão ou tipos derivados. Um tipo derivado é um tipo de dados relacionado a um outro tipo de dados conhecido como o tipo de base ou supertipo. É possível efetuar cast de um tipo de base para um tipo derivado usando a função Cast. Para obter mais informações, consulte Casting um tipo de base de esquema XML para um tipo derivado ou tipo de extensão.
Quando a mensagem de entrada ou a mensagem de saída for o objeto de domínio JSON ou a mensagem de matriz de domínio JSON fornecidos pela IBM, será possível redefinir o elemento Dados que é do tipo anyType usando a função Cast. Para obter mais informações, consulte Modelando uma mensagem JSON a ser usada em um mapa de mensagem usando um modelo de esquema XML equivalente
Também é possível usar as palavras-chave "oneOf" e "anyOf" do esquema JSON, para estruturar e combinar esquemas JSON mais complexos. Para obter mais informações, consulte Casting com tipos de esquema JSON e Requisitos de esquema JSON para mapas de mensagens
Procedimento
Para redefinir um elemento em seu modelo de entrada ou saída usando a função Cast, conclua as seguintes etapas:
Resultados
Após usar a função Cast para qualificar o tipo do elemento que é definido com um curinga, o tipo aparecerá abaixo do curinga. É possível definir transformações entre a mensagem de entrada e a mensagem de saída. Para obter mais informações, consulte Especificando uma transformação (operação de mapeamento).
