python:xml.sax.handler --- SAX 处理句柄的基类
简介
SAX API 定义了五种处理句柄:内容句柄、DTD 句柄、错误句柄、实体解析器以及词法句柄。 应用程序通常只需要实现他们感兴趣的事件对应的接口;他们可以在单个对象或多个对象中实现这些接口。 处理句柄的实现应当继承自 xml.sax.handler 模块所提供的基类,以便所有方法都能获得默认的实现。
class xml.sax.handler.ContentHandler
这是 SAX 中的主回调接口,也是对应用程序来说最重要的一个接口。 此接口中事件的顺序反映了文档中信息的顺序。
class xml.sax.handler.DTDHandler
处理 DTD 事件。
这个接口仅指定了基本解析(未解析的实体和属性)所需的那些 DTD 事件。
class xml.sax.handler.EntityResolver
用于解析实体的基本接口。 如果你创建了实现此接口的对象,然后用你的解析器注册该对象,该解析器将调用你的对象中的方法来解析所有外部实体。
class xml.sax.handler.ErrorHandler
解析器用来向应用程序表示错误和警告的接口。 这个对象的方法控制错误是要立即转换为异常还是以某种其他该来来处理。
class xml.sax.handler.LexicalHandler
解析器用来代表低频度事件的接口,这些事件可能是许多应用程序都不感兴趣的。
除了这些类,xml.sax.handler 还提供了表示特性和属性名称的符号常量。
xml.sax.handler.feature_namespaces
值: “http://xml.org/sax/features/namespaces”
true: 执行命名空间处理。
false: 可选择不执行命名空间处理 (这意味着 namespace-prefixes; default)。
access: (解析) 只读; (不解析) 读/写
xml.sax.handler.feature_namespace_prefixes
值: “http://xml.org/sax/features/namespace-prefixes”
true: 报告原始的带前缀名称和用于命名空间声明的属性。
false: 不报告用于命名空间声明的属性,可选择不报告原始的带前缀名称(默认)。
access: (解析) 只读; (不解析) 读/写
xml.sax.handler.feature_string_interning
值: “http://xml.org/sax/features/string-interning”
true: 所有元素名称、前缀、属性名称、命名空间 URI 以及本地名称都使用内置的 intern 函数进行内化。
false: 名称不要求被内化,但也可以被内化(默认)。
access: (解析) 只读; (不解析) 读/写
xml.sax.handler.feature_validation
值: “http://xml.org/sax/features/validation”
true: 报告所有的验证错误(包括 external-general-entities 和 external-parameter-entities)。
false: 不报告验证错误。
access: (解析) 只读; (不解析) 读/写
xml.sax.handler.feature_external_ges
值: “http://xml.org/sax/features/external-genera