Plands.com Logo  Business Internet Services 
Main Menu
Home
Planetary CRM
  Benefits
  Features
  Demo
E-Mail Services
  E-mail Hosting
  Newsletters
  Discussion Lists
Web Hosting
Server Co-location
and Administration
Web Applications
Technical Support
Contact Us
DXP Samples
 
DxpHome  ||   Samples  ||   Details  ||   Docs  ||   Trees  ||   xml-xsl  ||   Links

This is the home of the XML namespace dxp.plands.com

dxp is an acronym for Dynamic XML Page. The dxp system is a framework for building web applications that interact with online database systems. Applications are built from a collection of .dxp pages written as xml source files. The page you are reading now was created by a very simple dxp page that writes a static file with a shared header and footer.

<?xml version="1.0"?>
<dxp:DxpPage xmlns:dxp="dxp.plands.com" contentType="text/html" staticFile="index.html" buffsize="6000">
 <dxp:ReadBytes filename="header0.txt"/>
 <dxp:ReadBytes filename="index-content.txt"/>
<dxp:ReadBytes filename="footer0.txt"/> </dxp:DxpPage>

A DxpPage is a server side object that dynamically creates HTML, XML, text or binary files in response to http requests. There are many template systems available today that perform similar functions so why reinvent the wheel?

Does a bicycle use the same wheel as a tractor? The dxp framework was designed to meet the following goals:

  • Create a system that allows a non-programmer to build complex web applications
  • Prevent page authors from embedding code that puts the server at risk
  • Use a standard page description language (xml) and a standard SAX parser
  • Avoid proprietary syntax and parsers required by jsp, php and our previous ddp system
  • Specify logic, data access and diplay on a single xml page
  • Create a reusable set of active tags that support the most common activities
  • Make it easy for programmers to create and plug in new tags
  • Minimize excess processing and share resources whenever possible
  • Isolate web apps run by different Virtual Hosts from each other
  • Resist feature creep; expand only when the current framework does not do the job
  • Turn custom feature requests into generic objects that can be used by all
  • Keep the source tree stable and thoroughly documented

Most of the design goals have been met with modest success. There is always room for improvement. Features missing from the current version:

  • Ability to compile and execute arbitray code embedded in pages - may stay missing
  • EBJ, SOAP, UDDI and other non http protocols
  • Support for non ASCII char sets
  • Tags that take advantage of advanced JDBC 3.0 features
  • Page fragments callable from multiple pages (coming soon)
  • Other stuff we haven't needed yet..open to suggestions

To learn more...

  • Samples - example pages with dxp source
  • Details - structure and setup information
  • Docs - information about individual tags
  • xml-xsl - xml output rather than html
  • Trees - decision trees, execution trees
  • Links - Servlet Runners, Java, Parser, Database