Skip to content

XAware Community

Get the Flash Player to see this player.
Flash Image Rotator Module by Joomlashack.
XAware 5.6
Need Help
Webinars and Events
Advanced Tutorials
Webinars and Events

You are here: Home arrow Blogs

xmldata servicedata abstraction layer 14 Jan 2008 8:15 AM
XML-Based Data Abstraction Layer by kvandersluis
When discussing XAware with technology users, I typically start by saying that XAware technology provides an XML-based data abstraction layer. This is a fairly simple idea with potentially powerful ramifications. Decomposing the phrase, we have "XML-based" and "data abstraction layer". Despite its drawbacks, XML has proven over the years to be a universal format for representing data during information exchange. Its benefits are many, including: hierarchical structure easily models real world business information found in most companies, simple formatting rules with ample free software for parsing and validating, and its designed to be easily extended. The drawbacks mainly revolve around size, as typical document or message sizes often exceed the core data size by a factor of 5 to 10. As users have weighed the tradeoffs, XML has clearly become the accepted standard for mainstream data exchange. Mitigating the size drawback is steadily increasing network capabilities (faster transports and XML-aware accelerators), as well as an incubating binary XML standard (see Efficient XML Interchange at Importantly, XML is the foundation of many other standards critical for information exchange, like XML Schema for format specification and validation, and web services standards.


A "data abstraction layer" is also fairly straightforward to grasp. "Abstraction" is a technique used by the typical developer almost on a daily basis. An intricate processing flow is broken up into manageable chunks, each chunk accessible by a method call. The complexity is abstracted into the called method, simplifying the code in the caller. A "data abstraction layer" similarly hides complexity, by allowing a developer to make a single method call (or service call) to retrieve or store data that would otherwise require many lines of code to manage. In addition, a well designed data abstraction layer facilitates reuse by defining common services that many other processing components can call.


In providing an XML-based data abstraction layer, XAware technology addresses an important roadblock to many projects. Gartner and other analysts have noted over the years that accessing data in a distributed environment often consumes up to 70% of a software development budget. This is due to the diverse nature of the data, which is often stored in both relational and non-relational sources, and includes both structured and unstructured data. Such data typically changes frequently, and often requires specialized knowledge to access. A data abstraction layer hides this complexity from the consuming applications so developers don't need to worry about it. At the same time, the data abstraction layer isolates the dynamics of this environment to a separate architectural layer, making it easier to manage with specialized tools and personnel with required skill sets.


In a typical scenario involving XAware technology, an XML Schema defines the format of information required by an application or process. The XAware Designer tool lets a data-savvy developer map between various sections of the XML and back end data sources. The resulting data service is deployed and made available either over the network (SOAP/HTTP/POX/REST), or through a direct method call using the Java-based API. Many such data services are usually required for an application, where each data service has a corresponding XML Schema definition and mappings to back end systems. The XML Schema acts as the contract between the data service and the calling application or process.


So, in what types of projects would XAware technology be beneficial? Based on design criteria behind the technology, plus feedback from actual XAware users, any environment where you have complex data, data sources that might change frequently, or complex information processing needs in your application (your customer records or order structures are complex), the XAware XML-based data abstraction layer may be a beneficial strategy for you.

Comments (0)add comment

Write comment
You must be logged in to a comment. Please register if you do not have an account yet.


Get the Flash Player to see this player.
Flash Image Rotator Module by Joomlashack.
Free Training
QuickStart Packages
Image 4 Title
Image 5 Title


Which data source and BizComponent combinations do you most frequently use?


Recent Entries