InDelv Open Source for VisualWorks includes a DOM compliant object model and several related utilities. It has been shipped as a zip file containing source code fileins and an install script.
Use of InDelv Open Source is subject to the MOZILLA PUBLIC LICENSE Version 1.0 (the "MPL"). A copy of the MPL has been provided with the Open Source distribution. If that copy can not be found, you can obtain another on the Internet at http://www.mozilla.org/NPL/.
This release includes a non-validating XML parser written in Smalltalk. The parser is called STXP and is provided in the stxp.st filein. STXP was developed by porting the core SGML parser engine from the publicly available SmallWalker class library. SmallWalker was originally developed by:
Kazuki YASUMATSU
Kazuki.Yasumatsu@fujixerox.co.jp
http://ring.aist.go.jp/openlab/kyasu/
There are no current plans to upgrade STXP to a validating parser. It is close to fully compliant with the XML 1.0 specification and will be used in the Smalltalk versions of our commercial XML products. STXP simulates the SAX parser interface from Java to the greatest extent possible in Smalltalk (where method names have more than one component).
Installation instructions for this release are as follows. If you want to use STXP and the DOM classes together you can use the install-script.st file (refer to instructions within that file). For just the DOM classes you can install dom.st by itself. The DOM classes must be installed before STXP, therefore STXP can not be used by itself without some modification.
Once the source code is installed, the classes can be accessed by methods defined in the DOM specification. A copy of the DOM spec has been included with this release, however it is more attractive to view directly on the Internet. A collection of utilities are also included which are not part of the DOM. These include PlatformUtilities, XMLReader and XMLWriter. Usage examples can be found in the class methods of XMLReader and XMLWriter.
All classes include class comments (in a #classComment class method) which in turn include relevant excerpts from the DOM spec. Always review any applicable class and method comments before contacting technical support with a question.
Note that an ElementBuilder class has also been included. This provides a mechanism to create XML objects directly from source code and includes several convenience methods. As stated in the class comment, this is still viewed as an experimental class and should not be used for applications. If you find it useful, copy the code to your own class and call the underlying DOM methods directly. ElementBuilder may be modified or deprecated in future releases.
Send all questions, comments or contributions to Open Source technical support at open-source@indelv.com.