> From: Brad Miller [mailto:[EMAIL PROTECTED]
> > I am trying to catch up with all the suggestions and comments > that have been > passing through the list. > I took little snippets from several different emails and added my comments > and what I did to the DTD to try to conform. > I also attached the template. This is a very rough draft and needs more > refinement. For now this validates and can be used as a template with the > new dtd attached. Alright. I got things working with emacs at least at a basic level and I played around a little with the DTD. The results are inline below. The main things I've done is to introduce two "classes" of tags: inline and block. With these, we can allow flexibility in what goes where, without having to allow everything. (I've also removed the "authored by" comment. I'm not trying to take away credit from Brad for his great work, but it doesn't make much sense for a document lots of people are editting.) There is still fine-tuning to be done, but this seems to work in general. A few questions: - Does this look right to everyone? - Where should it go? manual/style/, manual/mod/, ... ? - Should we use a PUBLIC or a SYSTEM identifier. SYSTEM is easier to setup, because we don't need to much with CATALOGs, but I'm not sure what the "right thing" is. As I've mentioned, I really don't know what I'm doing with DTDs, so any comments will be appreciated. Joshua. <?xml version='1.0' encoding='UTF-8' ?> <!ENTITY nbsp " "> <!ENTITY % inlinetags "em | strong | code | a | br | directive | module"> <!ENTITY % blocktags "p | example | note | table | ul | ol | dl | pre"> <!ENTITY % Block "(%blocktags;)*"> <!ENTITY % Inline "(#PCDATA | %inlinetags;)*"> <!ENTITY % BlockOrInline "(#PCDATA | %inlinetags; | %blocktags;)*"> <!ELEMENT modulesynopsis (name , description, status , sourcefile?, identifier? , compatibility? , summary? , seealso* , directivesynopsis+)> <!ELEMENT name (#PCDATA)> <!ELEMENT status (#PCDATA)> <!ELEMENT identifier (#PCDATA)> <!ELEMENT sourcefile (#PCDATA)> <!ELEMENT compatibility %Inline;> <!ELEMENT description %Inline;> <!ELEMENT module (#PCDATA)> <!ELEMENT example (#PCDATA | title | %inlinetags; | %blocktags;)*> <!ELEMENT seealso %Inline;> <!ELEMENT a %Inline;> <!ATTLIST a href CDATA #REQUIRED > <!ELEMENT directivesynopsis (name , description , syntax , default? , contextlist , override? , compatibility? , usage, seealso*)> <!ATTLIST directivesynopsis type CDATA #IMPLIED > <!ATTLIST directivesynopsis location CDATA #IMPLIED > <!ELEMENT syntax %Inline;> <!ELEMENT default (#PCDATA)> <!ELEMENT contextlist (context+)+> <!ELEMENT context (#PCDATA)> <!ELEMENT override (#PCDATA)> <!ELEMENT note (#PCDATA | title | %inlinetags; | %blocktags;)*> <!ELEMENT title %Inline;> <!ELEMENT p %Inline;> <!ELEMENT ul (li+)> <!ELEMENT ol (li+)> <!ELEMENT li %Inline;> <!ELEMENT strong %Inline;> <!ELEMENT br EMPTY> <!ELEMENT table (tr)+> <!ELEMENT tr (td)+> <!ELEMENT td %BlockOrInline;> <!ATTLIST td colspan CDATA #IMPLIED rowspan CDATA #IMPLIED class CDATA #IMPLIED > <!ELEMENT directive (#PCDATA)> <!ATTLIST directive module CDATA #IMPLIED type CDATA #IMPLIED > <!ELEMENT code %Inline;> <!ELEMENT dl (dd | dt)+> <!ELEMENT dt %Inline;> <!ELEMENT dd %BlockOrInline;> <!ELEMENT em %Inline;> <!ELEMENT usage %Block;> <!ELEMENT summary %Block;> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]