XML 文書の SAX 構文解析時には、いくつかの XML イベントがユーザーの XML-SAX 処理プロシージャーに受け渡されます。 ユーザーのプロシージャーにあるイベントを識別するには、*XML で始まる特殊名 (例えば *XML_START_ELEMENT) を使用します。
ほとんどのイベントの場合、処理プロシージャーにはそのイベントに関連付けられた値が渡されます。 例えば *XML_START_ELEMENT イベントの場合、その値は XML 要素の名前です。
イベント | 値 |
---|---|
1. 最初の XML 要素の前に発見されたイベント | |
*XML_START_DOCUMENT | 構文解析が開始されたことを示します |
*XML_VERSION_INFO | XML 宣言からの "version" 値 |
*XML_ENCODING_DECL | XML 宣言からの "encoding" 値 |
*XML_STANDALONE_DECL | XML 宣言からの "standalone" 値 |
*XML_DOCTYPE_DECL | 文書タイプ宣言の値 |
2. XML 要素に関連したイベント | |
*XML_START_ELEMENT | 開始中の XML 要素の名前 |
*XML_CHARS | XML 要素の値 |
*XML_PREDEF_REF | 事前定義参照の値 |
*XML_UCS2_REF | UCS-2 参照の値 |
*XML_UNKNOWN_REF | 不明なエンティティー参照の名前 |
*XML_END_ELEMENT | 終了する XML 要素の名前 |
3. XML 属性に関連したイベント | |
*XML_ATTR_NAME | 属性の名前 |
*XML_ATTR_CHARS | 属性の値 |
*XML_ATTR_PREDEF_REF | 事前定義参照の値 |
*XML_ATTR_UCS2_REF | UCS-2 参照の値 |
*XML_UNKNOWN_ATTR_REF | 不明なエンティティー参照の名前 |
*XML_END_ATTR | 属性の終了を示す |
4. XML 処理命令に関連したイベント | |
*XML_PI_TARGET | ターゲットの名前 |
*XML_PI_DATA | データの値 |
5. XML CDATA セクションに関連したイベント | |
*XML_START_CDATA | CDATA セクションの開始 |
*XML_CHARS | CDATA セクションの値 |
*XML_END_CDATA | CDATA セクションの終了 |
6. その他のイベント | |
*XML_COMMENT | XML コメントの値 |
*XML_EXCEPTION | パーサーによるエラーの発見を示す |
*XML_END_DOCUMENT | 構文解析が終了したことを示す |
この XML 文書の例は、XML イベントの記述で参照されます。
<?xml version="1.0" encoding="ibm-1140" standalone="yes" ?> <!DOCTYPE page [ <!ENTITY abc "ABC Inc"> ]> <!-- This document is just an example --> <sandwich> <bread type="baker's best" supplier="&abc;" /> <?spread please use real mayonnaise ?> <spices attr="+">Salt & pepper</spices> <filling>Cheese, lettuce, tomato, = &xyz; </filling> <![CDATA[We should add a <relish> element in future!]]> </sandwich>junk
注: これは、XML テキストに区切り文字が含まれる場合の唯一のイベントで す。
ストリング・パラメーターの値は、開始および終了の文字列を含む DOCTYPE の値全体です。
'<!DOCTYPE page [LF <!ENTITY abc "ABC Inc">LF]>'(LF は改行文字を表します。)
* x'15'=newline x'05'=tab x'0D'=carriage-return
* x'25'=linefeed x'40'=blank
D whitespaceChr C x'15050D2540'
/free
temp = %trim(value : whitespaceChr);
& | & |
' | ' |
> | < |
< | > |
" | " |
& | & |
' | ' |
> | < |
< | > |
" | " |
注: このパラメーターは、構文解析が 1 バイト文字で実行されている場合でも、UCS-2 文字 (タイプ C) です。
'<![CDATA['
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.