|
|||||
Record ends in SGML comments, marked sections, and processing instructions | |||||
Prerequisite Concepts |
Record ends occurring in processing instruction text, IGNORE marked section text, and the text of SGML comments are subject to processing as record ends occurring in PCDATA. OmniMark converts the record ends to the value specified by the sgml-out
action. If the sgml-out
action specifies #none
, record-ends are provided to the markup processor in the form in which they come from the SGML parser.
The SGML standard (ISO 8879) doesn't address the processing of text in processing instructions, IGNORE marked sections, or SGML comments, as it does for data content. As a consequence, in these types of text, OmniMark's built-in SGML parser does not discard record-start characters, as it usually does in data content and attribute value text. When the sgml-out
action specifies #none
, record-start characters will be present in the text.
When the sgml-out
action specifies a string:
This processing is different than that for data content and attribute value text in which:
sgml-out
string, and
This processing ensures that, unless character references are used in strange ways, all "newlines" come out the same.
The conversion of the record-end/record-start sequence to the sgml-out
string occurs when the %c
operator is processing in a marked-section ignore
rule or an sgml-comment
rule, just as in a data-content
rule. For a processing-instruction
rule, the conversion occurs prior to the text of the processing instruction being matched to the pattern at the head of the rule.
The processing of record-starts and record-ends in the text of processing instructions differs between different versions of OmniMark:
sgml-out
action.
Prerequisite Concepts Record boundaries: manipulating |
---- |