SaxonC 13.0.0
Saxon Processor library for C/C++, PHP and Python
Loading...
Searching...
No Matches
XsdSchema.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
10#ifndef XSDSCHEMA_H
11#define XSDSCHEMA_H
12
13#include "saxonc_export.h"
14#include "saxonc/SaxonProcessor.h"
15
16class XsdmCompiler;
17
25
26class SAXONC_EXPORT XsdSchema {
27
28
29public:
30
34 ~XsdSchema();
35
36 SchemaValidator * newValidator();
37
38
52
53 XsdSchema * combine(XsdSchema * other);
54
58
59 int64_t getUnderlyingSchema();
60
69
70 void exportComponents(const char * filename);
71
72
73
74
75private:
76
82 XsdSchema();
83
91 XsdSchema(std::string cwd, int64_t procRef, int64_t exObject);
92
97 XsdSchema(const XsdSchema &other);
98
99 friend class SchemaValidator;
100 friend class XsdCompiler;
101 std::string cwdS;
102 int64_t xsdSchemaObj;
103 int64_t procRef;
104};
105
106
107#endif //XSDSCHEMA_H
void exportComponents(const char *filename)
Export a precompiled Schema Component Model containing all the components (except built-in components...
Definition XsdSchema.cpp:73
int64_t getUnderlyingSchema()
Get the underlying implementation-level Schema.
Definition XsdSchema.cpp:69
XsdSchema * combine(XsdSchema *other)
Combine this schema with another, to form a new combined schema.
Definition XsdSchema.cpp:52