Detalhes da Árvore MIME

Elementos da Árvore Lógica

Uma mensagem MIME é representada no intermediário como uma árvore lógica nos seguintes elementos:
  • A raiz da árvore é um nó chamado MIME.
  • Todos os cabeçalhos formatados corretamente são armazenados na árvore lógica, independentemente de estarem de acordo com o padrão MIME. Os cabeçalhos aparecem na árvore lógica como name=value, conforme mostrado aqui:
    Content-Type=text/xml
  • Uma mensagem MIME multipartes é representada por uma subárvore com um nó raiz chamado Parts.
  • Os dados iniciais ou finais associados a uma mensagem MIME multipartes são representados por elementos apenas de valor que aparecem como o primeiro e o último filhos de Parts.
  • No caso especial de MIME de parte única, o conteúdo é representado por uma subárvore com a raiz chamada Data.
  • Cada parte de uma mensagem MIME multipartes é representada por um elemento chamado Part com um elemento-filho para cada cabeçalho MIME e por um último filho chamado Data.
  • O elemento Data representa o conteúdo de uma parte MIME. Isso facilita o teste para a presença de conteúdo do corpo utilizando ESQL, porque o elemento Data sempre é o último filho de seu pai.

Gravando Mensagens MIME

Ao gravar uma mensagem, o analisador MIME cria um fluxo de bits de mensagem utilizando a árvore de mensagens lógicas. O domínio MIME não reforça todas as restrições requeridas pela especificação MIME, portanto, ele pode gerar mensagens MIME que não estão de acordo com a especificação MIME. As restrições MIME impostas pelo analisador MIME são:
  • A árvore deve ter uma raiz chamada MIME e os elementos constituintes Parts, Part e Data, conforme descrito em Elementos da Árvore Lógica.
  • Exatamente um cabeçalho Content-Type deve estar presente no nível superior da árvore ou estar disponível por meio da propriedade ContentType. Os subtipos de mídia não são validados.
  • Se o tipo de mídia for multipart, também deverá haver um parâmetro de limite válido.
  • As partes MIME constituintes podem ter exatamente um cabeçalho Content-Type. Se o valor deste cabeçalho começar com multipart, ele também deverá incluir um parâmetro de limite válido. O valor deste parâmetro de limite não deve ser igual aos outros valores de parâmetros de limite na definição.
  • O valor de Tipo de Conteúdo MIME "message" não é suportado e resulta em um erro no tempo de execução.
  • Todos os elementos nome-valor na árvore são gravados como name: value seguidos pela seqüência ASCII <CR><LF>.
Se você tiver outros elementos na árvore, o analisador irá comportar-se da mesma forma que o analisador do cabeçalho HTTP:
  • Um elemento apenas de nome ou um elemento NameValue com um valor NULL resulta em Name: NULL.
  • Os filhos de um elemento nome-valor são ignorados.
O fluxo de mensagens deve serializar subárvores, se elas existirem. Isto pode ser feito utilizando o comando ESQL ASBITSTREAM.
Conceitos relacionados
Analisador e Domínio MIME
Mensagens MIME
Estrutura de Árvore Lógica
Conceitos de Modelagem de Mensagens
Tarefas relacionadas
Manipulando o Conteúdo do Corpo da Mensagem
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ac30090_