-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathREADME
More file actions
128 lines (95 loc) · 3.42 KB
/
README
File metadata and controls
128 lines (95 loc) · 3.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
Qore xml module
===============
INTRODUCTION
------------
The Qore xml module provides comprehensive XML functionality to the Qore
Programming Language. This module was previously part of the main qore library
but was separated into a standalone module in Qore v0.8.1.
The module is built on libxml2, providing a powerful, stable, and thread-safe
basis for XML integration in Qore.
See the HTML documentation in docs/ for detailed API reference and examples.
FEATURES
--------
Core XML Processing:
- XML serialization (Qore data structures to XML strings)
- XML deserialization (XML strings to Qore data structures)
- DOM document parsing and manipulation (XmlDoc, XmlNode classes)
- XPath query support
- Streaming XML parsing (XmlReader, SaxIterator classes)
- XML validation (XSD Schema, RelaxNG, DTD)
Web Services:
- SOAP client and server implementations
- WSDL parsing and processing
- XML-RPC client and server support
- Salesforce API client support
Additional Features:
- WebDAV protocol handler
- Data provider integration (SAX, SOAP data providers)
- Custom I/O callbacks for external resource resolution
Bundled User Modules:
- WSDL - Web Services Description Language parser
- SoapClient - SOAP client implementation
- SoapHandler - SOAP server request handler
- SalesforceSoapClient - Specialized Salesforce SOAP client
- XmlRpcHandler - XML-RPC server implementation
- XmlRpcConnection - XML-RPC connection management
- WebDavHandler - WebDAV protocol handler
- SaxDataProvider - SAX-based data provider
- SoapDataProvider - SOAP-based data provider
- CargoXmlDataProvider - Cargo XML data provider for B2B logistics
(UN/CEFACT Cross-Industry messages bundled; pluggable for IATA Cargo-XML)
LICENSE
-------
The source code is released under dual licenses: LGPL 2.1 and MIT. Either
license may be used at the user's discretion. Both licenses allow the module
to be loaded without restrictions by the Qore library (even when the Qore
library is initialized in GPL mode).
See COPYING.MIT and COPYING.LGPL for details on the open-source licenses.
REQUIREMENTS
------------
- Qore 2.0+ (https://qore.org)
- libxml2 2.6.0+ (http://www.xmlsoft.org)
- OpenSSL (for HTTPS support)
- C++11 compatible compiler
BUILDING WITH CMAKE (Recommended)
---------------------------------
mkdir build && cd build
cmake ..
make
make install
CMake options:
-DCMAKE_INSTALL_PREFIX=<path> Installation prefix
-DCMAKE_BUILD_TYPE=Release Build type (Release, Debug, RelWithDebInfo)
Example:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release ..
BUILDING WITH AUTOTOOLS
-----------------------
To configure the build:
./configure --disable-debug
If the qore library cannot be found:
./configure --disable-debug --with-qore=<dir>
If libxml2 cannot be found:
./configure --disable-debug --with-libxml2-dir=<dir>
If openssl cannot be found:
./configure --disable-debug --with-openssl-dir=<dir>
The qore binary needs to be in the PATH so configure can determine the
module directory.
Then execute:
make && make install
(or 'make && sudo make install' as needed)
TESTING
-------
Run the test suite:
cd test
qore xml.qtest -v
qore soap.qtest -v
DOCUMENTATION
-------------
Full HTML documentation is generated with Doxygen:
make docs
Documentation is generated in the docs/ directory.
SUPPORT
-------
Please direct questions to: david@qore.org
Bug reports and feature requests:
https://github.com/qorelanguage/qore/issues