patXMLRenderer < Overview >  

Randy, the patXMLRenderer, transforms XML into HTML pages (or any other ASCII Format you like) using the patTemplate class.
Our website is entirely generated by Randy. The big advantage of the system is that you're not limited to static content - the patXMLRenderer system supports custom extensions that let you generate dynamic content (like database queries) directly in your XML pages.
Current Version : v0.6
Released : 2002-06-14
Maintainer : Stephan Schmidt
Developer(s) : Stephan Schmidt
License : LGPL

Why should I use Randy?
You should use our renderer if you'd like to separate content from layout on your website. The content is stored in XML files while the layout of your page is stored in templates. You can now easily change one of the components of the site without changing the other. It also allows you to easily switch designs or create different output formats like LaTex, HTML, PDF, WML,...
Currently the following features are implemented:

Transform any XML document (read files or strings) with a free tag set into an HTML Document (or any other format)

Use as many template files as you like and define the filename of the used template in your XML file

Uses patTemplate which allows "intelligent" templates (e.g. condition templates). This feature enables you to use one tag for a textparagraph with AND without a headline. The template engine chooses the correct template to use. Take a look at patTemplate for more information.

Supports use of external entities. This feature enables you to store the often used parts (like navigation or footer) in separate files, which will be included in your XML files. This feature resembles the PHP include() statement.

Offline Generator which lets you create static HTML pages that can be downloaded as a zip file

Randy automatically opens an index and error file and displays it if no file was given or the file to parse does not exist.

Intelligent cache functions, so a page is only generated when content or layout changes.

Auto cache can be overridden to force caching for a certain time.

Supports XSLT-like parameters which allow dynamic attribute values.

Customizable using extensions that are assigned to an XML namespace. These extension may create any content that will be included in the HTML document. The extensions may also return XML content which will be transformed by Randy.

Several extensions are included which handle commonly needed tasks like database queries, time functions, file access and more...

Easily switch between skins (different layouts)

Extensions may be "stacked", you may use the tag of an extension between the opening and closing tag of another extension. You could use this feature to create a dynamic database query, which returns a database result.

Automatic logging. Randy will create a daily log which can be used to create access statistics. As Randy is able to add URL parameters to all internal URLs PHP Session Management can be used to track unique visits.

Referer and error log.

Administration area that lets you view logfile analysis of access and referer log.

Help on all installed extensions in the administration area.

Supports patExtras to ease the communication with the team.
Future Features
Take a look at the Todo list if you'd like to known what we are planning for future versions.

PHP Application Tools

© 2001-2006
pat is watching you!

Last Updated: 2003-07-18 23:02:02 Jump to the top of the page (of course only if you're far enough down...)