Xerces-C++  3.1.2
XMLDocumentHandler.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: XMLDocumentHandler.hpp 673679 2008-07-03 13:50:10Z borisk $
20  */
21 
22 #if !defined(XERCESC_INCLUDE_GUARD_XMLDOCUMENTHANDLER_HPP)
23 #define XERCESC_INCLUDE_GUARD_XMLDOCUMENTHANDLER_HPP
24 
26 #include <xercesc/util/RefVectorOf.hpp>
28 
30 
31 class XMLElementDecl;
32 class XMLEntityDecl;
33 
43 {
44 public:
45  // -----------------------------------------------------------------------
46  // Constructors are hidden, just the virtual destructor is exposed
47  // -----------------------------------------------------------------------
51  {
52  }
54 
77  virtual void docCharacters
78  (
79  const XMLCh* const chars
80  , const XMLSize_t length
81  , const bool cdataSection
82  ) = 0;
83 
91  virtual void docComment
92  (
93  const XMLCh* const comment
94  ) = 0;
95 
105  virtual void docPI
106  (
107  const XMLCh* const target
108  , const XMLCh* const data
109  ) = 0;
110 
118  virtual void endDocument() = 0;
119 
134  virtual void endElement
135  (
136  const XMLElementDecl& elemDecl
137  , const unsigned int uriId
138  , const bool isRoot
139  , const XMLCh* const prefixName = 0
140  ) = 0;
141 
149  virtual void endEntityReference
150  (
151  const XMLEntityDecl& entDecl
152  ) = 0;
153 
176  virtual void ignorableWhitespace
177  (
178  const XMLCh* const chars
179  , const XMLSize_t length
180  , const bool cdataSection
181  ) = 0;
182 
189  virtual void resetDocument() = 0;
190 
196  virtual void startDocument() = 0;
197 
215  virtual void startElement
216  (
217  const XMLElementDecl& elemDecl
218  , const unsigned int uriId
219  , const XMLCh* const prefixName
220  , const RefVectorOf<XMLAttr>& attrList
221  , const XMLSize_t attrCount
222  , const bool isEmpty
223  , const bool isRoot
224  ) = 0;
225 
233  virtual void startEntityReference(const XMLEntityDecl& entDecl) = 0;
234 
252  virtual void XMLDecl
253  (
254  const XMLCh* const versionStr
255  , const XMLCh* const encodingStr
256  , const XMLCh* const standaloneStr
257  , const XMLCh* const autoEncodingStr
258  ) = 0;
259 
261 
262 
263 
264 protected :
265  // -----------------------------------------------------------------------
266  // Hidden Constructors
267  // -----------------------------------------------------------------------
269  {
270  }
271 
272 
273 private:
274  // -----------------------------------------------------------------------
275  // Unimplemented constructors and operators
276  // -----------------------------------------------------------------------
278  XMLDocumentHandler& operator=(const XMLDocumentHandler&);
279 };
280 
282 
283 #endif
#define XMLPARSER_EXPORT
Definition: XercesDefs.hpp:163
virtual ~XMLDocumentHandler()
Definition: XMLDocumentHandler.hpp:50
This abstract class provides the interface for the scanner to return XML document information up to t...
Definition: XMLDocumentHandler.hpp:42
This class defines the core information of an element declaration.
Definition: XMLElementDecl.hpp:51
SIZE_T XMLSize_t
Definition: Xerces_autoconf_config.borland.hpp:86
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
XMLDocumentHandler()
Definition: XMLDocumentHandler.hpp:268
wchar_t XMLCh
Definition: Xerces_autoconf_config.borland.hpp:92
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
This class defines that core information that defines an XML entity, no matter what validator is used...
Definition: XMLEntityDecl.hpp:50