Dan,
There has really never been a single "CALS" DTD. 38784 pretty much started things in the early 90's and it still remains an SGML DTD.
28001 tried to be the 'all encompassing' DTD, but failed miserably.
NAVSEAC2 is one of the worst DTD's in the DOD world that I've seen. It does not enforce specification requirements and pretty much allows the author to do dumb things (like put a couple of 'forewords' in the manual BEFORE the cover page). I haven't really looked at the NAVSEAC2 XML DTD or schema, but if they are done like the SGML DTD, I shudder.
The Army switched their 40051 DTD from SGML to XML in 2000. The biggest problem, as you said, was how to deal with the SGML 'exceptions'. When we did it, for inclusions, we went to the lowest element level and placed them there. Some people were not happy when tables and figures were no longer allowed just anywhere, but they've gotten used to it.
Exclusions were a bit more difficult to write and often resulted in new elements (like a <para> and a <trim.para>, the <trim.para> containing fewer elements than the regular <para> to preclude allowing what was once and exclusion).
S1000D has basically stopped using DTD and migrated to schema. When they did their SGML to XML, they did inclusions (mainly tables, figures and foldouts) as an entity they tacked on nearly everywhere. So now if you have a requirement for a single paragraph of text, it may be repeatable because the group allows multiple tables, figures, or foldouts.
I did most of the 40051 conversion so if you have some other questions, drop me a note off line.
Lynn
---- Dan Vint <dvint@dvint.com> wrote:
> Well I was told by my Navy counter part/customer that they weren't sure at
> how well it was rationalized when the conversion was made. Has anyone used
> this to develop to XML but deliver offically to the SGML version? What I'm
> worried about is being tripped up by an exclusion that would invalidate my
> XML.
>
> I'll go take a closer look at this in more detail. I knew it was out there
> but had been warned off on using it.
>
> ..dan
>