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.