Main ----- Copyright Up Previous Next

What happened to the attitude you used to have at school
What happened to the attitude when you broke all the rules

(The Farm, "Groovy Train")

Messages

hsc is able to produce lots of different warnings and errors when parsing hsc-sources. The are devided into several classes, and there is a possibility to filter out specific messages or whole message classes. There are also possibilities to change the rendering of messages and redirect them to a file, making it easy to integrate hsc into existing developer environments.

Message elements

By default, messages show up as seen below:
file (line#, colum#): class and message-id: message
with being For example, a typical message would be:
    hugo.hsc (17,23): Warning 11: unknown tag <SEPP>

Message classes

Note is a message only for the users information. It can be suppressed using IGNORE.

Bad-style informs the user that his although legal html-code includes constructs that indicate a bad style. It can be suppressed using IGNORE.

Portability-problem informs the user that his although legal html-code includes constructs can lead to problems on old or buggy browsers. It can be suppressed using IGNORE.

Warning tells you that your source includes some problematic parts, that can lead to problems with several browsers. It can be suppressed using IGNORE.

Error indicates that there is something wrong with your html-source. No output is written.

Fatal error tells you that something terrible has happened and there is no way to continue the conversion. No output is written.

There is also another class called ``panic messages'', which are used by hsc to report internal errors. To find out more about them, look at the chapter about ``Known bugs, problems and limitations''.

Message options

There are several CLI options to modify the behavior of hsc's messages:

List of messages

Below you can find a list of messages that might show up when processing hsc sources. Most of them also include a short explanation what could have caused the problem and how to fix it. However, this is not a html-tutorial. Fully understanding these messages requires some experience from the user.

[ 1-10 | 11-20 | 21-30 | 31-40 | 41-50 | 51-60 | 61-70 | 71-80 | 81-.. ]

warning 1: unable to open project-file
The project-file specified could not been open. This indicates no problem, if you specified a project-file using PRJFILE the first time; it will be created automatically after the html-object has successfully been processed.
fatal error 2: project-file corrupt
The data found in the project file are not of the required form. Most likely, the file-format-version is outdated. Remove the old file, hsc will create a new one next time it is invoked.
fatal error 3: unexpected end of file
There are still characters to be read from input, but the file already ends; hsc tells you what it still expects to come.
message 4:
Unused or undocumented.
message 5:
Unused or undocumented.
fatal error 6: can not open file for input
An input file could not been opened. A more detailed message that tells you why is displayed, too.
note 7: stripped tag <tag>
Notifies user that a tag has been removed. This usually happens because the user requested this with one of the CLI-options.
message 8:
Unused or undocumented.
bad style 9: expected heading <Hx>
A heading should not be more than one level below the heading which preceded it. That is, an <H3> element should not follow an <H1> element directly. The first heading showing up in a document should be <H1>.
bad style 10: "click here" syndrome detected
A keyword defined with the special attribute HSC.CLICK-HERE has been found within the text inside an anchor specification.

Ok, now again in English: you used some term like "Click here" inside the text describing a link. This is very clumsy and should be avoided; see Composing Good HTML for details.

error 11: unknown tag <tag>
You refered to an unknown tag or macro.
error 12: tag <tag> occured too often
A tag that is expected to occure only once appeared at least twice. Remove all unneccessary occurences of the tag.
error 13: unmatched end-tag <tag>
You called a end-tag without using the corresponding start-tag before.
warning 14: illegal end-tag nesting
A end-tag appeared where a different end-tag was expected to appear before. Example: instead of
        <B><I>bold and italic</B></I>
you should write
        <B><I>bold and italic</I></B>
warning 15: required tag <tag> missing
A tag that is required for every document is missing.
warning 16: end-tag <tag> missing
You called an start-tag, but didn't end it. Insert the required end-tag.
error 17: unknown tag modifier /modifier
You have used an unknown modifier to define the characteristics of an tag or macro.
warning 18: unknown entity
You used an entity, that hsc doesn't know. This can happen if you made a typo, or the entity has not been defined within hsc.prefs.
warning 19: ";" expected
A semicolon (``;'') has been expected, but didn't occur. For instance, you could have an entity ``&uuml'' instead of ``&uuml;''.
error 20: reference to unknown attribute
You referered to an attribute that doesn't exist at all.
warning 21: path to URI not found: file
A tag points to a local resource that doesn't exist.
warning 22: argument without quote
You passed a value to an attribute, but did not embed it into single or double quotes. This can lead to problems with older browsers.
error 23: empty reference to attribute attrib
An attribute refers to an attribute that has been defined, but no value has been set for. Usually, you try to refer to an attribute inside a macro, that no value has been passed to within the call of the macro.
warning 24: attribute option ``option'' not allowed in this context
You have used an option to define the characteristics of an attribute, which is not allowed to appear at this location.
bad style 25: <BLINK> sucks
Some browser support the non-html-tag <BLINK>. It is used to make text blinking, which annoys many users. Additionally, most of them don't know how to configure their browser that it doesn't blink, so you really should avoid it.
error 26: default value for attribute attrib already set
You tried to assign more than one default value within an attribute declaration. For instance, like in
    <$define HUGO:string="hugo"="or sepp?">
Remove the part corresponding to ``="or sepp?"''.
error 27: attempt to modify constant attribute attrib
You tried to assign a new value to an attribute declared as constant. That is, the attribute option /CONST has been specified when defining it earlier.
fatal error 28: no content within current context
You tried to call <$content> outside any container macro.
error 29: tag <A> without HREF or NAME
An anchor tag has been specified without one of the required attributes HREF or NAME.
error 30: unmatched ">"
A "greater than" sign appeared inside the text. You should write "&gt;" instead. This can also happen, if you made an error calling a tag, and hsc's parser couln't recover.
error 31: expected "element_expected", found "element_found"
A syntax element did not occur where it has been expected.
message 32:
Unused or undocumented.
warning 33: linefeed found inside string
message 34:
Unused or undocumented.
error 35: unknown value value for enumerator attribute attrib
You tried to set an enumerator to a value it doesn't support.
warning 36: server relative URI to uri

An URI-attribute started with a slash (``/'') (like for example ``/image/next.png''), denoting a so called server relative URI. This is a really braindead concept, which might help to save a few bytes in your html-object, but will make your documents unreadable if stored on your local disk, as they depend on a specific server structure.

Normally, hsc is unable to validate links or obtain image sizes of data referenced using server relative URIs because of reasons that should be obvious to everyone.

If you because of some obscure reasons (or simply stupidity) insist on using URIs of such kind, you can set the CLI option SERVERDIR to specifiy the root directory for server relative URIs.

warning 37: tag <tag> is obsolete
The tag was defined within some old html-version, but should not be used any more (eg. <LISTING>).
warning 38: tag <tag> is only used by jerks
This tag is no legal html-tag and is only supported by special browsers.
error 39: custom user message
This text and class of this message can be controlled by the user using <$message>.
fatal error 40: can not open preferences file
The file hsc.prefs could not be found at any of the expected locations.
warning 41: unknown environment variable ``envvar''
The function GetEnv() could not access the environment variable specified an returned an empty value.
error 42: missing value for attribute attrib
Non-boolean attributes require an value set.
error 43: unknown attribute option option
You defined a new attribute, but used an option that is unknown.
error 44: required attribute attrib missing
An attribute that is required has not been set within the call of a tag or macro.
warning 45: unexpected value for attribute attrib: expected ``value'', found ``value''
This message can show up if you have specified GETSIZE when invoking hsc, and have set the attribute WIDTH and/or HEIGHT by hand. It denotes that the values you have used differ from those hsc has evaluated from the image data.
note 46: replaced char by entity
Informs you that a special character (non-7-bit-ASCII) has been replaced by it's corresponding entity.
error 47: illegal white space
A white space occurred at a place where it was not supposed to.
portability problem 48: line feed inside sgml-comment
portability problem 49: ">" inside sgml-comment
portability problem 50: sgml-comment ends inside quotes
The messages#48 to #50 point out problems that are known bugs of several browsers. A general comment on sgml-comments: Try to avoid them, use the <* comment *> tag instead.
warning 51: no entry for document "document" in project data to check id id
This message is active only if you specified a project file when invoking hsc using the option PRJFILE. It tell you that a reference to a local id within a document could not be checked because the document linked to is not mentioned in the project file.

Usually, this happens when you did not process the above mentioned document with a project file specified before. Do not worry about that too much, after processing all documents of your project at least once, this message usually does not show up any more.

If it still is there, then you are refering to documents that are part of none or another project using another project-file; if so, there is no work-around for this case.
error 52: redefined end tag <tag>
You tried to redefine an end macro.
error 53: unmatched conditional <$else|$elseif>
An <$else> tag has been at an unexptected position. Usually, a single preceding <$if> has two or more corresponding <$else> tags assigned.
warning 54: calling external command returned value
You have invoked a shell-command using <$exec> and it returned a value unequal to zero, which usually denotes an error while processing the command. For error analysis, look at the output that the command (hopefully) has made.
warning 55: text outside sgml-comment context
This message often shows up, if you are not using an even number of hypens (``-'') as delimters inside your source. For example,
<!-------->
(8 hyphens) works fine, whereas
<!--------->
(9 hyphens) will cause problems.
message 56:
Unused or undocumented.
error 57: no start tag for end tag <tag>
An end tag has been detected without it's corresponding start tag occuring before.
portability problem 58: icon-entity entity found
Icon-entities are not (yet) widely supported.
warning 59: redefined tag <tag>
You have just redefined a tag or macro that has already been declared before. The previous declaration will be thrown away.
error 60: tag <tag> must be inside tag <tag>
Before you are allowed to use the first tag, the second tag has to occure before. Example: <INPUT> may only occure inside <FORM>.
error 61: tag <tag> not allowed within tag <tag>
A tag occurs inside another tag that does not allow this. For example, you can't recursively use <A> inside <A>.
error 62: no attributes allowed for end-tags
You tried to pass values to a end-tag or macro. If you need an attribute for a end-macro only, you still have to define and pass it within the start-macro; the end-macro will have access to all these attributes and its values.
warning 63: redefinition of attribute attrib
You redefined an alredy existing attribute. If this occures during the definition of a new macro, you just tried to give two arguments the same name.
error 64: illegal attribute identifier "attribute_name"
You have tried to use an attribute name which contains characters not allowed for that. Legal characters for attribute names are letters, digits, underscore (``_''), period (``.'') and hyphen (``-'').
error 65: unknown binary operator "operator"
Within an expression, you have used an binary operator that is not one of those mentioned in the list of operators.
error 66: illegal end-tag
You tried to use a simple tag as a container, for example </IMG>
bad style 67: recommended tag <tag> missing
A tag that ought to appear is missing.
note 68: unknown filetype
hsc could not determine the size of a link destination.
error 69: illegal entity definition
Somethings wrong with a <$defent> or <$deficon> call.
warning 70: can not strip special tag <tag>
You have tried to strip one of hsc's special tags using the CLI-option STRIPTAGS. This does not make much sense, because all these tags will not show up in the output anyway.
error 71: illegal numeric value value for attribute attrib/entity
A numeric value must only consist of letters. Only integer values are allowed, therefor even a period (``.'') must not be used.
warning 72: illegal color value
A color value must fit the template ``#rrggbb'' or be one of the values declared in the special attribute HSC.COLOR-NAMES defined in hsc.prefs
message 73:
Unused or undocumented.
warning 74: unknown id id id
You forgot to specify the ID mentioned using <A NAME=..>, or just made a typo.
warning 75: local id id id already declared
You tried to redefine an ID that has already been declared before within the current document.
bad style 76: frames are disgusting
This message should need no comment; anyway, read Why Frames Suck for more details.
note 77: replacing icon-entity
A icon-entity has been found is was replaced by an <IMG>. This message will only show up if you have passed the CLI option ICONBASE.
bad style 78: succeeding white space for tag <tag>
See below.
bad style 79: preceding white space for end tag <tag>
These two messages point out that instead of (read the underscore (``_'')) as a blank)
<STRONG>__important__</STRONG>
you better should use
<STRONG>important</STRONG>
It only affects tags like <A>, <TITLE>, headings and physical/locigal styles.
message 80:
Unused or undocumented.
warning 81: value for attribute attrib requires quotes
If a attribute value contains any characters other then letters, digits, period (``.'') or hyphen (``-''), it needs to be quoted.
note 82: changed quotes for attribute attrib from [style] to [style]
The quote style has been changed for a specific attribute. This message will only show up if you have passed the CLI option QUOTESTYLE.