Tanzarine Technology

Web sitesApplication developmentSoftware designContent managementHTMLCSSUser interface designWeb serversJavaPHPSocial mediaLinkedInSecurityDatabase designPerlJavascript

XML-Based Web Sites

One of the biggest difficulties in maintaining and evolving a web site is that HTML stores the information to be displayed and instructions on how to display it in the same place. XML technology can be used to separate the two, and a little Java coding can even take care of linking all the pages together automatically.

XBuild is a lightweight application written in Java which creates an environment in which web page content can be edited independently from the web environment.

Image

XBuild uses several powerful Java and XML technologies to do its work. Web pages are stored as relatively simple XML documents, using a very brief set of tags to begin with. These documents are stored locally in a directory structure which is identical to the final web site structure. XBuild then starts at the root of this structure, and locates all the XML data files below.

Each XML document is loaded and processed using the JDOM API. For multiple documents in a directory, an index can be automatically generated if required, which contains all the linkage needed to access all of the documents in that level. In this way, adding a new page to the web site can be as simple as creating a new XML document, saving it to the appropriate directory, and running XBuild to regenerate the web site.

XBuild also uses the available subdirectories to build a list of navigation options for the page, and it uses knowledge of the directories already processed to provide a drilldown summary and upwards navigation, if required.

Finally, XBuild uses the Apache XSLT engine, Xalan, to transform the generated XML documents to HTML, and saves them out to a generation directory. The appearance of the web pages is governed by this transformation, and so the entire look and feel of the web site can be changed simply by changing the XSLT. XBuild is used to produce the Tanzarine Technology web site.