Xalan-C++ API Reference 1.12.0
XalanDocumentType.hpp
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18#if !defined(XALANDOCUMENTTYPE_HEADER_GUARD_1357924680)
19#define XALANDOCUMENTTYPE_HEADER_GUARD_1357924680
20
21
22
25
26
27
28namespace XALAN_CPP_NAMESPACE {
29
30
31
32/*
33 * <meta name="usage" content="deprecated"/>
34 *
35 * Base class for the DOM DocumentType interface.
36 *
37 * This class is deprecated and should not be used!!
38 */
39
41{
42public:
43
45
46 virtual
48
49
50 // These interfaces are inherited from XalanNode...
51
52 /**
53 * Gets the name of this node.
54 */
55 virtual const XalanDOMString&
56 getNodeName() const = 0;
57
58 /**
59 * Gets the value of this node, depending on its type.
60 */
61 virtual const XalanDOMString&
62 getNodeValue() const = 0;
63
64 /**
65 * An enum value representing the type of the underlying object.
66 */
67 virtual NodeType
68 getNodeType() const = 0;
69
70 /**
71 * Gets the parent of this node.
72 *
73 * All nodes, except <code>Document</code>,
74 * <code>DocumentFragment</code>, and <code>Attr</code> may have a parent.
75 * However, if a node has just been created and not yet added to the tree,
76 * or if it has been removed from the tree, a <code>null</code> Node
77 * is returned.
78 */
79 virtual XalanNode*
80 getParentNode() const = 0;
81
82 /**
83 * Gets a <code>NodeList</code> that contains all children of this node.
84 *
85 * If there are no children, this is a <code>NodeList</code> containing no nodes.
86 */
87 virtual const XalanNodeList*
88 getChildNodes() const = 0;
89
90 /**
91 * Gets the first child of this node.
92 *
93 * If there is no such node, this returns <code>null</code>.
94 */
95 virtual XalanNode*
96 getFirstChild() const = 0;
97
98 /**
99 * Gets the last child of this node.
100 *
101 * If there is no such node, this returns <code>null</code>.
102 */
103 virtual XalanNode*
104 getLastChild() const = 0;
105
106 /**
107 * Gets the node immediately preceding this node.
108 *
109 * If there is no such node, this returns <code>null</code>.
110 */
111 virtual XalanNode*
113
114 /**
115 * Gets the node immediately following this node.
116 *
117 * If there is no such node, this returns <code>null</code>.
118 */
119 virtual XalanNode*
120 getNextSibling() const = 0;
121
122 /**
123 * Gets a <code>NamedNodeMap</code> containing the attributes of this node (if it
124 * is an <code>Element</code>) or <code>null</code> otherwise.
125 */
126 virtual const XalanNamedNodeMap*
127 getAttributes() const = 0;
128
129 /**
130 * Gets the <code>Document</code> object associated with this node.
131 *
132 * This is also
133 * the <code>Document</code> object used to create new nodes. When this
134 * node is a <code>Document</code> or a <code>DocumentType</code>
135 * which is not used with any <code>Document</code> yet, this is
136 * <code>null</code>.
137 */
138 virtual XalanDocument*
139 getOwnerDocument() const = 0;
140
141 /**
142 * Get the <em>namespace URI</em> of
143 * this node, or <code>null</code> if it is unspecified.
144 * <p>
145 * This is not a computed value that is the result of a namespace lookup
146 * based on an examination of the namespace declarations in scope. It is
147 * merely the namespace URI given at creation time.
148 * <p>
149 * For nodes of any type other than <CODE>ELEMENT_NODE</CODE> and
150 * <CODE>ATTRIBUTE_NODE</CODE> and nodes created with a DOM Level 1 method,
151 * such as <CODE>createElement</CODE> from the <CODE>Document</CODE>
152 * interface, this is always <CODE>null</CODE>.
153 */
154 virtual const XalanDOMString&
155 getNamespaceURI() const = 0;
156
157 /**
158 * Get the <em>namespace prefix</em>
159 * of this node, or <code>null</code> if it is unspecified.
160 */
161 virtual const XalanDOMString&
162 getPrefix() const = 0;
163
164 /**
165 * Returns the local part of the <em>qualified name</em> of this node.
166 * <p>
167 * For nodes created with a DOM Level 1 method, such as
168 * <code>createElement</code> from the <code>Document</code> interface,
169 * it is null.
170 */
171 virtual const XalanDOMString&
172 getLocalName() const = 0;
173
174 /**
175 * Determine if the document is node-order indexed.
176 *
177 * @return true if the document is indexed, otherwise false.
178 */
179 virtual bool
180 isIndexed() const = 0;
181
182 /**
183 * Get the node's index. Valid only if the owner document
184 * reports that the document is node-order indexed.
185 *
186 * @return The index value, or 0 if the node is not indexed.
187 */
188 virtual IndexType
189 getIndex() const = 0;
190
191 // These interfaces are new to XalanDocumentType...
192
193 /**
194 * The name of DTD; i.e., the name immediately following the
195 * <code>DOCTYPE</code> keyword in an XML source document.
196 */
197 virtual const XalanDOMString&
198 getName() const = 0;
199
200 /**
201 * This function returns a <code>NamedNodeMap</code> containing the general entities, both
202 * external and internal, declared in the DTD. Parameter entities are not contained.
203 * Duplicates are discarded.
204 */
205 virtual const XalanNamedNodeMap*
206 getEntities() const = 0;
207
208 /**
209 * This function returns a named node map containing an entry for
210 * each notation declared in a document's DTD. Duplicates are discarded.
211 */
212 virtual const XalanNamedNodeMap*
213 getNotations() const = 0;
214
215 /**
216 * Get the public identifier of the external subset.
217 * @return The public identifier of the external subset.
218 */
219 virtual const XalanDOMString&
220 getPublicId() const = 0;
221
222 /**
223 * Get the system identifier of the external subset.
224 * @return The system identifier of the external subset.
225 */
226 virtual const XalanDOMString&
227 getSystemId() const = 0;
228
229 /**
230 * Get the internal subset as a string.
231 * @return The internal subset as a string.
232 */
233 virtual const XalanDOMString&
234 getInternalSubset() const = 0;
235
236protected:
237
239
242
243 bool
245
246private:
247};
248
249
250
251}
252
253
254
255#endif // !defined(XALANDOCUMENTTYPE_HEADER_GUARD_1357924680)
#define XALAN_DOM_EXPORT
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
virtual XalanNode * getPreviousSibling() const =0
Gets the node immediately preceding this node.
virtual const XalanDOMString & getNodeValue() const =0
Gets the value of this node, depending on its type.
virtual const XalanDOMString & getName() const =0
The name of DTD; i.e., the name immediately following the DOCTYPE keyword in an XML source document.
virtual XalanNode * getParentNode() const =0
Gets the parent of this node.
virtual NodeType getNodeType() const =0
An enum value representing the type of the underlying object.
virtual const XalanDOMString & getPublicId() const =0
Get the public identifier of the external subset.
virtual const XalanDOMString & getLocalName() const =0
Returns the local part of the qualified name of this node.
virtual XalanNode * getFirstChild() const =0
Gets the first child of this node.
virtual IndexType getIndex() const =0
Get the node's index.
virtual XalanNode * getNextSibling() const =0
Gets the node immediately following this node.
virtual const XalanDOMString & getNodeName() const =0
Gets the name of this node.
virtual const XalanNodeList * getChildNodes() const =0
Gets a NodeList that contains all children of this node.
virtual const XalanDOMString & getInternalSubset() const =0
Get the internal subset as a string.
virtual const XalanDOMString & getSystemId() const =0
Get the system identifier of the external subset.
virtual bool isIndexed() const =0
Determine if the document is node-order indexed.
virtual const XalanNamedNodeMap * getAttributes() const =0
Gets a NamedNodeMap containing the attributes of this node (if it is an Element) or null otherwise.
virtual XalanDocument * getOwnerDocument() const =0
Gets the Document object associated with this node.
virtual const XalanNamedNodeMap * getEntities() const =0
This function returns a NamedNodeMap containing the general entities, both external and internal,...
virtual const XalanDOMString & getNamespaceURI() const =0
Get the namespace URI of this node, or null if it is unspecified.
XalanDocumentType & operator=(const XalanDocumentType &theSource)
virtual XalanNode * getLastChild() const =0
Gets the last child of this node.
virtual const XalanDOMString & getPrefix() const =0
Get the namespace prefix of this node, or null if it is unspecified.
bool operator==(const XalanDocumentType &theRHS) const
XalanDocumentType(const XalanDocumentType &theSource)
virtual const XalanNamedNodeMap * getNotations() const =0
This function returns a named node map containing an entry for each notation declared in a document's...