Compare o exemplo misto
O exemplo inicial funciona como objetos compactos. O misto mostra um erro nesse modo; mude para conteúdo ordenado e confira os nós de content antes de enviar a estrutura ao consumidor.
Ferramentas JSON
Compare o exemplo de itens repetidos com o exemplo de texto misturado a elementos.
Processamento neste navegador. A entrada não é enviada nem armazenada.
Atributos e nomes qualificados são mantidos. Os valores continuam strings.
Resultado desatualizado; exportação desativada.
XML para JSON ajuda a aproveitar uma resposta XML em um script ou serviço que espera objetos. Mas uma tag não informa se 001 é um número ou um identificador, nem se um filho único deve ser uma lista.
Este conversor oferece dois modelos ao converter XML para JSON: objetos compactos para registros e conteúdo ordenado para documentos. A escolha precisa combinar com o formato aceito pelo sistema de destino.
XML para JSON agrupa filhos adjacentes com o mesmo nome em arrays. Ative a opção de arrays para todos os filhos quando o consumidor espera uma lista mesmo com um item. A raiz continua uma propriedade externa.
O modelo compacto recusa texto misto e sequências a,b,a. O modo ordenado coloca texto e elementos no mesmo array content, sem reorganizar silenciosamente as posições para agrupar nomes.
O exemplo inicial funciona como objetos compactos. O misto mostra um erro nesse modo; mude para conteúdo ordenado e confira os nós de content antes de enviar a estrutura ao consumidor.
O texto de folhas nunca passa por trim. Por padrão só se omitem espaços de formatação entre elementos. xml:space="preserve" é herdado e tem prioridade; manter todos os espaços pode exigir o modelo ordenado.
A conversão automática aguarda 350 ms. Desative-a para usar Converter ou Ctrl/Cmd+Enter. Alterar entrada ou opções bloqueia imediatamente a cópia e o download do resultado antigo até uma nova conversão bem-sucedida.
No modelo compacto, @id é um atributo e #text guarda o texto de uma folha com atributos. Prefixos e declarações xmlns são mantidos. Elementos ordenados também exibem o namespaceURI resolvido.
O conteúdo ordenado distingue elementos, texto, CDATA, comentários e instruções de processamento. A declaração XML fica em metadados separados. O compacto une valores CDATA ao texto, mas recusa comentários e instruções.
001, 12.00, true e inteiros grandes permanecem strings. Elementos vazios viram strings vazias no modo compacto. Não se inferem números, booleanos ou null sem um esquema que defina o significado de cada campo.
Não exatamente. XML para JSON preserva os valores analisados e, no modo ordenado, os tipos e a ordem dos nós. Aspas, referências de caracteres e certas formas de espaço são normalizadas pelo XML, portanto não é um arquivo da escrita original.
No modo compacto os atributos recebem @ antes do nome. A folha com atributos usa #text para seu texto. No modo ordenado, attributes contém os nomes qualificados e valores. Um filho de mesmo nome não sobrescreve o atributo.
São aceitos até 500.000 caracteres, contados como texto. Há também limites de profundidade, nós e saída gerada. Este conversor XML para JSON online pode recusar um documento pequeno, mas muito profundo antes de atingir o limite de entrada.
O modo compacto incorpora o valor CDATA ao texto comum. No conteúdo ordenado, cada seção permanece um nó do tipo cdata. Assim você consegue distinguir a seção sem prometer recuperar as mesmas aspas ou bytes do arquivo.
Não. Um documento XML precisa de uma única raiz. Vários elementos de topo causam erro de sintaxe. Defina por conta própria um contêiner adequado ao seu contrato; a ferramenta não junta documentos nem inventa uma raiz.
Ficou alguma dúvida?
Use XML para JSON para revisar atributos e listas do exemplo e escolher um modelo aceito pela aplicação de destino.