marked-section ignore

rule

Syntax
marked-section ignore condition?
   action+


Purpose

These rules appear in marked sections in the same way that SGML comments do, except they are processed using a marked-section ignore rule rather than an SGML comment rule.

In keeping with clause 10.4.1 of the SGML standard (ISO 8879:1986), all pairs of "<![" and "]]>" within an ignore-marked section, including the opening and closing delimiters, are treated as part of the text of the ignore-marked section.

This means that any marked sections nested within an ignore-marked section, including the opening and closing delimiters, are treated as part of the text of the ignore-marked section.

The following statements apply to marked-section ignore rules:

  • If no marked-section ignore rule is performed for an ignore-marked section, then the text in the marked section is discarded.
  • If an OmniMark program contains no marked-section ignore rules, then all ignore-marked sections are discarded.
  • Only one marked-section ignore rule may be selected for each ignore-marked section. That is, either there must only be one marked-section ignore rule or, if there is more than one marked-section ignore rule, each one of them must have a condition. It is an error for more than one marked-section ignore rule to be selected for an ignore-marked section.
  • The %c operator captures the text of an ignore-marked section. Either %c or suppress must be used exactly once in a marked-section ignore rule. The "u", "l", "s", "h", and "z" modifiers can be used on a %c operator in a marked-section ignore rule.
  • The text of an ignore-marked section consists of all the characters between the DSO delimiter following the status keyword specification and the marked section end (that is, between the "[" following the keyword "ignore" and the "]] > "). The text does not include the surrounding delimiters, but does include any record ends or white space within the marked section.
  • Only marked sections in the document instance are available for processing by an OmniMark program. Marked sections in the DTD are always ignored, whether or not there is any marked-section ignore rule in the OmniMark program.
  • The setting of the sgml-out action determines what happens to record ends in the text of an ignore-marked section.
  • The presence of marked-section ignore rules affects how translate rules match text in and around an ignore-marked section.

Conditions can be added to marked-section ignore rules using the when keyword:

  marked-section ignore when element is p
     output " (the other version says: %c)"
  marked-section ignore when element isnt p
     output "   Note -- the other version says: %c%n"

Related Syntax