SaxonC 13.0.0
Saxon Processor library for C/C++, PHP and Python
Loading...
Searching...
No Matches
QName.h
1
2// Copyright (c) 2022 - 2025 Saxonica Limited.
3// This Source Code Form is subject to the terms of the Mozilla Public License,
4// v. 2.0. If a copy of the MPL was not distributed with this file, You can
5// obtain one at http://mozilla.org/MPL/2.0/. This Source Code Form is
6// "Incompatible With Secondary Licenses", as defined by the Mozilla Public
7// License, v. 2.0.
9#ifndef QNAME_H
10#define QNAME_H
11
12#include "saxonc_export.h"
13#include "saxonc/SaxonProcessor.h"
14
15
16
17class SAXONC_EXPORT QName {
18public:
19
20 QName(int64_t obj);
21
22 QName(const char * prefix, const char * uri, const char * localName);
23
24 QName(const char * uri, const char * lexical);
25
26 QName(const char * localName);
27
28 QName(const char * lexicalQName, XdmNode * element);
29
30 QName(const QName &other);
31
32 ~QName();
33
34 bool operator==(const QName &other) const;
35
36 static QName * fromClarkName(const char * expandedName);
37
38 static QName * fromEQName(const char * expandedName);
39
40 bool isValid();
41
42 const char * getPrefix();
43
44 const char * getNamespace();
45
46 const char * getNamespaceUri();
47
48 const char * getLocalName();
49
50 const char * getClarkName();
51
52 const char * getEQName();
53
54 const char * toString();
55
56 int64_t getUnderlyingValue();
57
58
59
60
61
62private:
63 int64_t qnameObj;
64}
65
66#endif //QNAME_H
This class represents a node in the XDM data model.
Definition XdmNode.h:57