Suporte a Espaço de Nomes de Analisadores XML
Os espaços de nomes nas mensagens XML são suportados pelos analisadores XMLNSC e XMLNS. Os espaços de nomes não são suportados pelo analisador XML.
Analisando
Os analisadores XMLNS e XMLNSC podem analisar qualquer documento XML bem-formado, independentemente de o documento conter, ou não, os espaços de nomes. Se os elementos ou os atributos tiverem espaços de nomes, esses espaços de nomes serão aplicados aos elementos e aos atributos na árvore de mensagens. Os mapeamentos de prefixo de espaço de nomes também são transportados na árvore de mensagens e são utilizados ao serializar a árvore de mensagens de volta para XML.
- Se um elemento ou um atributo no XML de entrada tiver um espaço de nomes, o nó correspondente da árvore de mensagens também terá esse espaço de nomes.
- Se um elemento contiver uma declaração de espaço de nomes (um atributo xmlns), um elemento filho que contém seu prefixo e a URI de espaço de nomes será criado na árvore de mensagens.
Enquanto a mensagem está passando por um fluxo de mensagens, os namespaces e os mapeamentos de namespace podem ser modificados usando o ESQL ou qualquer outra tecnologia de transformação oferecida pelo IBM® App Connect Enterprise.
Gravando
Os espaços de nomes e seus prefixos são preservados na árvore de mensagens na análise e são usados quando os analisadores XMLNS e XMLNSC converterem uma árvore de mensagens em um fluxo de bits XML.
- Ao serializar uma árvore de mensagens, o analisador varre as declarações de espaço de nomes em cada elemento XML. Se alguma for localizada, ela será utilizada para selecionar os prefixos de espaço de nomes no documento de saída.
- Se um elemento na árvore de mensagens tiver um espaço de nomes, mas não houver uma declaração de espaço de nomes no escopo para sua URI de espaço de nomes, um prefixo de espaço de nomes válido será automaticamente gerado e utilizado no XML de saída. Os prefixos gerados automaticamente possuem o formato NS1, NS2 e assim por diante.