Contents |
General
What is Axiom?
Axiom is an object-oriented web application framework, like Ruby on Rails, Struts, et al. It has a built-in web server, fully searchable object database, and dead-simple zen-like application development.
Will it put sugar cubes in my coffee?
This functionality is currently in beta.
Templates
How do I put a doctype at the start of my TALE templates?
All TALE templates must be well-formed XML, so you cannot include the doctype in the file itself. Instead, you can specify the literal doctype that will be written to the http response in app.properties:
doctype = <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
How do I use logical AND/OR operators in TALE?
Since all TALE expressions are Javascript, you can use the Javascript opeators, namely && for logical AND and || for logical OR. However, there's a catch here. Since ampersands are special characters in XML (indicating the start of entity references), any bare ampersands must be escaped as & - so a Javascript logical AND becomes &&.
Gotchas
Zip files being unintentionally loaded as modules
Applications and modules can be loaded from zip archives for easy of deployment- all you have to do is place the zip archive within a directory scanned for application by Axiom. By default, this is apps, modules and lib in the Axiom install directory. This is how Axiom's server-side Javascript contained in lib/js.zip are loaded.
However, this means that one must be careful to keep any archived backups out of these directorys. If a backed-up copy of an application is kept in the axiom install directory, it will be loaded at startup. If a newer version of the same application is also present, this may cause unexpected behavior.
