Loading data from XML can be very complex task, but the complexity of this task depends of people who design XML at the first place.In this article we will provide you with some examples of loading data from XML files and transforming it. We will also talk about things to avoid and how to make life of developers easier.

What is XML anyway?

Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards.
The design goals of XML emphasize simplicity, generality, and usability over the Internet. It is a textual data format with strong support via Unicode for the languages of the world. Although the design of XML focuses on documents, it is widely used for the representation of arbitrary data structures, for example in web services.

Source: Wikipedia

XML is incredibly flexible, but it has some disadvantages as well.

For example:


The XML above has only one byte of information the rest of it is metadata.Using too much metadata requires more processor power and increase network traffic(Which is great news for hardware vendors, but bad news for the people who have to pay for it)

The flexibility of XML can lead to unnecessary complexity and it can make it hard for developers to understand, therefore lead to mistakes and development time and cost increases.

In some of the cases it can be necessary to convert XML into simplified format so it can be loaded into the database.
This XML can be loaded by most of the ETL tools.

Note: CustomerTable is a "Table tag" and CustomerRecord  is a "Record Tag"

<CustomerName>Peter Jones</CustomerName>
<CustomerName>Bill Watson</CustomerName>

This XML may need to be transformed in the format above so it can be laoded into the database later:

<CustomerRecord CustomerID="1" CustomerName="Peter Jones"/>
<CustomerRecord CustomerID="2" CustomerName="Bill Watson"/>

And as a Conclusion here are some basic XML design tips:

  • Use XML when it is necessary
  • Too much metatadata is a bad thing
  • Keep tags short
  • Keep it simple and clean
  • Check ETL documentation and design XML in such a way so it can be loaded without conversion

In the latest version of our QlikView Connector we have introduced support for JDBC.

Note: The connector currently works with 27 datasources.


Click on thumbnail to see the screenshot

Advanced ETL Processor Advanced ETL Processor Advanced ETL Processor Advanced ETL Processor

JDBC drivers are supplied by database vedors. The list of JDBC drivers can be foud here and here

Download Now

Great news: we have just introduced support for stored procedures as data target for all our ETL Products.

Stored procedure data transformation


Performance improvements for MS SQL Server Connection
Various Bug Fixes
Documentation Update

A Stored Procedure is an important tool for working with databases. They allow greater flexibility than SQL statements, ETL developers and programmers use stored procedures for various tasks within databases.

When to use stored procedure as ETL data target?

  1. For complex calculations
  2. Loading data into multiple target tables
  3. Very large lookup transformations
  4. Validation against large list of values for example validating post codes

It is a freeware lightweight QlikView files viewer.

"It supports both QVD and QVX Files"

Portable version is designed to work with PortableApps Menu which can be downloaded from here

Portable software is a class of software that is suitable for use on portable drives such as a USB (thumb) drive or iPod or Palm PDA with "drive mode", although any external hard drive could theoretically be used.  The concept of carrying one's favored applications, utilities, and files on a portable drive for use on any computer is one which has evolved considerably in recent years.

Download Q-Eye Portable Version

New version of VImpX is available for download.

Changes Are:

  • New datasources QVD and QVX files, Windows Event Log, RSS, Google Spreadsheets, SalesForce and BrightPearl (That makes it 27 datasources in total)
  • Minor bug fixes and tweaks
  • Documentation Update

About VimpX

VImpX is universal dataimport Activex. 

By integrating one of DB Software Laboratory ETL ActiveX into your own application you can quickly introduce fully functional universal import routine and cut the time and the cost required for the development of your own.

Go to top