XML-Mapping

Converteer XML-gegevens

  • Het eenvoudig koppelen van componenten door ze met de muis te slepen en neer te zetten
  • Ondersteunt XML-schema's en DTD-contentmodellen
  • Genereert een XML-schema op basis van een voorbeelddocument
  • XSLT 1.0/2.0/3.0 bibliotheken en functies voor dataverwerking
  • Ondersteuning voor digitale handtekeningen in XML-formaat
  • Ondersteuning voor XML-wildcards (xs:any en xs:anyAttribute)
  • Ondersteuning voor opmerkingen en verwerkingsinstructies
  • Converteer XML-bestanden met behulp van XSLT

Het maken van een XML-mapping

MapForce ondersteunt XML-mappingen die gebaseerd zijn op XML-schema's of DTD-contentmodellen. Om een XML-mapping te maken, hoeft u alleen maar twee of meer schema's in MapForce te laden en verbindingslijnen tussen de knooppunten van de bron en de bestemming te slepen. De ondersteuning voor gemengde inhoud maakt het zelfs mogelijk om tekstgegevens te mappen die vermengd zijn met XML.

Als u geen bijbehorend schema heeft voor een XML-instantiedocument, genereert MapForce automatisch een XML-schema op basis van dat XML-instantiedocument.

MapForce XML-mapping

MapForce ondersteunt.. geavanceerde XML-transformaties tussen verschillende invoer- en uitvoerschema's, meerdere bron- en/of doelbestanden, of geavanceerde datatransformaties in meerdere stappen (van schema naar schema, enzovoort)

Zodra u uw XML-mapping en de regels voor dataverwerking hebt gedefinieerd, kunt u een bronbestand laden, en de ingebouwde uitvoeringsengine van MapForce zal de data direct omzetten naar het nieuwe formaat.

MapForce genereert automatisch XSLT 1.0, XSLT 2.0 of XSLT 3.0-stijlbladen die gebruikt kunnen worden om gegevens in meerdere XML-documenten te transformeren, op basis van het bronschema, zodat ze voldoen aan het doel-XML-schema.

Leer hoe u XML-bestanden kunt converteren naar XML en andere formaten met behulp van MapForce

Naast XML-mapping ondersteunt MapForce ook.. het in kaart brengen van elke mogelijke combinatie van XML, JSON, PDF, databases, EDI, XBRL, platte bestanden, Excel, Protobuf en/of web service data, om data-integratie- of web service applicaties te ontwikkelen.

Het bekijken van de XML-mappingresultaten

Tijdens het ontwerpen van een XML-mappingproject, stelt de ingebouwde MapForce Engine u in staat om met één klik de automatisch gegenereerde XSLT 1.0, XSLT 2.0, XSLT 3.0 of XQuery-code te bekijken en op te slaan. U kunt ook op het tabblad "Output" klikken om de daadwerkelijke uitvoer te bekijken die door uw XML-mapping wordt gegenereerd.

De onderstaande screenshot toont de XML-uitvoer en het gegenereerde XSLT 2.0-stijlblad voor de XML-mapping die hierboven is weergegeven.

MapForce XML-mapping uitvoer

XML-mapping met digitale handtekeningen

Digitale handtekeningen zijn een specificatie van W3C waarmee een XML-document digitaal ondertekend kan worden met een versleutelde code. Deze code kan gebruikt worden om te verifiëren dat het XML-document niet is gewijzigd. De functie voor XML-handtekeningen in MapForce ondersteunt alleen certificaten van het type RSA-SHA1 en DSA-SHA1.

MapForce ondersteunt het genereren van digitale XML-handtekeningen voor XML- en XBRL-uitvoerbestanden. Een handtekening wordt aangemaakt voor het gegenereerde resultaatbestand wanneer op de knop "uitvoer" wordt geklikt, en het resultaatbestand met de handtekening kan worden opgeslagen.

Digitale handtekeningen kunnen worden ingebed als het laatste element van het uitvoerdocument of worden opgeslagen in een apart bestand.

  • Als "Enveloped" is geselecteerd, dan is de handtekening het laatste onderliggende element onder het hoofdelement van het XML-bestand.
  • Als "Los" is geselecteerd, dan wordt het handtekeningbestand als een apart document gegenereerd.

De afbeelding aan de rechterkant toont een digitale handtekening aan het einde van het resultaatbestand, die is gegenereerd met behulp van de "enveloped"-optie.

MapForce: XML-mapping met digitale handtekeningen

De geldigheid van een XML-document

Als een XML-handtekening is ingebed in het XML-document, wordt een "Signature"-element toegevoegd aan het XML-document, en dit element bevindt zich in de namespace http://www.w3.org/2000/09/xmldsig#. Om ervoor te zorgen dat het document geldig blijft volgens een schema, moet het schema de juiste elementdefinities bevatten. Als u het schema van het XML-document niet wilt wijzigen, kan de XML-handtekening worden gemaakt in een extern bestand met behulp van de optie "losgekoppeld".

Ondersteuning voor XML-wildcards

Het `<xs:any>`-element en `<xs:anyAttribute>` in een XML-schemaontwerp maken het mogelijk om elk nieuw element of attribuut op de overeenkomstige locatie in een XML-instantiedocument te plaatsen, zelfs als het nieuwe element of attribuut niet is gedefinieerd in het XML-schema. Dit staat bekend als een XML-wildcard en is een veelgebruikte methode om een zekere mate van aanpassing mogelijk te maken in veel XML-schema's die industriestandaarden ondersteunen voor een breed scala aan bedrijven.

MapForce ondersteunt `<xs:any>` en `<xs:anyAttribute>` voor het omzetten naar uitvoer in XML of een ander uitvoerformaat. Een selectieknop naast `<xs:any>` of `<xs:anyAttribute>` in een XML-mappingcomponent opent een dialoogvenster voor het selecteren van jokertekens.

Het `<xs:any>`-element, evenals `<xs:anyAttribute>`, worden veel gebruikt bij het ontwerpen van XML-schema's, en de ondersteuning hiervan in MapForce is een veelvoorkomend verzoek van gebruikers.

XML-mapping naar en vanuit databases

MapForce biedt uitgebreide ondersteuning voor database-mapping, inclusief het mogelijk maken van koppelingen tussen databases en XML, platte bestanden, EDI, Excel (OOXML), XBRL, webdiensten, en zelfs andere databaseformaten.

Wanneer u een database structuur in het ontwerpvenster laadt, interpreteert MapForce automatisch het databaseschema, stelt u in staat om beschikbare databasetabellen en -weergaven te selecteren, en herkent het de relaties tussen de tabellen.

MapForce: Database-mapping

Zodra u alle XML-bestanden en andere contentmodellen hebt ingeladen die nodig zijn voor uw database-mapping, kunt u de mapping voltooien door eenvoudig verbindingslijnen te slepen tussen de bron- en doelstructuren.

Ondersteund Relationele databases:

  • 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

Ondersteunde NoSQL-databases:

  • MongoDB
  • CouchDB

MapForce ondersteunt alle belangrijke relationele databases, evenals populaire NoSQL-databases, waardoor u grafische database-mapping ontwerpen kunt maken tussen brondata uit databases, databewerkingfuncties en filters, en andere datastructuren van verschillende types.

Functies voor database-mapping:

  • Databasevragen voor alle belangrijke databasesystemen
  • Het omzetten van gegevens van elk ondersteund databasetype naar een ander
  • Specificeer de instellingen voor de database-sleutel
  • Definieer de acties die op de database-tabel kunnen worden uitgevoerd
  • Raadpleeg databases direct
  • Verbind met en koppel XML-gegevens aan databasevelden
  • Sorteer de invoerelementen van de database

Filteren en verwerken van databasegegevens

Veel database-mappingen vereisen datagegevens tussen de bron en de bestemming worden aangepast op basis van logische voorwaarden of SQL- en SQL/XML-statements. Mogelijk moet u logische vergelijkingen uitvoeren, wiskundige berekeningen maken of stringbewerkingen uitvoeren, controleren of databasegegevens een bepaalde waarde hebben, en andere wijzigingen aan de gegevens aanbrengen. In de bovenstaande screenshot worden de functies voor gegevensverwerking weergegeven als de vakken tussen de lijnen die de bron- en doelgegevens verbinden.

De functies voor dataverwerking stellen u in staat om geavanceerde databasekoppelingen in real-time te maken, voor een breed scala aan praktische transformatiebehoeften. U kunt bijvoorbeeld databasekoppelingen maken die XML- of EDI-berichten gebruiken om databasegegevens te extraheren op basis van filtercriteria die zijn afkomstig van de XML- of EDI-elementen.

Database-naar-XML-koppelingen produceren een XML-uitvoerbestand. Database-naar-plattekst-koppelingen hebben een uitvoer in CSV- of tekstbestanden met een vaste lengte. Koppelingen van databases naar EDI kunnen EDIFACT-, X12- of HL7-berichten genereren. Database-naar-Excel-koppelingen produceren Office Open XML (OOXML)-markeringen, en koppelingen naar XBRL genereren XBRL-financiële rapporten.

Het omzetten van XML-gegevens naar een database genereert uitvoer in de vorm van SQL-scripts (bijvoorbeeld SELECT-, INSERT-, UPDATE- en DELETE-statements) die direct vanuit MapForce worden uitgevoerd op uw doeldatabase.

XBRL-datamapping

Extensible Business Reporting Language (XBRL) is een XML-gebaseerde markup-taal voor de elektronische verzending van zakelijke en financiële gegevens.

MapForce ondersteunt het gebruik van XBRL-taxonomieën als bron of bestemming voor elke mapping, waardoor u backend-boekhoudgegevens grafisch kunt omzetten naar een conform formaat zonder enig risico op verlies van semantische of structurele integriteit, en/of rapportagedata kunt integreren voor financiële analyses.

MapForce: XBRL-mapping

Ondersteuning voor het in kaart brengen van uitvoerbestanden en het genereren van code in Java, C# of C++ betekent dat u ook de conversie van financiële gegevens kunt automatiseren op basis van het grafische in kaart brengen. Dit maakt het indienen van openbare financiële gegevens een herhaalbaar en goed beheersbaar proces, waardoor u op basis van de variabele gegevens die zijn opgeslagen in velden van het boekhoudsysteem, de vereiste XBRL-rapporten kunt genereren.

Het ontwikkelen van XBRL-mappingen

Om een XBRL-mapping te ontwikkelen op basis van een bestaande taxonomie, plaatst u eenvoudigweg de structuur van uw taxonomie in het ontwerpvenster van MapForce. MapForce toont dan een grafische weergave van de bestandsstructuur, waarbij taxonomiebegrippen, hyperkubussen, abstracte elementen, perioden, identificatoren, enz. worden weergegeven met intuïtieve pictogrammen.

Het XBRL-onderdeel haalt structurele en semantische informatie uit de bijbehorende koppelingen en presenteert deze in een hiërarchie die gemakkelijk te interpreteren is en die, indien nodig, eenvoudig kan worden uitgebreid of ingekort.

Filteren en verwerken van XBRL-gegevens

MapForce biedt flexibele mogelijkheden voor het filteren en verwerken van data, dankzij geavanceerde verwerkingsfuncties die gebaseerd zijn op boolean voorwaarden, of door data te manipuleren tijdens de conversie van het bronformaat naar het doelformaat.

Bijvoorbeeld, omdat XBRL-data in essentie gestructureerd is, is het vaak noodzakelijk om groeperingsfuncties toe te passen die brondata in groepen combineren en vervolgens die groepen verder te verwerken om de data om te zetten in een hiërarchische structuur. Dit wordt mogelijk gemaakt door de groeperingsfuncties in de MapForce-functiebibliotheek.

Data-mappingen van het type "één-op-veel" en "geketende" data-mappingen

MapForce is een uiterst flexibel hulpmiddel voor het omzetten en integreren van complexe data, waarmee u gegevens uit verschillende bronnen kunt combineren en transformeren. De input en output van een datamapping kunnen verschillende formaten hebben, waaronder elke combinatie van XML, databases, platte bestanden, EDI, Excel, XBRL, Shopify/GraphQL en webdiensten. Een datamapping kan één input koppelen aan één output, één input aan meerdere outputs, meerdere bronnen aan één bestemming, of meerdere bronnen aan meerdere bestemmingen, allemaal in verschillende dataformaten.

MapForce: Gekoppelde mapping

MapForce stelt u in staat om gegevens uit meerdere bestanden en databronnen te integreren, of om gegevens uit één bron op te splitsen in meerdere uitvoerbestanden. Meerdere bestanden kunnen worden gespecificeerd door gebruik te maken van wildcard-tekens (bijvoorbeeld ? of *) in de bestandsnamen, een database-tabel, automatisch gegenereerde nummerreeksen, of andere methoden. Deze functie is zeer nuttig in een breed scala aan dataintegratiescenario's; bijvoorbeeld, het kan nodig zijn om gegevens uit een verzameling bestanden te integreren, of om individuele XML-bestanden te genereren voor elk record in een grote database.

MapForce stelt u ook in staat om bestandsnamen als parameters te gebruiken in uw data-integratieprojecten. Dit maakt het mogelijk om dynamische mappings te creëren, waarbij specifieke bestandsnamen tijdens de uitvoering worden gedefinieerd.

Gekoppelde datamapping

Gekoppelde transformaties stellen u in staat om complexe mappingen te creëren, waarbij de uitvoer van de ene mapping de invoer wordt van een andere. Deze krachtige functie versterkt het vermogen van MapForce om volledig geautomatiseerde transformaties uit te voeren. Elk gekoppeld onderdeel wordt een modulair element in een onderling afhankelijke transformatievolgorde, waardoor conversies in real-time kunnen worden uitgevoerd.

Koppelingstransformaties kunnen worden gemaakt met behulp van een willekeurig aantal mappingcomponenten die verbonden zijn met een eindcomponent. Voorbeeldweergaven en codegeneratie kunnen worden weergegeven/gegenereerd voor tussenliggende componenten, evenals voor het uiteindelijke resultaat van de mapping.

Automatiseer de uitvoering van XML-mapping met MapForce Server

Altova MapForce Server bevat de ingebouwde datatransformatie-engine die is ontwikkeld voor MapForce en is aanzienlijk verbeterd om te kunnen functioneren in serveromgevingen. MapForce Server voert.. gegevensomzettingen voor elke combinatie van XML, databases, EDI, XBRL, platte bestanden, Excel, JSON, Protocol Buffers en/of webdiensten, met behulp van vooraf verwerkte en geoptimaliseerde datamappingen die zijn opgeslagen in uitvoeringsbestanden, gebaseerd op.. gegevenskoppelingen die in MapForce zijn gedefinieerdMapForce Server brengt datatransformatie naar een hoger niveau met serverfunctionaliteiten, waaronder parallelle verwerking, multi-threading, bulk SQL-inserts, ondersteuning voor verschillende platforms en meer.

Voorbewerking maakt snellere prestaties en een kleiner geheugengebruik mogelijk voor de meeste datatransformaties. MapForce Server wordt beheerd door FlowForce Server en kan op verschillende manieren worden gebruikt: als een standalone configuratie die via de commandoregel wordt uitgevoerd, of programmatisch via een API.

Nadat een MapForce XML-mapping is ontworpen en getest, kan deze worden uitgevoerd door MapForce Server om bedrijfsprocessen te automatiseren die repetitieve datatransformaties vereisen.

Een uitvoerbestand voor MapForce Server maken

MapForce verwerkt en optimaliseert XML-datamappingen, slaat ze op in uitvoerbestanden voor MapForce Server, zodat MapForce Server ze via de commandoregel kan uitvoeren, en uploadt ze voor gebruik in taken van FlowForce Server.

Wanneer MapForce Server wordt beheerd door FlowForce Server, worden de datamappingen uitgevoerd als stappen binnen een FlowForce Server-taak, op basis van triggers die zijn gedefinieerd als onderdeel van die FlowForce Server-taak. Bijvoorbeeld, een nieuw XML-bestand komt in een map terecht, wat een meerstaps FlowForce Server-taak activeert. Deze taak valideert eerst het bestand met behulp van RaptorXML+XBRL Server, en voert vervolgens MapForce Server uit om bepaalde gegevens uit de XML te extraheren en deze in een database op te slaan.