Show More
Commit Description:
Merge pull request #17 from nattee/master...
Commit Description:
Merge pull request #17 from nattee/master
upgrade to current working snapshot
References:
File last commit:
Show/Diff file:
Action:
lib/assets/Lib/xml/dom/__init__.py
| 140 lines
| 4.1 KiB
| text/x-python
| PythonLexer
|
r584 | """W3C Document Object Model implementation for Python. | |||
The Python mapping of the Document Object Model is documented in the | ||||
Python Library Reference in the section on the xml.dom package. | ||||
This package contains the following modules: | ||||
minidom -- A simple implementation of the Level 1 DOM with namespace | ||||
support added (based on the Level 2 specification) and other | ||||
minor Level 2 functionality. | ||||
pulldom -- DOM builder supporting on-demand tree-building for selected | ||||
subtrees of the document. | ||||
""" | ||||
class Node: | ||||
"""Class giving the NodeType constants.""" | ||||
__slots__ = () | ||||
# DOM implementations may use this as a base class for their own | ||||
# Node implementations. If they don't, the constants defined here | ||||
# should still be used as the canonical definitions as they match | ||||
# the values given in the W3C recommendation. Client code can | ||||
# safely refer to these values in all tests of Node.nodeType | ||||
# values. | ||||
ELEMENT_NODE = 1 | ||||
ATTRIBUTE_NODE = 2 | ||||
TEXT_NODE = 3 | ||||
CDATA_SECTION_NODE = 4 | ||||
ENTITY_REFERENCE_NODE = 5 | ||||
ENTITY_NODE = 6 | ||||
PROCESSING_INSTRUCTION_NODE = 7 | ||||
COMMENT_NODE = 8 | ||||
DOCUMENT_NODE = 9 | ||||
DOCUMENT_TYPE_NODE = 10 | ||||
DOCUMENT_FRAGMENT_NODE = 11 | ||||
NOTATION_NODE = 12 | ||||
#ExceptionCode | ||||
INDEX_SIZE_ERR = 1 | ||||
DOMSTRING_SIZE_ERR = 2 | ||||
HIERARCHY_REQUEST_ERR = 3 | ||||
WRONG_DOCUMENT_ERR = 4 | ||||
INVALID_CHARACTER_ERR = 5 | ||||
NO_DATA_ALLOWED_ERR = 6 | ||||
NO_MODIFICATION_ALLOWED_ERR = 7 | ||||
NOT_FOUND_ERR = 8 | ||||
NOT_SUPPORTED_ERR = 9 | ||||
INUSE_ATTRIBUTE_ERR = 10 | ||||
INVALID_STATE_ERR = 11 | ||||
SYNTAX_ERR = 12 | ||||
INVALID_MODIFICATION_ERR = 13 | ||||
NAMESPACE_ERR = 14 | ||||
INVALID_ACCESS_ERR = 15 | ||||
VALIDATION_ERR = 16 | ||||
class DOMException(Exception): | ||||
"""Abstract base class for DOM exceptions. | ||||
Exceptions with specific codes are specializations of this class.""" | ||||
def __init__(self, *args, **kw): | ||||
if self.__class__ is DOMException: | ||||
raise RuntimeError( | ||||
"DOMException should not be instantiated directly") | ||||
Exception.__init__(self, *args, **kw) | ||||
def _get_code(self): | ||||
return self.code | ||||
class IndexSizeErr(DOMException): | ||||
code = INDEX_SIZE_ERR | ||||
class DomstringSizeErr(DOMException): | ||||
code = DOMSTRING_SIZE_ERR | ||||
class HierarchyRequestErr(DOMException): | ||||
code = HIERARCHY_REQUEST_ERR | ||||
class WrongDocumentErr(DOMException): | ||||
code = WRONG_DOCUMENT_ERR | ||||
class InvalidCharacterErr(DOMException): | ||||
code = INVALID_CHARACTER_ERR | ||||
class NoDataAllowedErr(DOMException): | ||||
code = NO_DATA_ALLOWED_ERR | ||||
class NoModificationAllowedErr(DOMException): | ||||
code = NO_MODIFICATION_ALLOWED_ERR | ||||
class NotFoundErr(DOMException): | ||||
code = NOT_FOUND_ERR | ||||
class NotSupportedErr(DOMException): | ||||
code = NOT_SUPPORTED_ERR | ||||
class InuseAttributeErr(DOMException): | ||||
code = INUSE_ATTRIBUTE_ERR | ||||
class InvalidStateErr(DOMException): | ||||
code = INVALID_STATE_ERR | ||||
class SyntaxErr(DOMException): | ||||
code = SYNTAX_ERR | ||||
class InvalidModificationErr(DOMException): | ||||
code = INVALID_MODIFICATION_ERR | ||||
class NamespaceErr(DOMException): | ||||
code = NAMESPACE_ERR | ||||
class InvalidAccessErr(DOMException): | ||||
code = INVALID_ACCESS_ERR | ||||
class ValidationErr(DOMException): | ||||
code = VALIDATION_ERR | ||||
class UserDataHandler: | ||||
"""Class giving the operation constants for UserDataHandler.handle().""" | ||||
# Based on DOM Level 3 (WD 9 April 2002) | ||||
NODE_CLONED = 1 | ||||
NODE_IMPORTED = 2 | ||||
NODE_DELETED = 3 | ||||
NODE_RENAMED = 4 | ||||
XML_NAMESPACE = "http://www.w3.org/XML/1998/namespace" | ||||
XMLNS_NAMESPACE = "http://www.w3.org/2000/xmlns/" | ||||
XHTML_NAMESPACE = "http://www.w3.org/1999/xhtml" | ||||
EMPTY_NAMESPACE = None | ||||
EMPTY_PREFIX = None | ||||
from .domreg import getDOMImplementation, registerDOMImplementation | ||||