XML-Mapping

Converter dados XML

  • Mapeamento por arrastar e soltar entre componentes
  • Suporta modelos de conteúdo XML Schema e DTD
  • Gera um esquema XML a partir de um documento de exemplo
  • Bibliotecas XSLT 1.0/2.0/3.0 e funções de processamento de dados
  • Suporte para assinaturas digitais em XML
  • Suporte para curingas XML (xs:any e xs:anyAttribute)
  • Suporte para comentários e instruções de processamento
  • Converter XML com XSLT

Criando um mapeamento XML

O MapForce oferece suporte a mapeamentos XML baseados em modelos de conteúdo XML Schema ou DTD. Para criar um mapeamento XML, basta carregar dois ou mais schemas no MapForce e arrastar linhas de conexão entre os nós da fonte e do destino. O suporte a conteúdo misto permite até mesmo mapear dados de texto que estão intercalados com XML.

Se você não tiver um esquema associado para um documento de instância XML, o MapForce gera automaticamente um esquema XML a partir desse documento.

Mapeamento XML com MapForce

O MapForce oferece suporte a transformações XML avançadas entre múltiplos esquemas de entrada e saída, múltiplos arquivos de origem e/ou destino, ou transformações avançadas de dados em várias etapas (de um esquema para outro, e assim por diante)

Depois de definir as regras de mapeamento XML e de processamento de dados, você pode carregar um arquivo de origem, e o mecanismo de execução integrado do MapForce converterá instantaneamente os dados para o novo formato.

O MapForce também gera automaticamente folhas de estilo XSLT 1.0, XSLT 2.0 ou XSLT 3.0 para serem usadas na transformação de dados em vários documentos XML, com base no esquema de origem, para que estejam em conformidade com o esquema XML de destino.

Aprenda como converter XML para XML e para outros formatos no MapForce

Além do mapeamento XML, o MapForce oferece suporte a: mapeamento de qualquer combinação de XML, JSON, PDF, bancos de dados, EDI, XBRL, arquivos de texto simples, Excel, Protobuf e/ou dados de serviços web, para construir aplicações de integração de dados ou serviços web.

Visualização da saída do mapeamento XML

Ao criar um projeto de mapeamento XML, o motor MapForce integrado permite visualizar e salvar o código XSLT 1.0, XSLT 2.0, XSLT 3.0 ou XQuery gerado automaticamente com apenas um clique. Você também pode clicar na aba "Saída" para visualizar o resultado real gerado pelo seu mapeamento XML.

A captura de tela abaixo mostra a saída em XML e a folha de estilo XSLT 2.0 gerada para o mapeamento XML ilustrado acima.

Saída do mapeamento XML do MapForce

Mapeamento XML com Assinaturas Digitais

As assinaturas digitais são uma especificação da W3C que permite assinar digitalmente um documento XML com um código criptografado, que pode ser usado para verificar se o documento XML não foi alterado. O recurso de assinatura XML no MapForce suporta apenas certificados dos tipos RSA-SHA1 e DSA-SHA1.

O MapForce permite a criação de assinaturas digitais em formato XML para arquivos de saída XML e XBRL. Uma assinatura é criada para o arquivo de resultado gerado quando o botão de saída é pressionado, e o arquivo de resultado com a assinatura pode ser salvo.

As assinaturas digitais podem ser incorporadas como o último elemento do documento final ou armazenadas em um arquivo de assinatura separado.

  • Se a opção "Envolvido" for selecionada, então a assinatura é o último elemento filho abaixo do elemento raiz do arquivo XML.
  • Se a opção "Separado" for selecionada, o arquivo de assinatura será gerado como um documento independente.

A imagem à direita mostra uma assinatura digital no final do arquivo de resultados, gerada utilizando a opção de "envolvimento" (ou "assinatura envolvente").

Mapeamento XML com MapForce e assinaturas digitais

Validade de um documento XML

Se uma assinatura XML estiver incorporada no documento XML, um elemento "Signature" no namespace http://www.w3.org/2000/09/xmldsig# será adicionado ao documento XML. Para que o documento permaneça válido de acordo com um esquema, o esquema deve conter as declarações de elementos apropriadas. Se você não desejar modificar o esquema do documento XML, a assinatura XML pode ser criada em um arquivo externo, utilizando a opção "Desanexada".

Suporte para caracteres curinga em XML

O elemento `<xs:any>` e o elemento `<xs:anyAttribute>` em um esquema XML permitem que qualquer novo elemento ou atributo seja colocado na posição correspondente em um documento XML, mesmo que o novo elemento ou atributo não esteja definido no esquema XML. Isso é conhecido como um "caractere curinga" em XML e é um mecanismo popular usado para permitir um certo grau de personalização em muitos esquemas XML que suportam padrões da indústria em uma ampla variedade de empresas.

O MapForce suporta os elementos `<xs:any>` e `<xs:anyAttribute>` para mapear dados para a saída em XML ou em qualquer outro formato. Um botão de seleção, localizado ao lado de `<xs:any>` ou `<xs:anyAttribute>` em um componente de entrada de mapeamento XML, abre uma caixa de diálogo de seleção de caracteres curinga.

O elemento `<xs:any>`, assim como o `<xs:anyAttribute>`, são frequentemente utilizados no design de esquemas XML, e o suporte a esses elementos no MapForce tem sido uma solicitação frequente por parte dos usuários.

Mapeamento de XML para e de bancos de dados

O MapForce oferece um suporte poderoso para mapeamento de bancos de dados, incluindo o mapeamento entre dados de qualquer banco de dados e XML, arquivos de texto simples, EDI, Excel (OOXML), XBRL, serviços web e até mesmo outros formatos de banco de dados.

Ao carregar a estrutura de um banco de dados na janela de design, o MapForce interpreta automaticamente o esquema do banco de dados, permite que você selecione as tabelas e visualizações disponíveis e reconhece as relações entre as tabelas.

Mapeamento de banco de dados com MapForce

Depois de carregar todos os modelos de conteúdo XML e outros necessários para o mapeamento do seu banco de dados, complete o mapeamento simplesmente arrastando linhas de conexão entre as estruturas de origem e destino.

Suportado Bancos de dados relacionais:

  • Firebird
  • IBM DB2 for iSeries®
  • IBM DB2®
  • Informix®
  • MariaDB
  • Microsoft Access™
  • Microsoft® Azure SQL
  • Microsoft® SQL Server®
  • MySQL®
  • Oracle®
  • PostgreSQL
  • Progress OpenEdge
  • SQLite
  • Sybase® ASE
  • Teradata

Suportado Bancos de dados NoSQL:

  • MongoDB
  • CouchDB

O MapForce oferece suporte a todos os principais bancos de dados relacionais, bem como a bancos de dados NoSQL populares, permitindo que você crie projetos de mapeamento gráfico entre dados de origem de bancos de dados, funções e filtros de processamento de dados, e outras estruturas de dados de diversos tipos.

Recursos de mapeamento de banco de dados:

  • Consultas a bancos de dados em todas as principais plataformas
  • Mapear dados de qualquer tipo de banco de dados suportado para qualquer outro
  • Especifique as configurações da chave do banco de dados
  • Definir ações para tabelas de banco de dados
  • Consultar diretamente os bancos de dados
  • Conecte-se e mapeie arquivos XML para campos de banco de dados
  • Organizar os componentes de entrada do banco de dados

Filtragem e processamento de dados de banco de dados

Muitas configurações de mapeamento de bancos de dados exigem a manipulação de dados entre a fonte e o destino, com base em condições booleanas ou em instruções SQL e SQL/XML. Pode ser necessário realizar comparações lógicas, cálculos matemáticos ou operações com strings, verificar se os dados do banco de dados possuem um valor específico e fazer outras modificações nos dados. Na captura de tela acima, as funções de processamento de dados aparecem como os blocos entre as linhas que conectam o modelo de dados de origem e o modelo de dados de destino.

As funções de processamento de dados permitem que você realize mapeamentos avançados de bancos de dados em tempo real, atendendo a uma variedade de necessidades de transformação. Por exemplo, você pode criar mapeamentos de banco de dados que utilizem mensagens XML ou EDI para extrair linhas de dados com base em critérios de filtro provenientes dos elementos XML ou EDI.

As associações entre bancos de dados e XML geram um documento de saída em formato XML. As associações entre bancos de dados e arquivos de texto simples resultam em arquivos de saída em formato CSV ou em arquivos de texto de comprimento fixo. As associações entre bancos de dados e EDI podem gerar mensagens nos formatos EDIFACT, X12 ou HL7. As associações entre bancos de dados e Excel produzem marcação no formato Office Open XML (OOXML), e as associações com XBRL geram relatórios financeiros no formato XBRL.

As associações XML para um banco de dados geram resultados na forma de scripts SQL (por exemplo, instruções SELECT, INSERT, UPDATE e DELETE) que são executados diretamente no seu banco de dados de destino, a partir do próprio MapForce.

Mapeamento de dados XBRL

A Linguagem de Relatórios de Negócios Extensível (XBRL) é uma linguagem de marcação baseada em XML, utilizada para a transmissão eletrônica de dados empresariais e financeiros.

O MapForce suporta o uso de taxonomias XBRL como fonte ou destino de qualquer mapeamento, permitindo que você transforme graficamente dados contábeis internos em um formato compatível, sem comprometer sua integridade semântica ou estrutural, e/ou integre dados de relatórios para análise financeira.

Mapeamento XBRL no MapForce

O suporte para o mapeamento de arquivos de execução e a geração de código em Java, C# ou C++ significa que você também pode automatizar a conversão de dados financeiros com base no design de mapeamento gráfico. Isso torna o processo de submissão de dados financeiros públicos um processo repetível e altamente gerenciável, permitindo que você gere relatórios XBRL válidos, conforme necessário, com base nos dados variáveis armazenados nos campos do sistema de contabilidade.

Desenvolvimento de mapeamentos XBRL

Para criar um mapeamento XBRL com base em uma taxonomia existente, basta inserir a estrutura da sua taxonomia no painel de design do MapForce. O MapForce exibirá uma representação gráfica da estrutura do arquivo, mostrando os conceitos da taxonomia, hipercubos, elementos abstratos, períodos, identificadores, etc., com ícones intuitivos.

O componente XBRL extrai informações estruturais e semânticas das bases de dados associadas e as apresenta em uma hierarquia que pode ser facilmente interpretada, expandida ou reduzida conforme necessário.

Filtragem e processamento de dados XBRL

O MapForce oferece suporte flexível para filtrar e processar dados, utilizando funções avançadas de processamento baseadas em condições booleanas, ou manipulando os dados durante a conversão do formato de origem para o formato de destino.

Por exemplo, como os dados em formato XBRL são essencialmente lineares, muitas vezes é necessário aplicar funções de agrupamento que combinam os dados de origem em grupos e, em seguida, processar esses grupos para transformar os dados em uma estrutura hierárquica. Isso é facilitado pelas funções de agrupamento disponíveis na biblioteca de funções MapForce.

Mapeamentos de dados do tipo "um para muitos" e encadeados

MapForce é uma ferramenta de mapeamento XML extremamente flexível, ideal para projetos complexos de integração e conversão de dados. As fontes de dados e os destinos de um mapeamento podem ter formatos diferentes, incluindo qualquer combinação de XML, bancos de dados, arquivos de texto simples, EDI, Excel, XBRL, Shopify/GraphQL e serviços web. Um mapeamento de dados pode ter uma única fonte mapeada para um único destino, uma única fonte para múltiplos destinos, múltiplas fontes para um único destino, ou múltiplas fontes para múltiplos destinos, tudo isso em diferentes formatos de dados.

Mapeamento encadeado no MapForce

O MapForce permite integrar dados de vários arquivos e fontes de dados, ou dividir dados de uma única fonte em múltiplos resultados. Vários arquivos podem ser especificados através do uso de caracteres curinga (por exemplo, ? ou *) nos nomes dos arquivos, uma tabela de banco de dados, sequências de números automáticos ou outros métodos. Esta funcionalidade é muito útil em uma ampla variedade de cenários de integração de dados; por exemplo, pode ser necessário integrar dados de uma coleção de arquivos ou gerar arquivos XML individuais para cada registro de uma tabela principal em um grande banco de dados.

O MapForce também permite que você utilize nomes de arquivos como parâmetros em seus projetos de integração de dados. Isso permite criar mapeamentos dinâmicos nos quais nomes de arquivos específicos são definidos em tempo de execução.

Mapeamento de dados encadeados

As transformações encadeadas permitem que você crie mapeamentos complexos nos quais a saída de um mapeamento se torna a entrada de outro. Essa poderosa funcionalidade aumenta a capacidade do MapForce de executar transformações totalmente automatizadas. Cada componente encadeado se torna uma entidade modular em uma sequência de transformação interdependente, permitindo que as conversões sejam realizadas em tempo real.

Transformações encadeadas podem ser criadas utilizando qualquer número de componentes de mapeamento conectados a um componente de destino final. É possível exibir ou gerar visualizações e código para os componentes intermediários, bem como para o resultado final do mapeamento.

Automatize a execução de mapeamentos XML com o MapForce Server

Altova MapForce Server inclui o motor de transformação de dados integrado, desenvolvido para o MapForce, e foi significativamente aprimorado para funcionar em ambientes de servidor. O MapForce Server realiza.. transformações de dados para qualquer combinação de XML, banco de dados, EDI, XBRL, arquivos de texto simples, Excel, JSON, Protocol Buffers e/ou serviços web, utilizando mapeamentos de dados pré-processados e otimizados, armazenados em arquivos de execução, com base em.. mapeamentos de dados definidos no MapForceO MapForce Server eleva a transformação de dados a um novo patamar, oferecendo recursos de servidor que incluem processamento paralelo, multithreading, inserção em lote de dados no SQL, suporte a diferentes plataformas e muito mais.

O pré-processamento permite um desempenho mais rápido e reduz o uso de memória para a maioria das transformações de dados. O MapForce Server opera sob o gerenciamento do FlowForce Server, podendo ser executado de forma independente a partir da linha de comando ou programaticamente através de uma API.

Após o projeto e teste de um mapeamento XML no MapForce, este pode ser executado pelo MapForce Server para automatizar processos de negócios que exigem transformações repetitivas de dados.

Criando um arquivo de execução do MapForce Server

O MapForce pré-processa e otimiza as configurações de mapeamento de dados XML, armazena-as em arquivos de execução do MapForce Server para execução via linha de comando pelo MapForce Server, e as envia para serem utilizadas em tarefas do FlowForce Server.

Quando o MapForce Server opera sob o gerenciamento do FlowForce Server, os mapeamentos de dados são executados como etapas de um processo do FlowForce Server, com base em gatilhos definidos como parte desse processo. Por exemplo, um novo documento XML é armazenado em um diretório, o que dispara um processo do FlowForce Server com várias etapas para, primeiramente, validar o arquivo usando o RaptorXML+XBRL Server, e então executar o MapForce Server para extrair determinados dados do XML e inseri-los em um banco de dados.