The following enhancements have been introduced in this release of XML Extensions for extend:
Temporary files during statement execution
XML Extensions previously utilised temporary files during the execution of the XML EXPORT TEXT, XML IMPORT TEXT, XML TEST WELLFORMED-TEXT and XML VALIDATE TEXT statements. These temporary files are no longer used, as the operation of these statements is entirely in memory (except for the external stylesheet input file, if one is specified).
The XML TRANSFORM TEXT statement
A new statement XML TRANSFORM TEXT has been added that transforms a document in memory to another document in memory.
The three parameters for this statement are the input document pointer, the XSLT stylesheet file name, and the output document pointer, in that order - the lixmldef.cpy COPY file briefly documents this new statement in its comments. No temporary files are written during the operation of the XML TRANSFORM TEXT statement. The memory area for the output document is allocated by the XML TRANSFORM TEXT statement and must be freed by using the XML FREE TEXT statement.
Support for raw output of XML special characters
XML Extensions no longer supports raw output of XML special characters from FILLER data items; XML special characters in FILLER items are now escaped as character references. This was a necessary compromise in the elimination of a temporary file for the XML EXPORT TEXT statement. XSLT stylesheets are a better method of inserting markup text into a result document. The verify sample provided with BIS has been modified from using XML special characters in FILLER to using a stylesheet and is instructive in showing the improved power of using a stylesheet over using XML special characters in FILLER.
Associated with this removal of raw XML output, the output of a document prefix feature in XML EXPORT FILE and XML EXPORT TEXT was also removed.