Apache AXIOM Vermont

Apache AXIOM (AXis2 Object Model) is a pull-based, XML Infoset-compliant object model that supports on-demand building of the object tree. Learn the basis of Axiom and how to use it.

Local Companies

Csl Software Solutions
(802) 861-2500
7 Kilburn St
Burlington, VT
Straight Forward Software Inc
(802) 865-0480
80 Black Lantern Ln
South Burlington, VT
Computer Repair At R
(802) 658-4143
266 Pine St
Burlington, VT
Aurora North Sofware Inc
(802) 860-7560
3 Main St
Burlington, VT
Advanced Dining Solutions LLC
(802) 878-1577
43 Jackson St
Essex Junction, VT
Csl Software Solutions
(802) 861-2500
7 Kilburn St
Burlington, VT
KGS SOFTWARE ENGINEERING
(802) 860-6045
75 Ethan Allen Dr
South Burlington, VT
Gamestop
(802) 862-3022
5 Burlington Sq
Burlington, VT
RedLeaf Software LLC
802-735-0730
P.O.B. 201
Colchester, VT
Data Systems Inc
(802) 862-1289
431 Pine St Ste 215
Burlington, VT

What Is AXIOM?



AXIOM stands for AXis2 Object Model and refers to the XML infoset model that was initially developed as part of Apache Axis2, but later it moved to a WS commons project. Axiom is the main XML representation mechanism in Axis2, so any message coming to Axis2 will be represented as an Axiom object in Axis2. XML infoset refers to the information included inside the XML, and for programmatic manipulation it is convenient to have a representation of this XML infoset in a language specific manner. For an object-oriented language, the obvious choice is a model made up of objects. DOM and JDOM are two classic examples for such XML models. AXIOM is conceptually similar to such a XML model by its external behaviour, but deep down it is very different.

AXIOM is a lightweight, deferred built XML infoset representation based on StAX, which is the standard streaming pull parser API. The object model can be manipulated flexibly as any other object model (such as JDOM), but underneath, the objects will be created only when they are absolutely required. This leads to much less memory-intensive programming. This also is very useful when it comes to applications such as message routing and ESB (Enterprise Service Bus).

Among the features of AXIOM, deferred building can be considered as the best. That also was one of the design goals of AXIOM. As you have seen in Axis2-related articles, one of the issues of Apache Axis1 was its XML representation. It was fully based on DOM, and it loads full messages for processing; this become a performance killer when it came to large messages. AXIOM was introduced to solve those issues, and in addition to that it has following key features as well.




  • Lightweight: AXIOM is specifically targeted to be lightweight. This is achieved by reducing the depth of the hierarchy, number of methods, and the attributes enclosed in the objects. This makes the objects less memory intensive.

  • Deferred building: The objects are not made unless a need arises for them. This passes the control of building over to the object model itself rather than an external builder.

  • Pull based: For a deferred building mechanism, a pull-based parser is required. AXIOM is based on StAX, the standard pull parser API.



What Are Pull Parsing and Push Parsing?



Read the Rest of this Article at Developer.com

Featured Local Company

Csl Software Solutions

(802) 861-2500
7 Kilburn St
Burlington, VT

Related Articles
- "Just Add Linux": The Union of Commercial and Open Source Software into Existing Business Models Vermont
With open source taking off in the marketplace, new business models for vendors providing value-added services mix and match commercial and open technologies to increase market reach.
- XML Manipulation with Apache AXIOM Vermont
Related Articles
- "Just Add Linux": The Union of Commercial and Open Source Software into Existing Business Models Vermont
With open source taking off in the marketplace, new business models for vendors providing value-added services mix and match commercial and open technologies to increase market reach.
- XML Manipulation with Apache AXIOM Vermont

Topics: 
Architecture & Design Languages & Tools Project Management Web Services
Database Microsoft & .NET Security Wireless
Java Open Source Techniques XML