SourceForge.net Logo
DOMAttr.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 /*
19  * $Id$
20  */
21 
22 #if !defined(XERCESC_INCLUDE_GUARD_DOMATTR_HPP)
23 #define XERCESC_INCLUDE_GUARD_DOMATTR_HPP
24 
25 #include <xercesc/util/XercesDefs.hpp>
26 #include <xercesc/dom/DOMNode.hpp>
27 
28 XERCES_CPP_NAMESPACE_BEGIN
29 
30 class DOMElement;
31 class DOMTypeInfo;
32 
57 class CDOM_EXPORT DOMAttr: public DOMNode {
58 protected:
59  // -----------------------------------------------------------------------
60  // Hidden constructors
61  // -----------------------------------------------------------------------
64  DOMAttr() {}
65  DOMAttr(const DOMAttr &other) : DOMNode(other) {}
67 
68 private:
69  // -----------------------------------------------------------------------
70  // Unimplemented constructors and operators
71  // -----------------------------------------------------------------------
74  DOMAttr & operator = (const DOMAttr &);
76 
77 public:
78  // -----------------------------------------------------------------------
79  // All constructors are hidden, just the destructor is available
80  // -----------------------------------------------------------------------
87  virtual ~DOMAttr() {};
89 
90  // -----------------------------------------------------------------------
91  // Virtual DOMAttr interface
92  // -----------------------------------------------------------------------
95  // -----------------------------------------------------------------------
96  // Getter methods
97  // -----------------------------------------------------------------------
102  virtual const XMLCh * getName() const = 0;
103 
112  virtual bool getSpecified() const = 0;
113 
121  virtual const XMLCh * getValue() const = 0;
122 
123  // -----------------------------------------------------------------------
124  // Setter methods
125  // -----------------------------------------------------------------------
133  virtual void setValue(const XMLCh *value) = 0;
135 
144  virtual DOMElement *getOwnerElement() const = 0;
146 
157  virtual bool isId() const = 0;
158 
159 
166  virtual const DOMTypeInfo * getSchemaTypeInfo() const = 0;
167 
169 
170 };
171 
172 XERCES_CPP_NAMESPACE_END
173 
174 #endif
175 
176 
The DOMAttr class refers to an attribute of an XML element.
Definition: DOMAttr.hpp:57
virtual bool isId() const =0
Returns whether this attribute is known to be of type ID or not.
DOMAttr(const DOMAttr &other)
Definition: DOMAttr.hpp:65
virtual void setValue(const XMLCh *value)=0
Sets the value of the attribute.
virtual const XMLCh * getName() const =0
Returns the name of this attribute.
virtual const DOMTypeInfo * getSchemaTypeInfo() const =0
Returns the type information associated with this attribute.
virtual ~DOMAttr()
Destructor.
Definition: DOMAttr.hpp:87
virtual bool getSpecified() const =0
Returns true if the attribute received its value explicitly in the XML document, or if a value was as...
virtual const XMLCh * getValue() const =0
Returns the value of the attribute.
DOMAttr()
Definition: DOMAttr.hpp:64
virtual DOMElement * getOwnerElement() const =0
The DOMElement node this attribute is attached to or null if this attribute is not in use.
By far the vast majority of objects (apart from text) that authors encounter when traversing a docume...
Definition: DOMElement.hpp:66
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition: DOMNode.hpp:139
The DOMTypeInfo interface represent a type used by DOMElement or DOMAttr nodes, specified in the sche...
Definition: DOMTypeInfo.hpp:36