or an XML dtd (tbook or DocBook?) plus appropriate tools. I'm ruling out Word (having wrestled with it at work), and am reluctant to use anything similar like OpenOffice. I have used LaTeX for some things in the past.
I was in a similar situation a few years ago (writing my PhD thesis). I think you are absolutely right when you avoid Word and everything Wordish. Making a big document with Word requires a lot of knowledge about what you should avoid. And in the end you'll still spend your nights wondering why the **** the crossreferences or page numbers go wrong. I ended up using LaTeX. I didn't know much about ConTeXt by that time, and also had a lot of maths in the book. I am not sure which one I'd take, if I could choose right now. I think your choice is one of the following: LaTeX, DocBook, ConTeXt, ConTeXt+XML. However, your wishlist looks a bit difficult. A few comments:
1) future-proofing.
LaTeX is more common. On the other hand, you can (and should) take a snapshot of your working environment when you've finished what you're doing. All TeX variants (and XML stuff) are future-proof in the sense that all text and images are easy to recover if needed. Use only PDF, JPG, and PNG for images to be on the safe side. Reproducing the same layout depends on many other issues, even small changes in font metrics may change things. It is also well possible that 30 years from now nobody remembers ConTeXt (or DocBook or LaTeX or TeX). XML is in a way a safe bet, but even there you're up to some programming if the tools disappear.
2) semantic rather than layout-oriented markup as much as possible.
I think this is something you can do with all alternatives. In a typical ConTeXt (and LaTeX) file there is a lot of layout stuff in the beginning, but in the document itself the tagging is really independent from layout, if you've done the preliminary work right. At least I consider it bad style, if you use explicit font switches or equivalent in a document. However, even if you think the layout is not that important, you'll need to do a lot of things with it before having a printable book. In this sense ConTeXt seems to give a lot of possibilities, but the documentation is not very complete. LaTeX is a bit more difficult, and you need to do more TeXing, but in practice you don't as someone else has done it before (packages). Fonts are difficult in any case :) I am not a DocBook specialist, but my impression is that it is really not so much geared towards printable layout. This, of course, makes the markup separate from the layout. This is the key in making successful documents with any system: The content and the layout are two different layers. Word processing programs mix them into a sorry mess, but for the smoothest workflow they should be separated. It should even be possible for different people do do carry out the two different tasks.
3) relatively easy integration with some form of bibliographic database(ish) system (bibtex would do).
(.*)TeX will do.
4) ability to produce pdf's, html, and rtf versions (for interoperation with Word-users) at least.
PDF is a must. HTML can be reproduced from (.*)TeX, but DocBook is the only one designed with HTML in mind. On the other hand this may reflect to the print quality; TeX is a real typesetting system. There are ways to make TeX out of DocBook (e.g. passiveTeX), but the quality is not always as good as with other alternatives. HTML is more a matter of taste. A nicely working PDF is -- IMHO -- much easier to use. It is easy to search from the complete document, and links from the index and ToC make the use straightforward. Modern displays are sufficiently high-res for PDF to be read on-screen. Also, printing a complete PDF document is easy. The situation becomes much more complicated if you need RTF. It is a completely different story, a word processor editable format. I guess you don't really want to distribute your work in editable format, and PDF can be read with virtually any computer. So, I'd concentrate on making a visually pleasing high-quality PDF with working links in it. That will make most readers happy.
5) no need for me to write any code. I used to be a programmer, and when I left, promised myself, my wife, and my cat that I would never write a line of code again. I don't mind a bit of TeXish fiddling if *absolutely* necessary.
All alternatives are equivalent in this sense. Of course, if you plan on doing something with ConTeXt/XML, that requires some work, but not really programming. And all layout stuff with (.*)TeX requires some serious head scratching in the beginning, anyway.
ConTeXt seems to fit the bill for 1,3 and 5. I'm not sure about 4 (html? rtf?) or 2 (I haven't had a proper look at the nature of the available macros yet) .
I'd say it'll fill number 2, as well. But RTF, no. There may be kludges to make it kind of, you know, a bit like, errr, RTFish, but nothing really good. The reason is simple: the two things are far apart from each other. - Ville