Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XalanElement.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #if !defined(XALANELEMENT_HEADER_GUARD_1357924680)
17 #define XALANELEMENT_HEADER_GUARD_1357924680
18 
19 
20 
23 
24 
25 
26 XALAN_CPP_NAMESPACE_BEGIN
27 
28 
29 
30 class XalanAttr;
31 
32 
33 
34 /*
35  * <meta name="usage" content="experimental"/>
36  *
37  * Base class for the DOM Element interface.
38  *
39  * This class is experimental and subject to change!!
40  */
41 
43 {
44 public:
45 
46  XalanElement();
47 
48  virtual
49  ~XalanElement();
50 
51  // These interfaces are inherited from XalanNode
52  virtual const XalanDOMString&
53  getNodeName() const = 0;
54 
58  virtual const XalanDOMString&
59  getNodeValue() const = 0;
60 
64  virtual NodeType
65  getNodeType() const = 0;
66 
76  virtual XalanNode*
77  getParentNode() const = 0;
78 
92  virtual const XalanNodeList*
93  getChildNodes() const = 0;
94 
100  virtual XalanNode*
101  getFirstChild() const = 0;
102 
108  virtual XalanNode*
109  getLastChild() const = 0;
110 
116  virtual XalanNode*
117  getPreviousSibling() const = 0;
118 
124  virtual XalanNode*
125  getNextSibling() const = 0;
126 
131  virtual const XalanNamedNodeMap*
132  getAttributes() const = 0;
133 
143  virtual XalanDocument*
144  getOwnerDocument() const = 0;
145 
147 
149 
168 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
169  virtual XalanNode*
170 #else
171  virtual XalanElement*
172 #endif
173  cloneNode(bool deep) const = 0;
174 
176 
178 
195  virtual XalanNode*
196  insertBefore(
197  XalanNode* newChild,
198  XalanNode* refChild) = 0;
199 
213  virtual XalanNode*
214  replaceChild(
215  XalanNode* newChild,
216  XalanNode* oldChild) = 0;
217 
225  virtual XalanNode*
226  removeChild(XalanNode* oldChild) = 0;
227 
239  virtual XalanNode*
240  appendChild(XalanNode* newChild) = 0;
241 
243 
245 
253  virtual bool
254  hasChildNodes() const = 0;
255 
256 
258 
260 
261 
275  virtual void
276  setNodeValue(const XalanDOMString& nodeValue) = 0;
277 
279 
281 
298  virtual void
299  normalize() = 0;
300 
314  virtual bool
315  isSupported(
316  const XalanDOMString& feature,
317  const XalanDOMString& version) const = 0;
318 
332  virtual const XalanDOMString&
333  getNamespaceURI() const = 0;
334 
339  virtual const XalanDOMString&
340  getPrefix() const = 0;
341 
349  virtual const XalanDOMString&
350  getLocalName() const = 0;
351 
381  virtual void
382  setPrefix(const XalanDOMString& prefix) = 0;
383 
389  virtual bool
390  isIndexed() const = 0;
391 
398  virtual IndexType
399  getIndex() const = 0;
400 
402 
403  // These interfaces are new to XalanElement...
412  virtual const XalanDOMString&
413  getTagName() const = 0;
414 
422  virtual const XalanDOMString&
423  getAttribute(const XalanDOMString& name) const = 0;
424 
432  virtual XalanAttr*
433  getAttributeNode(const XalanDOMString& name) const = 0;
434 
445  virtual XalanNodeList*
446  getElementsByTagName(const XalanDOMString& name) const = 0;
447 
449 
451 
473  virtual void
474  setAttribute(
475  const XalanDOMString& name,
476  const XalanDOMString& value) = 0;
477 
497  virtual XalanAttr*
498  setAttributeNode(XalanAttr* newAttr) = 0;
499 
501 
503 
519  virtual XalanAttr*
520  removeAttributeNode(XalanAttr* oldAttr) = 0;
521 
534  virtual void
535  removeAttribute(const XalanDOMString& name) = 0;
536 
538 
540 
551  virtual const XalanDOMString&
552  getAttributeNS(
553  const XalanDOMString& namespaceURI,
554  const XalanDOMString& localName) const = 0;
555 
596  virtual void
597  setAttributeNS(
598  const XalanDOMString& namespaceURI,
599  const XalanDOMString& qualifiedName,
600  const XalanDOMString& value) = 0;
601 
616  virtual void
617  removeAttributeNS(
618  const XalanDOMString& namespaceURI,
619  const XalanDOMString& localName) = 0;
620 
631  virtual XalanAttr*
632  getAttributeNodeNS(
633  const XalanDOMString& namespaceURI,
634  const XalanDOMString& localName) const = 0;
635 
655  virtual XalanAttr*
656  setAttributeNodeNS(XalanAttr* newAttr) = 0;
657 
673  virtual XalanNodeList*
674  getElementsByTagNameNS(
675  const XalanDOMString& namespaceURI,
676  const XalanDOMString& localName) const = 0;
677 
679 
680 protected:
681 
682  XalanElement(const XalanElement& theSource);
683 
684  XalanElement&
685  operator=(const XalanElement& theSource);
686 
687  bool
688  operator==(const XalanElement& theRHS) const;
689 
690 private:
691 };
692 
693 
694 
695 XALAN_CPP_NAMESPACE_END
696 
697 
698 
699 #endif // !defined(XALANELEMENT_HEADER_GUARD_1357924680)
virtual const XalanNamedNodeMap * getAttributes() const =0
Gets a NamedNodeMap containing the attributes of this node (if it is an Element) or null otherwise...
Definition: XalanNode.hpp:44
Definition: XalanNodeList.hpp:42
virtual XalanNode * cloneNode(bool deep) const =0
Returns a duplicate of this node.
virtual XalanNode * getLastChild() const =0
Gets the last child of this node.
XalanNode & operator=(const XalanNode &theSource)
Definition: XalanAttr.hpp:38
virtual IndexType getIndex() const =0
Get the node's index.
virtual XalanNode * removeChild(XalanNode *oldChild)=0
Removes the child node indicated by oldChild from the list of children, and returns it...
virtual const XalanDOMString & getLocalName() const =0
Returns the local part of the qualified name of this node.
NodeType
Definition: XalanNode.hpp:53
virtual bool isSupported(const XalanDOMString &feature, const XalanDOMString &version) const =0
Tests whether the DOM implementation implements a specific feature and that feature is supported by t...
Definition: XalanElement.hpp:42
virtual void normalize()=0
Puts all Text nodes in the full depth of the sub-tree underneath this Node, including attribute nodes...
bool operator==(const XalanNode &theRHS) const
virtual const XalanDOMString & getNamespaceURI() const =0
Get the namespace URI of this node, or null if it is unspecified.
virtual XalanNode * getPreviousSibling() const =0
Gets the node immediately preceding this node.
#define XALAN_DOM_EXPORT
Definition: XalanDOMDefinitions.hpp:35
virtual const XalanDOMString & getNodeValue() const =0
Gets the value of this node, depending on its type.
virtual XalanNode * getParentNode() const =0
Gets the parent of this node.
virtual bool hasChildNodes() const =0
This is a convenience method to allow easy determination of whether a node has any children...
virtual XalanNode * replaceChild(XalanNode *newChild, XalanNode *oldChild)=0
Replaces the child node oldChild with newChild in the list of children, and returns the oldChild node...
virtual NodeType getNodeType() const =0
An enum value representing the type of the underlying object.
virtual const XalanNodeList * getChildNodes() const =0
Gets a NodeList that contains all children of this node.
Definition: XalanNamedNodeMap.hpp:42
virtual void setNodeValue(const XalanDOMString &nodeValue)=0
Sets the value of the node.
virtual XalanNode * insertBefore(XalanNode *newChild, XalanNode *refChild)=0
Inserts the node newChild before the existing child node refChild.
Definition: XalanDocument.hpp:51
virtual XalanNode * getFirstChild() const =0
Gets the first child of this node.
virtual void setPrefix(const XalanDOMString &prefix)=0
Set the namespace prefix of this node.
virtual XalanDocument * getOwnerDocument() const =0
Gets the Document object associated with this node.
virtual XalanNode * appendChild(XalanNode *newChild)=0
Adds the node newChild to the end of the list of children of this node.
Definition: XalanDOMString.hpp:42
virtual XalanNode * getNextSibling() const =0
Gets the node immediately following this node.
unsigned long IndexType
Definition: XalanNode.hpp:70
virtual bool isIndexed() const =0
Determine if the document is node-order indexed.
virtual const XalanDOMString & getPrefix() const =0
Get the namespace prefix of this node, or null if it is unspecified.
virtual const XalanDOMString & getNodeName() const =0

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo