find-start condition?


A find-start rule in an OmniMark program specifies actions to be performed at the beginning of processing an input document.

find-start rules are automatically invoked on the main input of a cross-translation, up-translation, or context-translation. A find-start rule is allowed only in up-translation, cross-translation, or context-translation programs .

The condition in the header of a find-start rule can depend on switches set on the command line, streams opened on the command line, and actions in previously performed find-start or document-start rules.

More than one find-start rule can appear in a program: those whose conditions succeed are performed in the order in which they appear in the OmniMark program. No condition need be specified for a find-start rule if none is relevant.

In context-translations or up-translations, initialization actions analogous to those performed in a find-start rule can also be performed using document-start rules. All document-start rules are performed before find-start rules. This allows find-start rules to generate SGML markup which is processed by element rules, while still ensuring that document-start rules are processed before any markup.

Where find-end rules can be used for termination, find-start rules can be used for initialization.