Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2007 Brad Fitzpatrick
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in in the section entitled “Appendix B, GNU Free Documentation License”.
Anybody who's ever put together a large website or done a lot of server-side programming will know how hard and annoying it is to keep a consistent look through a site, and how painful it is to go back and change something globally later, once their site is up. In addition, looking at HTML code is ugly and HTML editors don't always do what you want them to.
BML was designed to address a lot of these problems. BML is a server-side markup language that lets you define your own BML blocks and use them as templates within your BML pages. Your templates don't even have to be static. Because BML pages are converted to HTML on the server when users request them, this also enables you to embed live code within your BML pages, just like a CGI script.
A lot is possible using BML. Whether you want to make a full blown database driven website, enable a little dynamic content on your site, or just make things on your site easier to maintain, BML can really help out.
The official website for BML is located at http://danga.com/bml/.
BML can be checked out from its SVN repository using: svn co http://code.sixapart.com/svn/bml
Table of Contents
List of Examples