ospam - An SGML System Conforming to International Standard ISO 8879 -- Standard Generalized Markup Language
ospam [-Cehilprvx] [-ccatalog_file] [-Ddirectory] [-ffile] [-mmarkup_option] [-oentity_name] [-wwarning_type] [sysid...]
ospam (OpenJade SP Add Markup) is an SGML markup stream editor implemented using the OpenSP parser. ospam parses the SGML document contained in sysid and copies to the standard output the portion of the document entity containing the document instance, adding or changing markup as specified by the -m options. The -p option can be used to include the SGML declaration and prolog in the output. The -o option can be used to output other entities. The -x option can be used to expand entity references.
The following options are available:
omittag Add tags that were omitted using omitted tag minimization. End tags that were omitted because the element has a declared content of EMPTY or an explicit content reference will not be added.
shortref Replace short references by named entity references.
net Change null end-tags into unminimized end-tags, and change net-enabling start-tags into unminimized start-tags.
emptytag Change empty tags into unminimized tags.
unclosed Change unclosed tags into unminimized tags.
attname Add omitted attribute names and vis.
attvalue Add literal delimiters omitted from attribute values.
attspec Add omitted attribute specifications.
current Add omitted attribute specifications for current attributes. This option is implied by the attspec option.
shorttag Equivalent to combination of net, emptytag, unclosed, attname, attvalue and attspec options.
rank Add omitted rank suffixes.
reserved Put reserved names in upper-case.
ms Remove marked section declarations whose effective status is IGNORE, and replace each marked section declaration whose effective status is INCLUDE by its marked section. In the document instance, empty comments will be added before or after the marked section declaration to ensure that ignored record ends remain ignored.
Multiple -m options are allowed.
Omitted tags are added at the point where they are implied by the SGML parser (except as modified by the -h option); this is often not quite where they are wanted.
The case of general delimiters is not preserved.
Incorrect results may be produced if a variant concrete syntax is used which is such that there are delimiters in markup to be added that have a prefix that is a proper suffix of some other delimiter.
If an entity reference in a default value uses the default entity and an entity with that name is subsequently defined and that default value is added to the document instance, then the resulting document may not be equivalent to the original document. ospam will give a warning when the first two conditions are met.