~malept/ubuntu/lucid/python2.6/dev-dependency-fix

« back to all changes in this revision

Viewing changes to Lib/xml/dom/__init__.py

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-02-13 12:51:00 UTC
  • Revision ID: james.westby@ubuntu.com-20090213125100-uufgcb9yeqzujpqw
Tags: upstream-2.6.1
ImportĀ upstreamĀ versionĀ 2.6.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
"""W3C Document Object Model implementation for Python.
 
2
 
 
3
The Python mapping of the Document Object Model is documented in the
 
4
Python Library Reference in the section on the xml.dom package.
 
5
 
 
6
This package contains the following modules:
 
7
 
 
8
minidom -- A simple implementation of the Level 1 DOM with namespace
 
9
           support added (based on the Level 2 specification) and other
 
10
           minor Level 2 functionality.
 
11
 
 
12
pulldom -- DOM builder supporting on-demand tree-building for selected
 
13
           subtrees of the document.
 
14
 
 
15
"""
 
16
 
 
17
 
 
18
class Node:
 
19
    """Class giving the NodeType constants."""
 
20
 
 
21
    # DOM implementations may use this as a base class for their own
 
22
    # Node implementations.  If they don't, the constants defined here
 
23
    # should still be used as the canonical definitions as they match
 
24
    # the values given in the W3C recommendation.  Client code can
 
25
    # safely refer to these values in all tests of Node.nodeType
 
26
    # values.
 
27
 
 
28
    ELEMENT_NODE                = 1
 
29
    ATTRIBUTE_NODE              = 2
 
30
    TEXT_NODE                   = 3
 
31
    CDATA_SECTION_NODE          = 4
 
32
    ENTITY_REFERENCE_NODE       = 5
 
33
    ENTITY_NODE                 = 6
 
34
    PROCESSING_INSTRUCTION_NODE = 7
 
35
    COMMENT_NODE                = 8
 
36
    DOCUMENT_NODE               = 9
 
37
    DOCUMENT_TYPE_NODE          = 10
 
38
    DOCUMENT_FRAGMENT_NODE      = 11
 
39
    NOTATION_NODE               = 12
 
40
 
 
41
 
 
42
#ExceptionCode
 
43
INDEX_SIZE_ERR                 = 1
 
44
DOMSTRING_SIZE_ERR             = 2
 
45
HIERARCHY_REQUEST_ERR          = 3
 
46
WRONG_DOCUMENT_ERR             = 4
 
47
INVALID_CHARACTER_ERR          = 5
 
48
NO_DATA_ALLOWED_ERR            = 6
 
49
NO_MODIFICATION_ALLOWED_ERR    = 7
 
50
NOT_FOUND_ERR                  = 8
 
51
NOT_SUPPORTED_ERR              = 9
 
52
INUSE_ATTRIBUTE_ERR            = 10
 
53
INVALID_STATE_ERR              = 11
 
54
SYNTAX_ERR                     = 12
 
55
INVALID_MODIFICATION_ERR       = 13
 
56
NAMESPACE_ERR                  = 14
 
57
INVALID_ACCESS_ERR             = 15
 
58
VALIDATION_ERR                 = 16
 
59
 
 
60
 
 
61
class DOMException(Exception):
 
62
    """Abstract base class for DOM exceptions.
 
63
    Exceptions with specific codes are specializations of this class."""
 
64
 
 
65
    def __init__(self, *args, **kw):
 
66
        if self.__class__ is DOMException:
 
67
            raise RuntimeError(
 
68
                "DOMException should not be instantiated directly")
 
69
        Exception.__init__(self, *args, **kw)
 
70
 
 
71
    def _get_code(self):
 
72
        return self.code
 
73
 
 
74
 
 
75
class IndexSizeErr(DOMException):
 
76
    code = INDEX_SIZE_ERR
 
77
 
 
78
class DomstringSizeErr(DOMException):
 
79
    code = DOMSTRING_SIZE_ERR
 
80
 
 
81
class HierarchyRequestErr(DOMException):
 
82
    code = HIERARCHY_REQUEST_ERR
 
83
 
 
84
class WrongDocumentErr(DOMException):
 
85
    code = WRONG_DOCUMENT_ERR
 
86
 
 
87
class InvalidCharacterErr(DOMException):
 
88
    code = INVALID_CHARACTER_ERR
 
89
 
 
90
class NoDataAllowedErr(DOMException):
 
91
    code = NO_DATA_ALLOWED_ERR
 
92
 
 
93
class NoModificationAllowedErr(DOMException):
 
94
    code = NO_MODIFICATION_ALLOWED_ERR
 
95
 
 
96
class NotFoundErr(DOMException):
 
97
    code = NOT_FOUND_ERR
 
98
 
 
99
class NotSupportedErr(DOMException):
 
100
    code = NOT_SUPPORTED_ERR
 
101
 
 
102
class InuseAttributeErr(DOMException):
 
103
    code = INUSE_ATTRIBUTE_ERR
 
104
 
 
105
class InvalidStateErr(DOMException):
 
106
    code = INVALID_STATE_ERR
 
107
 
 
108
class SyntaxErr(DOMException):
 
109
    code = SYNTAX_ERR
 
110
 
 
111
class InvalidModificationErr(DOMException):
 
112
    code = INVALID_MODIFICATION_ERR
 
113
 
 
114
class NamespaceErr(DOMException):
 
115
    code = NAMESPACE_ERR
 
116
 
 
117
class InvalidAccessErr(DOMException):
 
118
    code = INVALID_ACCESS_ERR
 
119
 
 
120
class ValidationErr(DOMException):
 
121
    code = VALIDATION_ERR
 
122
 
 
123
class UserDataHandler:
 
124
    """Class giving the operation constants for UserDataHandler.handle()."""
 
125
 
 
126
    # Based on DOM Level 3 (WD 9 April 2002)
 
127
 
 
128
    NODE_CLONED   = 1
 
129
    NODE_IMPORTED = 2
 
130
    NODE_DELETED  = 3
 
131
    NODE_RENAMED  = 4
 
132
 
 
133
XML_NAMESPACE = "http://www.w3.org/XML/1998/namespace"
 
134
XMLNS_NAMESPACE = "http://www.w3.org/2000/xmlns/"
 
135
XHTML_NAMESPACE = "http://www.w3.org/1999/xhtml"
 
136
EMPTY_NAMESPACE = None
 
137
EMPTY_PREFIX = None
 
138
 
 
139
from domreg import getDOMImplementation,registerDOMImplementation