What (How many) documentation syntax specifications exist?
Almost every medium software development organization seems to have their own. Often they are included under the umbrella of "coding style guidelines".
Is there a standard documentation syntax?
There are a few standards that I am aware of which have some widespread use. This is surely not a comprehensive list:
- JavaDoc
- The C# XML documentation format (ECMA-334)
- QDoc (sometimes confused as being the Doxygen)
- RubyDoc
- Plain Old Documentation (POD)
Who is defining this standard?
There is no standard.
Is there an official committee or body (like there is one for defining C++ standards)?
Not really, though the C# XML documentation format is managed by ECMA, which is a standards organization.
Or has "doxygen" become the de-facto standard?
Doxygen is not a standard. It recognizes a number of standards. See http://www.doxygen.nl/manual/features.html.
Typically most people use doxygen to generate docs they wrote while loosely following either the QDoc standard or the JavaDoc standard. Often when people talk of "the" doxygen standard, more often than not they mean the QDoc documentation style, plus some arbitrary usage of doxygen extensions. My experience is that most organization using doxygen aren't really following any particular convention very rigidly, simply because doxygen doesn't enforce one.
...it is far from obvious that doxygen is defining any kind of specification!
It isn't.
doxygen is simply a software to extract in-code documentation and present it in beautiful HTML pages.
Yes exactly. It also supports XML, Latex, RTF, and UNIX "man" page outputs.
Looking at the doxygen front page, I could even think that doxygen could use any documentation syntax defined in 3rd party specifications and extract it and output it as HTML.
Not any, but many.
Also, it is interesting to note that the doxygen web site does not capitalize the word doxygen, as if it were not the brand of their software but a common noun (well, is it?)
Its not a commercial product, Dimitri doesn't care much about branding.
What is doxygen really?
A documentation generation tool.
I am particularly confused as to the relationship between doxygen and other code parsers like ANTLR, boost-spirit, Ragel...
Those are parsing libraries.
For example, what is it that doxygen can do that ANTLR cannot, and that ANTLR can that doxygen cannot?
Libraries like ANTLR are used to build software, while doxygen is a specialized tool for generating documentation. So while you could use ANTLR to write a documentation generator, you wouldn't want to use doxygen to build a compiler (I don't say can't, because surely you could, I have seen stranger things).
Is there any other documentation syntax specification?
Already answered above.
Hope this helps.