XML Application Objects (logo)
because using standards should be easy
SourceForge.net Logo
This page was last updated Wednesday 24 September 2003


eXtensible Markup Language (XML) is an industry standard offering data encapsulation mechanisms for IT systems. Because it facilitates the development of arbitary schemas (vocabularies) within it's framework, other satelite standards based on XML are also available. Since XAO encourages the use of standards based web applications development, it is appropriate to list some of the XML based standards affecting web development.
eXtensible Markup Language (XML) W3C website
"Extensible Markup Language (XML) is a simple, very flexible text format derived from SGML (ISO 8879). Originally designed to meet the challenges of large-scale electronic publishing, XML is also playing an increasingly important role in the exchange of a wide variety of data on the Web and elsewhere."
  • zvon.org - an absolute fantastic place for the newbie to start
  • w3schools.com - another good learning place.
  • xml.org - run by the Organization for the Advancement of Structured Information Standards (OASIS)
  • xml.com - lots of news and articles specifically XML related.
XML schema
" XML Schemas express shared vocabularies and allow machines to carry out rules made by people. They provide a means for defining the structure, content and semantics of XML documents. "
Schema definition files can be used to validate XML datagrams. These vocabularies/schema-definitions themselves often form the basis of other standards.
Docbook is a standard established in the publishing industry for the purposes of marking up documents and books. It often forms the basis of good content management systems. We plan to use docbook as the format for marking up documentation in the XSLT files that will go into the XSLT library distributed with XAO.
This standard forms the basis of what people refer to as "Web Services". The SOAP specification provides a good example of XML employed as a data encapsulation technique for datagrams subject to transmission over various widely available protocols. While the overhead of using XML is very high, it's wide-spread adoption makes it a powerful option for remote method invocations/client-server requests. Perfromance is sacrificed for wide-spread availability.
XML:DB Initiative for XML Databases
The XML format lends itself to structures not easily replicated in traditional database systems such as relational database management systems (RDBMS (SQL databases)). Pure XML databases are rapidly gaining popularity as an acceptable alternative to RDBMSs for mass data storage of cirtain types of data. While not replacing RDBMSs or competing with them head-on, pure XML databases provide advantages in cirtain circumstances. For instance, the tend to be more suited to situations where it's not entirely possible to predict the structure of the data to be stored. Also, the query mechanism employed is more suitable for lookups on heirachial data structures and even unstructured data. They are not good at storing relational data the way RDBMSs are. Hence, applications will often adopt them in addition to traditional RDBMSs. While utilising existing XML standards such as XPath, they have neccecitated the introduction of at least one new standard - XUpdate.
Xindice - open source pure-XML database
Xindice was born out of the first open-source attempt at a pure-XML database. Anyone considdering building a content management system with XAO would do well to considder using Xindice for document storage (perhaps encoding the documents in Docbook). XAO will provide a Xindice object specifically for interacting with this service.
XSLT (dedicated links page)
Since it is used so extensively by XAO users, it has it's own dedicated links page on this site.

This website is copytight Terence Kearns 2003
The XML Application Objects library is copyright Terence Kearns 2003 and made freely available to the public via the Lesser General Public Licence (LGPL).
The hosting of this project is generously provided by sourceforge.net