##
5 Expat エラー定数

以下の定数は `xml.parsers.expat` モジュールにおける `errors` オブジェクトで提供されています。これらの定数は、 エラーが発生した際に送出される `ExpatError` 例外オブジェクトのいくつかの属性を解釈する上で便利です。

`errors` オブジェクトは以下の属性を持ちます:

`XML_ERROR_ASYNC_ENTITY`

`XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF`
  属性値中のエンティティ参照が、内部エンティティではなく外部エンティティ を参照しました。

`XML_ERROR_BAD_CHAR_REF`
  文字参照が、XML では正しくない (illegal) 文字を参照しました (例えば `0` や ``&#0;`')。

`XML_ERROR_BINARY_ENTITY_REF`
  エンティティ参照が、記法 (notation) つきで宣言されている エンティティを参照したため、解析できません。

`XML_ERROR_DUPLICATE_ATTRIBUTE`
  一つの属性が一つの開始タグ内に一度より多く使われています。

`XML_ERROR_INCORRECT_ENCODING`

`XML_ERROR_INVALID_TOKEN`
  入力されたバイトが文字に適切に関連付けできない際に送出されます; 例えば、UTF-8 入力ストリームにおける NUL バイト (値 `0`) などです。

`XML_ERROR_JUNK_AFTER_DOC_ELEMENT`
  空白以外の何かがドキュメント要素の後にあります。

`XML_ERROR_MISPLACED_XML_PI`
  入力データの先頭以外の場所に XML 定義が見つかりました。

`XML_ERROR_NO_ELEMENTS`
  このドキュメントには要素が入っていません (XML では全てのドキュメントは 確実にトップレベルの要素を一つ持つよう要求しています)。

`XML_ERROR_NO_MEMORY`
  Expat が内部メモリを確保できませんでした。

`XML_ERROR_PARAM_ENTITY_REF`
  パラメタエンティティが許可されていない場所で見つかりました。

`XML_ERROR_PARTIAL_CHAR`
  入力に不完全な文字が見つかりました。

`XML_ERROR_RECURSIVE_ENTITY_REF`
  エンティティ参照中に、同じエンティティへの別の参照が入っていました; おそらく違う名前で参照しているか、間接的に参照しています。

`XML_ERROR_SYNTAX`
  何らかの仕様化されていない構文エラーに遭遇しました。

`XML_ERROR_TAG_MISMATCH`
  終了タグが最も内側で開かれている開始タグに一致しません。

`XML_ERROR_UNCLOSED_TOKEN`
  何らかの (開始タグのような) トークン が閉じられないまま、 ストリームの終端や次のトークンに遭遇しました。

`XML_ERROR_UNDEFINED_ENTITY`
  定義されていないエンティティへの参照が行われました。

`XML_ERROR_UNKNOWN_ENCODING`
  ドキュメントのエンコードが Expat でサポートされていません。

`XML_ERROR_UNCLOSED_CDATA_SECTION`
  CDATAセクションが閉じられていません。

`XML_ERROR_EXTERNAL_ENTITY_HANDLING`

`XML_ERROR_NOT_STANDALONE`
  XML文書が``standalone''だと宣言されており `NotStandaloneHandler` が設定され `0`が 返されているにもかかわらず、パーサは``standalone''では ないと判別しました。

`XML_ERROR_UNEXPECTED_STATE`

`XML_ERROR_ENTITY_DECLARED_IN_PE`

`XML_ERROR_FEATURE_REQUIRES_XML_DTD`
  その操作を完了するにはDTDのサポートが必要ですが、ExpatがDTDの サポートをしない設定になっています。これは `xml.parsers.expat` モジュールの標準的なビルドでは報告されません。

`XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING`
  パースが始まったあとで動作の変更が要求されました。これはパースが 開始される前にのみ変更可能です。（現在のところ） `UseForeignDTD()` によってのみ送出されます。

`XML_ERROR_UNBOUND_PREFIX`
  名前空間の処理を有効すると宣言されていないプレフィックスが見つかります。

`XML_ERROR_UNDECLARING_PREFIX`
  XML文書はプレフィックスに対応した名前空間宣言を削除しようとしました。

`XML_ERROR_INCOMPLETE_PE`
  パラメータエンティティは不完全なマークアップを含んでいます。

`XML_ERROR_XML_DECL`
  XML文書中に要素がありません。

`XML_ERROR_TEXT_DECL`
  外部エンティティ中のテキスト宣言にエラーがあります。

`XML_ERROR_PUBLICID`
  パブリックID中に許可されていない文字があります。

`XML_ERROR_SUSPENDED`
  要求された操作は一時停止されたパーサで行われていますが、 許可されていない操作です。このエラーは追加の入力を 行なおうとしている場合、もしくはパーサが停止しようと している場合にも送出されます。

`XML_ERROR_NOT_SUSPENDED`
  パーサを一時停止しようとしましたが、停止されませんでした。

`XML_ERROR_ABORTED`
  Pythonアプリケーションには通知されません。

`XML_ERROR_FINISHED`
  要求された操作で、パース対象となる入力が完了したと判断 しましたが、入力は受理されませんでした。このエラーは 追加の入力を行なおうとしている場合、もしくはパーサが 停止しようとしている場合に送出されます。

`XML_ERROR_SUSPEND_PE`