The Food Generator processes the recipes and contents and generates various formats of my cookbook called Food!. It's a Java application which, besides creating the various formats, like PDF, HTML and ePub, does consistency checkings and versioning.
The recipes are stored in a XML format - the Food Markup Language (FML). The Food Generator converts the recipes to the docbook format using XSLT.
In addition to the generated contents, there are manually edited contents in the docbook format, like an introduction why I'm writing Food! or information how I came to use the domain food-dictator.
A central docbook document combines the manually edited and generated content. Various output formats are generated using a customized set of docbook-xsl stylesheets and the accompanying tool chain consisting of XSLT processor, Apache FOP, etc.
Food Generator uses command line options to define configuration options to control settings, such as output formats, release options and validation settings. Command line options can appear in any order.