Next Previous Contents

7. Errors and Error Messages

7.1 Errors That Don't Create Error Messages

A major error is to forget to put a <p>. tag after a section heading. Then there is no end to the section heading and all the following paragraphs become part of the section heading and get into the table of contents. Linuxdoc should be improved to spot this error. To spot it manually, look at the table of contents in html or text format. Fixing it requires just adding the missing p-tag.

7.2 Actual Error Messages

When you are running the linuxdoc program (sgml2html or sgml2txt for example) you are likely to see some error messages. You need to edit your document and fix the errors.

Omission of closing quotes is a common error. If you get an error message that makes no sense and notice that at the error location are some quotes (" ") that are OK, then the likely error is that you have previously typed an opening quote with no closing quote. Like: <.... id="my home page > so linuxdoc thinks that the next quote, which may be many paragraphs after the missing quote location, is the closing quote. Then after the false closing quote it expects a > to finish the tag but doesn't find one. To find and fix the missing quote, just search backwards for a ".

A single error can cause a lot of error messages. In the example above, a number of tags may be inside erroneous quotes that shouldn't have been inside any quotes. So the linuxdoc will not find these tags. As a result, it will not know that a certain tag is open and if it finds a closing tag it will tell you that that tag was not open. For example, if the <itemize> tag was missed, then <item> tags may make no sense to linuxdoc and it will report an error for each such tag found beyond the false closing quote.

One thing you should know is that the tag names are not case sensitive so the error messages will show tag names in upper case (capital letters) even though you typed them in lower case.

To understand the error messages better requires an understanding of the jargon on sgml which you don't really need to learn unless you get errors which you can't seem to get fixed and you don't understand the error message. The following sector is about such jargon.


Next Previous Contents