8 - Fix for `::tixiGetDoubleElement` and `::tixiGetIntegerElement` and elements with trailing whitespace.
9 - Removed all exit( ) calls in TiXI
15 - Deprecated all array functions. These are
18 - `::tixiGetArrayDimensionNames`
19 - `::tixiGetArrayDimensions`
20 - `::tixiGetArrayDimensionSizes`
21 - `::tixiGetArrayDimensionValues`
22 - `::tixiGetArrayElementCount`
23 - `::tixiGetArrayElementNames`
24 - `::tixiGetArrayParameterNames`
25 - `::tixiGetArrayParameters`
26 - `::tixiGetArrayValue`
28 **These functions will be removed in TiXI 3.3.0!**
30 - ```::tixiGetDoubleElement``` and ```::tixiGetIntegerElement``` now return the error code ```::NO_NUMBER```,
31 if the element is not a number.
32 Before, TiXI returned '0' as a number without error.
33 - ```::tixiGetFloatVector``` and ```::tixiGetVectorSize``` do not check for `mapType="vector"` anymore.
36 - The validation error messages produced by
37 ```::tixiSchemaValidateFromFile```, ```::tixiSchemaValidateWithDefaultsFromFile``` and
38 ```::tixiSchemaValidateFromString``` now show line numbers of the error in the xml file.
39 - Support of Matlab R2018a and newer
42 - Added new function ```::tixiRemoveExternalLinks``` to remove links to external files to
43 improve validation of xml files.
46 - Fixed several build problems
47 - Fixed adding empty vectors using ```::tixiAddFloatVector```
48 - Fixed crash for very long error messages
49 - Fixed decoding of special characters by ```::tixiGetTextElement```
55 - Improved cmake export scripts. Tixi installs should now be relocatable.
56 - The cmake build system now builds by default static libraries. If shared
57 libraries are desired, ```-DBUILD_SHARED_LIBS=ON``` has to be passed to cmake.
58 - Implemented caching for the functions ```tixiXPathExpressionGetXPath``` and
59 ```tixiXPathEvaluateNodeNumber``` to speed up queries on large files.
62 - ```tixiSwapElements``` allows to exchange two xml elements.
63 - Added functions TixiGetNumberOfChilds, TixiGetChildNodeName and
64 TixiGetChildElementPaths to C++ Bindings.
67 - Fixed indexing of text nodes. Now it is possible to directly select text nodes
68 using e.g. /root/a/text()[2].
69 - Fixed function ```tixiGetChildNodeName``` to returns also the namespace prefix.
75 - tixiRenameElement To rename an existing element
82 - Completed C++ wrapper
85 - tixiXSLTransformationToString To perform an xml transformation
88 - Fixed an error in Python bindings that added a tixi prefix in front of all methods
94 - Renamed TIXI library to tixi3
95 - TiXI header file is now located under include/tixi3/tixi.h
96 - Added new C++ bindings for TiXI located under include/tixi3/tixicpp.h
100 - Fixed failure in ```tixiUIDCheckExists``` if a uID is duplicate
101 - Fixed invalid characters in Matlab bindings
102 - Fixed missing return value in the matlab bindings of ```tixiUIDCheckExists```
103 - Fixed compilation of the matlab bindings on linux
109 - Added XML namespace support
110 - Added Makefile to build the MATLAB interface with mex
113 - Functions to write elements with namespaces
115 - tixiCreateElementNS
116 - tixiCreateElementNSAtIndex
117 - tixiAddBooleanElementNS
118 - tixiAddDoubleElementNS
119 - tixiAddIntegerElementNS
120 - tixiAddTextElementNS
121 - tixiAddTextElementNSAtIndex
123 - Funtions for namespace modifications
125 - tixiSetElementNamespace
126 - tixiDeclareNamespace
128 - Functions to register namespaces
130 - tixiRegisterNamespace
131 - tixiRegisterNamespacesFromDocument
134 - Fixed hard-coded libraries in CMake config scripts
141 - Removed warning in tixiOpenDocumentRecursive, if no external
142 files are defined in the cpacs file
143 - Fixed problems with intel ifort in linux
144 - Added Fortran 03 interface. This has to be compiled by the user.
145 - The C-code of the matlab mex interface is now always shipped with tixi,
146 if the user wants to build it by himself.
152 - Less messages in case of errors to reduce clutter
155 - Fixed tixiUpdateDoubleElement and tixiUpdateIntegerElement not updating
156 the element content, if the element was empty before
163 - Removed ellipsis argument for error message handler. This
164 change affects code calling tixiSetPrintMsgFunc.
167 - tixiGetPrintMsgFunc to return the internal message handler.
174 - Support to load and save external data from directories
175 relative to the XML file rather than the current working directory
176 - Completely cleaned up code base for a common code style
180 - tixiXPathExpressionGetXPath to query an absolute XPath from
181 an XPath search query
182 - tixiGetDocumentPath to get the path of the currently opened file
185 - All known memory issues fixed (more than 100)
186 - Fixed problems when dealing with external data
187 - Fixed many compiler warnings
194 - Rerouting mechanism for error and warning messages
195 (a custom message handler can be installed)
196 - Added Python 3 support
200 - tixiAddFloatVector now has an additional precision parameter to control
201 e.g. the number of digits after the decimal point
204 - tixiUpdateFloatVector to change the data of an already existing vector
205 - tixiSetPrintMsgFunc to install a custom message handler
208 - tixiGetNumberOfChilds and tixiGetChildNodeName now ignore DTD nodes
209 - MATLAB specific: reverted tixiCheckElement, tixiCheckAttribute,
210 tixiCheckDocumentHandle, tixiCheckUIDExists to old behavior
217 - Automatic generation of python and matlab bindings
218 - TiXI can now be used as an Android NDK native module
219 - TiXI installs cmake config files in order to be used by other projects
223 - Renamed tixiGetChildElementName to tixiGetChildNodeName. Its output is now
224 consistent with DOM standard.
225 - Removed tixiGetRawInterface
226 - Changed arguments in tixiAddPoint MATLAB binding
227 - Removed all matrix related functions
230 - tixiGetNodeType, returns the type of an XML node accoring to DOM standard.
234 - Fixed incorrect return value of tixiGetFloatVector, if number of elements
235 read is smaller than expected
236 - TiXI can now be built with clang also on windows
237 - Fixed wrong formatting of the result XML, when inserting an xml element
238 using tixiCreateElementAtIndex
245 - tixiGetChildElementName - Returns the name of a child element beneath a given path.
246 - tixiGetAttributeName - Returns the name of an attribute of a given node.
247 - tixiGetNumberOfChilds - Returns the number of childs elements of a given path.
248 - tixiGetNumberOfAttributes - Returns the number of attributes of a given node.
249 - tixiGetBooleanAttribute
252 - Switched the API to const char strings. This should produce much less
253 warnings but should not break the current API/ABI.
254 - Added file tixi_version.h including all version information.
255 - Added support for visual leak detector
256 - Added check for python version < 3.0 and python version > 2.5
259 - Fixed tixiUpdateTextElement not updating the text, if the node was empty before
260 - Fixed element retrieving of root node
261 - Fixed uIDCheckExists behaviour of python wrapper
267 - Changed UnitTesting Framework to google-test
268 - Added coverage with gcov (gcc only) to project
269 - Added check that the number of elements in an array is the same as the specified array size
270 - Fixed null-pointer bug in tixiGetTextAttribute
271 - tixiAddCpacsHeader now creates also a CPACS version tag
272 - Documentation overhaul
275 - tixiUpdateIntegerElement
276 - tixiUpdateBooleanElement
282 - Fixed lots of memory leaks
283 - Improved usability of uIDCheckExists (python)
284 - Changed unit testing framework to google test (gtest-1.6.0)
285 - Added more unit tests
291 - Installer for 64-bit Windows
292 - All-In-One installer with 3rd party dependencies for Windows
293 - Added MATLAB interface
299 - Changes to fit CPACS-2.0 and TIGL-2.0.
305 - Using a more recent version of MSVC (2008)
306 - Adding a JAVA (OSGi) Bundle that allows easy usage of TIXI functions from java code to repository. Right now the most important functions are implemented
309 - tixiUpdateDoubleElement replaces an double element of a node
310 - tixiAddTextElementAtIndex could create a new element at a given position
316 - Many functions now print more informative error messages
317 - Added a Python wrapper for the C-code and DLL handling (no need to manually convert cpython variables to python)
320 - tixiUIDCheckLinks (new function) performs a check over all nodes with the uID "isLink"
321 and checks if the corresponding uid exists in that data set
324 - tixiRemoveAttribute does not remove an attribute
325 - tixiCheckAttribute does no longer write an error message when not finding attributes
331 - New function tixiUsePrettyPrint to make pretty print optional
332 - New UID helper functions:
333 - tixiUIDCheckDuplicates checks if all uID are unique
334 - tixiUIDGetXPath gives the XPath to a given uID
335 - tixiUIDCheckExists checks if a uID exists
336 - tixiUIDSetToXPath sets a uID to a given node
337 - tixiXPathEvaluateNodeNumber Evaluates a XPath expression and returns the number
338 of result nodes matching this xpath expression.
339 - tixiXPathExpressionGetTextByIndex Evaluates a XPath expression and returns
340 the text content of the resultnode matching this xpath expression.
342 - Bugfix in tixiAddTextAttributes. The function does now replace a attribute
343 if there is already one with the same name.
344 - Bugfix in tixiRemoveAttribute. The function does deletes a attribute from a node correctly.
345 - TIXI 64-Bit libs are available for linux.