Os documentos da instância XML e Esquemas XML podem utilizar espaços de nomes. Os espaços de nomes fornecem um método para qualificar nomes de artefatos.
Um único documento da instância XML pode obter elementos e atributos que são definidos para e, possivelmente, utilizados por vários aplicativos. Dois elementos ou atributos diferentes no mesmo documento podem requerer o mesmo nome. Aplicativos individuais precisam reconhecer os elementos e os atributos para os quais foram projetados para processar. Em circunstâncias como essa, as definições podem ser diferenciadas umas das outras qualificando cada elemento com um espaço de nomes diferente. Isso evita problemas de conflitos de nomes e de reconhecimento incorreto.
Os Esquemas XML podem definir um espaço de nomes de destino. Os elementos globais, atributos, grupos e tipos definidos em um Esquema XML são qualificados pelo espaço de nomes de destino se ele tiver sido definido. Opcionalmente, os elementos e atributos locais também podem ser qualificados pelo espaço de nomes de destino. Assim, os espaços de nomes ajudam no desenvolvimento de uma biblioteca de Esquemas XML que pode ser desenvolvida de forma independente. O fornecimento do nome do espaço de nomes para um Esquema XML é exclusivo; um desenvolvedor não precisa se preocupar com conflitos de nomes com artefatos definidos em outros Esquemas XML.
O escopo de um espaço de nomes vai além de seu documento de contenção e é identificado por um URI (Uniform Resource Identifier). Para atender à sua finalidade, um URI deve ser exclusivo. Você pode estar mais familiarizado com o conceito de um URL (Universal Resource Locator). URIs geralmente utilizam a mesma sintaxe que os URLs, embora a definição de URI seja mais ampla do que a especificação de um URL. Este é um exemplo de uma URI: http://mycompany.com/xml_schema
Um prefixo de espaço de nomes é declarado como uma abreviação do nome completo da URI e é utilizado para qualificar todos os elementos que pertencem a esse espaço de nomes. O prefixo a ser substituído para um espaço de nomes em um documento de instância XML ou Esquema XML é especificado utilizando um atributo xmlns.Um espaço de nomes padrão também pode ser definido utilizando um atributo xmlns.Se um espaço de nomes padrão estiver definido, qualquer elemento ou atributo sem prefixo será qualificado com o espaço de nomes padrão. Se nenhum espaço de nomes padrão estiver definido, qualquer elemento ou atributo sem prefixo não será qualificado por um espaço de nomes.
Um único conjunto de mensagens que possui espaços de nomes ativados pode conter vários espaços de nomes diferentes. Cada espaço de nomes é representado por um Arquivo de Definição de Mensagens diferente. Ao criar um Arquivo de Definição de Mensagens, você pode escolher se ele deve ter um espaço de nomes associado ou se deve estar no espaço de nomes notarget.Se escolher associar um espaço de nomes a um Arquivo de Definição de Mensagens, também será necessário escolher um prefixo.
Se o Arquivo de Definição de Mensagens tiver um espaço de nomes associado, os seguintes artefatos globais serão qualificados com o espaço de nomes:
Opcionalmente, os elementos e atributos locais podem ser qualificados com o espaço de nomes.
Os artefatos definidos em um Arquivo de Definição de Mensagens podem fazer referência a artefatos em outros Arquivos de Definição de Mensagens no mesmo conjunto de mensagens. Isso é obtido importando ou incluindo um Arquivo de Definição de Mensagens em outro.
Se estiver utilizando e seu conjunto de mensagens tiver espaços de nomes ativados, o Intermediário não armazenará os valores de nenhum atributo xmlns na árvore ao analisar um documento de instância XML. Também não armazenará os valores de nenhum dos atributos Local de Esquema e Nenhum Local de Esquema do Espaço de Nomes. Isso ocorre porque, quando um documento XML é gravado, o Intermediário gera novamente estas informações a partir das propriedades do Formato de Ligação XML do conjunto de mensagens.
Se estiver utilizando , os pares de prefixo/URI da tabela de Espaço de Nomes serão utilizados pelo Domínio MRM quando estiver exibindo a mensagem XML. Os elementos e atributos que estão qualificados por um espaço de nomes são prefixados com o prefixo correspondente a partir da tabela. O Intermediário também gerencia a saída dos atributos xmlns correspondentes que mapeiam os prefixos para os espaços de nomes. Você pode escolher se os atributos xmlns para todas as entradas na tabela de prefixo/URI do Espaço de Nomes são exibidos no início do documento ou se eles são apenas exibidos no documento, quando necessário.
Se os espaços de nomes estiverem ativados para um Conjunto de Mensagens, no Formato de Ligação XML haverá uma tabela de localizações de esquemas que mapeiam URIs de espaço de nomes para nomes de arquivos. Você pode incluir entradas nesta tabela e também pode mapear um nome de arquivo para o espaço de nomes notarget. Se você estiver utilizando , esta tabela será utilizada para exibir os atributos schemaLocation e Nenhum Local de Esquema do Espaço de Nomes no início do documento XML.
Se estiver utilizando o formato XML no domínio MRM, os elementos ou os atributos serão correspondidos com base no espaço de nomes no dicionário quando a mensagem analisada for comparada com o dicionário gerado a partir do modelo de mensagens. Assim, para que um elemento ou atributo em uma mensagem corresponda ao dicionário, seu nome e o espaço de nomes devem corresponder.
Se estiver utilizando , o suporte será fornecido para permitir a especificação de espaços de nomes ao gravar ESQL. Não será necessário gravar ESQL que reconhece espaço de nomes, se você não estiver utilizando espaços de nomes. No entanto, se decidir utilizar espaços de nomes, seus arquivos de definição de mensagens poderão direcionar qualquer espaço de nomes escolhido e será necessário gravar ESQL que reconheça espaços de nomes. O espaço de nomes no qual um elemento reside está armazenado na árvore de mensagens quando analisado. Essa é uma propriedade lógica e é mantida independente do formato de ligação físico no qual as mensagens são analisadas e gravadas. Uma nova sintaxe foi adicionada ao ESQL para facilitar sua referência a espaços de nomes de elementos utilizando prefixos definidos.
No entanto, se os espaços de nomes estiverem desativados para o conjunto de mensagens, o Arquivo de Definição de Mensagens criado estará no espaço de nomesnotarget, independentemente do espaço de nomes de destino do arquivo de Esquema XML que está sendo importado. Esse tipo de importação não fornece suporte completo a espaços de nomes. A ação do importador nessa instância é descrita com detalhes adicionais no tópico de conceito Importando a partir de Esquema XML. Se estiver utilizando o , não será necessário gravar ESQL de espaço de nomes para processar uma mensagem XML analisada no dicionário gerado a partir desse modelo de mensagem.
Conceitos Relacionados
Formato de Ligação XML
Tarefas Relacionadas
Criando um Projeto de Conjunto de Mensagem
Criando um Conjunto de Mensagem
Incluindo um Formato de Ligação XML
Criando um Arquivo de Definição de Mensagem
Configurando as Propriedades do Formato de Ligação XML: Objetos do Modelo de Mensagem
Importando a partir de DTD XML
Referência Relacionada
ESQL
Formatos de Importação
Propriedades Físicas do Formato de Ligação XML para os Objetos de Modelo de Mensagem
Avisos |
Marcas |
Downloads |
Biblioteca |
Suporte |
Feedback
![]() ![]() |
ad00820_ |