Xerces-C++ 3.3.0
DOMXPathEvaluator.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_DOMXPATHEVALUATOR_HPP)
23#define XERCESC_INCLUDE_GUARD_DOMXPATHEVALUATOR_HPP
24
27
29
32class DOMNode;
33
48{
49
50protected:
51 // -----------------------------------------------------------------------
52 // Hidden constructors
53 // -----------------------------------------------------------------------
58
59private:
60 // -----------------------------------------------------------------------
61 // Unimplemented constructors and operators
62 // -----------------------------------------------------------------------
66 DOMXPathEvaluator& operator = (const DOMXPathEvaluator&);
68
69public:
70 // -----------------------------------------------------------------------
71 // All constructors are hidden, just the destructor is available
72 // -----------------------------------------------------------------------
79 virtual ~DOMXPathEvaluator() {};
81
82 // -----------------------------------------------------------------------
83 // Virtual DOMXPathEvaluator interface
84 // -----------------------------------------------------------------------
87
108 virtual DOMXPathExpression* createExpression(const XMLCh *expression,
109 const DOMXPathNSResolver *resolver) = 0;
110
111
125 virtual DOMXPathNSResolver* createNSResolver(const DOMNode *nodeResolver) = 0;
126
127
169 virtual DOMXPathResult* evaluate(const XMLCh *expression,
170 const DOMNode *contextNode,
171 const DOMXPathNSResolver *resolver,
173 DOMXPathResult* result) = 0;
174
176};
177
179
180#endif
#define CDOM_EXPORT
Definition XercesDefs.hpp:166
#define XERCES_CPP_NAMESPACE_BEGIN
Definition XercesDefs.hpp:112
#define XERCES_CPP_NAMESPACE_END
Definition XercesDefs.hpp:113
char16_t XMLCh
Definition Xerces_autoconf_config.hpp:120
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition DOMNode.hpp:139
The evaluation of XPath expressions is provided by DOMXPathEvaluator.
Definition DOMXPathEvaluator.hpp:48
virtual DOMXPathResult * evaluate(const XMLCh *expression, const DOMNode *contextNode, const DOMXPathNSResolver *resolver, DOMXPathResult::ResultType type, DOMXPathResult *result)=0
Evaluates an XPath expression string and returns a result of the specified type if possible.
virtual ~DOMXPathEvaluator()
Destructor.
Definition DOMXPathEvaluator.hpp:79
virtual DOMXPathNSResolver * createNSResolver(const DOMNode *nodeResolver)=0
Adapts any DOM node to resolve namespaces so that an XPath expression can be easily evaluated relativ...
virtual DOMXPathExpression * createExpression(const XMLCh *expression, const DOMXPathNSResolver *resolver)=0
Creates a parsed XPath expression with resolved namespaces.
DOMXPathEvaluator()
Definition DOMXPathEvaluator.hpp:56
The DOMXPathExpression interface represents a parsed and resolved XPath expression.
Definition DOMXPathExpression.hpp:37
The DOMXPathNSResolver interface permit prefix strings in the expression to be properly bound to name...
Definition DOMXPathNSResolver.hpp:37
The DOMXPathResult interface represents the result of the evaluation of an XPath 1....
Definition DOMXPathResult.hpp:47
ResultType
Definition DOMXPathResult.hpp:163