
SP−spam(SP Add Markup)は,nsgmlsと同じパッケージにある,国際標準ISO8879(文書記述言語)に適合したSGMLシステムであり,sgmlnormよりも洗練された正規化機能を持っています。
spamのコマンドラインは,次のとおりです。
spam [ -Cehilprvx ] [ -ccatfile ] [ -Ddirectory ] [ -ferrfile ] [ -mmarkup_option ] [ -oentity_name ] [ -wwarning_type ] docfile... > normfile
spamは,SGML文書docfile…を解析し,さらに,-mオプションで指定されたマーク付けを追加したり変更したりして,文書実現値を含んでいる文書実体の部分を出力します。
次のオプションが利用可能です。
-h
内部実体の始めから省略されたタグを検出します。
-l
名前の大文字は,小文字に変換します。
-mmarkup_option
次のmarkup_optionによって出力の中のマーク付けを変更します。
omittag省略タグ最小化を用いて,省略されたタグを追加します。
shortref名付けられた実体参照によって短縮参照を置き換えます。
net空終了タグを最小化しない終了タグに変更し,net(簡略終了タグ)可能開始タグを最小化しない開始タグに変更します。
emptytag空のタグを最小化しないタグに変更します。
unclosed閉じていないタグを最小化しないタグに変更します。
attname省略された属性名と値標識を追加します。
attvalue属性値から省略された表記の区切り子を追加します。
attspec省略された属性指定を追加します。
current現在の属性で省略された属性指定を追加します。
shorttagnet,emptytag,unclosed,attname,attvalue,attspecのオプションの組合せと同じです。
rank省略された付番を追加します。
reserved予約名を大文字にします。
ms有効な状態がIGNOREであるマーク区間宣言を取り除き,さらに,そのマーク区間によって有効な状態がINCLUDEである各々のマーク区間宣言を置き換えます。
-oentity_name
文書実体の代わりに一般実体名を出力します。
-p
SGML宣言と前書きを含んでいる文書実体の部分を先に出力します。このオプションが2回以上指定される場合,前書きにおいて宣言の間で生じているすべての実体参照が拡張されます。これは,実体参照が一つでもあれば,文書型定義の外部部分集合を含んでいる実体への暗黙の参照を含みます。SGML宣言がカタログファイルにおいてSGMLDECL記述によって指定された場合,SGML宣言は含まれないことに注意して下さい。
-r
実体を出力している時,記録開始文字(RS)と記録終了文字(RE)に対する変換を行ないません。一般的には,実体は記憶管理系属性records=asisを持ちます。
-x
変更された実体への参照を拡張します。このオプションが2回以上指定される場合,タグを含む実体へのすべての参照が拡張されます。
-ccatfile -C -Ddirectory -e -ferrfile -iname -v -wwarning_type
これらはnsgmlsのSPオプションと同じ効果があります。
(1998年1月記)