このテーマには4DのXML SAXコマンドがまとめられています。
XMLに関する一般的な情報や、文字セット、DOMとSAXの相違点などについてはXML DOMコマンドの概要の節を参照してください。
プリエンプティブモードについての注記: プリエンプティブプロセスによって作成された XML 参照はそのプロセスにおいてのみ使用することができます。コオペラティブプロセスによって作成された XML 参照はすべてのコオペラティブプロセスによって使用することができますが、プリエンプティブプロセスによっては使用できません。
SAXコマンドは4D標準のドキュメント参照を使用して動作します (DocRef, 時間型参照)。つまりSEND PACKET や Append documentのようなドキュメントを管理するコマンドとともにこれらのコマンドを使用できます。
プログラムによるXMLドキュメントの作成および開くことは、Create document や Open documentコマンドを使用して実行します。それ以降、これらのドキュメントに対するXMLコマンドの使用は、自動でエンコーディングなどのXMLメカニズムを適用します。例えば <?xml version="1.0" encoding="… encoding …" standalone = "no "?> は自動でドキュメントに書き込まれます。
Note: SAXコマンドで読み込まれるドキュメントはOpen document コマンドにおいて読み込みのみモードで開かれなければなりません。これにより、"標準"およびXMLドキュメントを同時に開くとき、4DとXercesラ イブラリの間でのコンフリクトが避けられます。読み書きモードで開いたドキュメントでSAX解析コマンドを実行すると、警告が表示され、解析を行うことは できません。
CLOSE DOCUMENT コマンドを使用してXMLドキュメントを閉じなければなりません。XML要素が開かれていると、それらは自動で閉じられます。
XMLにおいて、改行はそれがXML要素の内側あるいは間いずれにあるかにかかわらず、大きな意味を持ちません。内部的にXMLは標準のLF文字を行区切り文字として使用します。
読み込みや書き出し処理の間、行区切り文字は変換されることがあります。読み込み時、XMLパーサーはCRLF文字 (Windowsの標準改行) をLF文字に置き換えます。書き出し時、LF文字はmacOSではCR文字に、WindowsではCRLF文字に置き換えられます。
改行を保持したい場合、その部分をXML CDATAセクションに含めます。そうすることによりXMLパーサーはその部分を解析対象としなくなります。CRLF文字の代わりに"<br/>"を使用することもできます。これは明示的な改行文字で、パーサーによる解析は行われません。