A few more minor bugs in SGML files

Hi, these comments are based on the most recent source files in
the repository, as of roughly 18:00 ET today. I found a few more
(generally minor, I think) bugs in the SGML files from HTML 4.0.

If I make that HTML decl charset error I brought up earlier go away
by changing it to a smaller number like 65376, a new error comes up
regarding APPINFO:

> anansi: gerald/CVS-local/WWW/MarkUp/Group/html4-src> nsgmls -s -c sgml/HTML4.cat sgml/HTML4.decl ~/test.html
> nsgmls:sgml/HTML4.decl:76:0:E: delimiter ">" invalid: only "APPINFO" and parameter separators are allowed
> nsgmls:sgml/HTML4.decl:76:0:E: cannot continue because of previous errors

I note that in other HTML decl's, like the one at:

      http://www.w3.org/TR/WD-html40-970708/sgml/HTML4.decl

there is a line at the very bottom that says:

      APPINFO    NONE

but that line isn't in the current HTML 4 decl.

Adding that line back into the decl makes the error go away.

I don't know why that line was removed; it might have been done
purposefully, but I suspect it was just accidentally lost sometime.
(It *might* have been lost for a reason; please don't take this
report as me asserting that it actually belongs there; I'm only
noting that reinstating it makes the error go away.)

OK, so if I add that line to the HTML 4 decl, and try again, I get:

> nsgmls:sgml/HTML4-strict.dtd:537:2:Q: number of attribute names and name tokens (49) exceeds ATTCNT (40)
> nsgmls:sgml/HTML4-strict.dtd:763:2:Q: number of attribute names and name tokens (41) exceeds ATTCNT (40)
> nsgmls:sgml/HTML4-strict.dtd:776:15:E: parameter entity "IAlign" not defined
> nsgmls:sgml/HTML4-strict.dtd:776:25:E: delimiter "#" invalid: only "CDATA", "ENTITIES", "ENTITY", "ID", "IDREF", "IDREFS", "NAME", "NAMES", "NMTOKEN", "NMTOKENS", "NOTATION", "NUMBER", "NUMBERS", "NUTOKEN", "NUTOKENS" and parameter separators are allowe

d
> nsgmls:sgml/HTML4-strict.dtd:781:5:E: parameter entity "HTML.Frameset" not defined

looking at the first couple errors:

> nsgmls:sgml/HTML4-strict.dtd:537:2:Q: number of attribute names and name tokens (49) exceeds ATTCNT (40)
> nsgmls:sgml/HTML4-strict.dtd:763:2:Q: number of attribute names and name tokens (41) exceeds ATTCNT (40)

those go away if I add "ATTCNT 50" to the QUANTITY section of HTML4.decl,
(I put it just before the GRPCNT stuff but I don't know where it belongs,
if anywhere). It might be better to make this "ATTCNT 64" or something
else higher than 50 just to have some extra room if necessary. (By the
way, I note that the decl in the 970708 snapshot has "ATTCNT 100".)

next 2 errors:

> nsgmls:sgml/HTML4-strict.dtd:776:15:E: parameter entity "IAlign" not defined
> nsgmls:sgml/HTML4-strict.dtd:776:25:E: delimiter "#" invalid: only "CDATA", "ENTITIES", "ENTITY", "ID", "IDREF", "IDREFS", "NAME", "NAMES", "NMTOKEN", "NMTOKENS", "NOTATION", "NUMBER", "NUMBERS", "NUTOKEN", "NUTOKENS" and parameter separators are allowe

d

It seems that %IAlign is defined in HTML4-loose.dtd, but not
HTML4-strict.dtd. Maybe you need to add this:

<!ENTITY % IAlign "(top|middle|bottom|left|right)"  -- center? -->

to HTML4-strict.dtd, just below the %Pixels definition?
(Doing so makes the error go away.)

last one:

> nsgmls:sgml/HTML4-strict.dtd:781:5:E: parameter entity "HTML.Frameset" not defined

I think you need to add these lines:

<!-- Frameset Feature Switch -->
<!ENTITY % HTML.Frameset "IGNORE">

to HTML4-strict.dtd, just before the %HTML.Frameset definition.

Trying nsgmls again... it works!

After the modifications listed above, I can use the HTML 4.0 materials
to validate documents using any of the 3 doctypes (4.0, Transitional,
or Frameset).

By the way, I really like the way you divided up these versions,
making strict the "normal" case and requiring people to put
"Transitional" in documents for the loose version. Nice work!
That is exactly how I would have chosen to do things.

I am basing my comments on the most recent stuff from the CVS
repository because I think that's easiest for you (so you don't
get reports of stuff you have already fixed); if you would rather
I based my comments on a published snapshot, please let me know.

Gerald
-- 
Gerald Oskoboiny            <gerald@w3.org>  +1 617 253 2920
System Administrator, W3C   http://www.w3.org/People/Gerald/
World Wide Web Consortium, MIT Labatory for Computer Science
545 Technology Square, Room NE43-353  Cambridge MA 02139 USA

Received on Tuesday, 28 October 1997 20:05:10 UTC