flood DTD

Initial version of flood DTD is right here -- flood.dtd. If you want to use it, you have to prefix your flood config files with such element:

<!DOCTYPE flood SYSTEM "/path/to/flood.dtd">

Of course, you have to substitute /path/to with real path to flood.dtd. Later we schould create public entity for this file and make it available with URL:

http://httpd.apache.org/test/flood/flood.dtd

Then all example config files would begin with:

<!DOCTYPE flood PUBLIC "-//ASF//DTD Flood v1.1//EN" "http://httpd.apache.org/test/flood/flood.dtd">

So validating parsers could fetch DTD from our website, and DTD file in examples dir would be for situations where validating parser refuses to fetch data from network (yes... there are such parsers).

Ussage example

You need validating parser first. This isn't so easy to find. Most XML parsers only parse (e.g. expat). Personally, I use xmllint from GNOME libxml2, because it's packed with features and quite fast. Here's typical cmd line

$ xmllint --noout --valid /path/to/flood-conf.xml

If you get no output at all, and $? equals 0, then your config is OK. If you get error, you'll also get content model of your config file (DTD style), which is really neat, since you can figure out what part of your DTD sucks big time.