Xalan-C++ API Reference  1.12.0
XalanDOMImplementation.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(XALANDOMIMPLEMENTATION_HEADER_GUARD_1357924680)
19 #define XALANDOMIMPLEMENTATION_HEADER_GUARD_1357924680
20 
21 
22 
24 
25 
26 
27 namespace XALAN_CPP_NAMESPACE {
28 
29 
30 
31 class XalanDocument;
32 class XalanDocumentType;
33 class XalanDOMString;
34 
35 
36 
37 /*
38  * <meta name="usage" content="deprecated"/>
39  *
40  * Base class for the DOM DOMImplementation interface.
41  *
42  * This class is deprecated and should not be used!!
43  */
44 
46 {
47 public:
48 
50 
51  virtual
53 
54  /** @name Getter functions */
55  //@{
56 
57  /**
58  * Test if the DOM implementation implements a specific feature.
59  *
60  * @param feature The string of the feature to test (case-insensitive). The legal
61  * values are defined throughout this specification. The string must be
62  * an <EM>XML name</EM> (see also Compliance).
63  * @param version This is the version number of the package name to test.
64  * In Level 1, this is the string "1.0". If the version is not specified,
65  * supporting any version of the feature will cause the method to return
66  * <code>true</code>.
67  * @return <code>true</code> if the feature is implemented in the specified
68  * version, <code>false</code> otherwise.
69  */
70  virtual bool
71  hasFeature(
72  const XalanDOMString& feature,
73  const XalanDOMString& version) = 0;
74 
75  //@}
76 
77  /** @name Functions introduced in DOM Level 2. */
78  //@{
79 
80  /**
81  * Creates an empty <code>DocumentType</code> node.
82  * Entity declarations and notations are not made available.
83  * Entity reference expansions and default attribute additions
84  * do not occur. It is expected that a future version of the DOM
85  * will provide a way for populating a <code>DocumentType</code>.
86  * @param qualifiedName The <em>qualified name</em>
87  * of the document type to be created.
88  * @param publicId The external subset public identifier.
89  * @param systemId The external subset system identifier.
90  * @return A new <code>DocumentType</code> node with
91  * <code>Node.ownerDocument</code> set to <code>null</code>.
92  */
93  virtual XalanDocumentType*
94  createDocumentType(
95  const XalanDOMString& qualifiedName,
96  const XalanDOMString& publicId,
97  const XalanDOMString& systemId) = 0;
98 
99  /**
100  * Creates an XML <code>Document</code> object of the specified type
101  * with its document element.
102  * @param namespaceURI The <em>namespace URI</em> of
103  * the document element to create, or <code>null</code>.
104  * @param qualifiedName The <em>qualified name</em>
105  * of the document element to be created.
106  * @param doctype The type of document to be created or <code>null</code>.
107  * <p>When <code>doctype</code> is not <code>null</code>, its
108  * <code>Node.ownerDocument</code> attribute is set to the document
109  * being created.
110  * @return A new <code>Document</code> object.
111  * @exception DOMException
112  * WRONG_DOCUMENT_ERR: Raised if <code>doctype</code> has already
113  * been used with a different document.
114  */
115  virtual XalanDocument*
116  createDocument(
117  const XalanDOMString& namespaceURI,
118  const XalanDOMString& qualifiedName,
119  const XalanDocumentType& doctype) = 0;
120 
121  //@}
122 
123 protected:
124 
126 
128  operator=(const XalanDOMImplementation& theSource);
129 
130  bool
131  operator==(const XalanDOMImplementation& theRHS) const;
132 
133 private:
134 };
135 
136 
137 
138 }
139 
140 
141 
142 #endif // !defined (XALANDOMIMPLEMENTATION_HEADER_GUARD_1357924680)
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition: XalanVersion.hpp:76
xalanc::XalanDocument
Definition: XalanDocument.hpp:36
xalanc::operator==
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition: XalanVector.hpp:1118
xalanc::XalanDOMImplementation
Definition: XalanDOMImplementation.hpp:45
xalanc::XalanDocumentType
Definition: XalanDocumentType.hpp:40
XalanDOMDefinitions.hpp
XALAN_DOM_EXPORT
#define XALAN_DOM_EXPORT
Definition: XalanDOMDefinitions.hpp:37
xalanc::XalanDOMString
Definition: XalanDOMString.hpp:45