OM performance measurement is based on the Sosnoski XML Bench. You can have a look at the original authors code at http://www.sosnoski.com/opensrc/xmlbench/
Executing Tests
The Sosnoski bench usage is as follows
Usage: XMLBench [-options] model file-list
Options are:
- -b show brief results (with abbreviated captions -c show compressed results (comma-separated value fields with results
- ordered by type and within type by file, useful for spreadsheet import)
- (default is p10)
- 0-99 (default is x1)
These options may be concatenated together with a single leading dash.
Model may be any of the following values:
- sax JAXP-compliant SAX2 parser
- crimson Crimson DOM and parser combination
- jdom JDOM with JAXP-compliant SAX2 parser
- dom4j dom4j with JAXP-compliant SAX2 parser
- xerces Xerces DOM and parser combination
- xercesd Xerces deferred DOM and parser combination
- exml Electric XML model and parser combination
- xpp XPP model and parser combination
- xppp XPP pull model and parser combination
AXTM Axis OM table model - Normal mode with no pre building
AXTM2 Axis OM table model - Pre-built mode
AXTM3 Axis OM link list model
The models which support JAXP-compliant SAX2 parsers may use any qualifying parser by setting the javax.xml.parsers.SAXParserFactory system property to the appropriate class.
Note the mode names in bold. these are the newly added models
Properties passed in doing the tests were the following
-c -d -i -s -p50 <model> <filename>
For this measurement three new classes were written. These are
- BenchATM
- BenchATM2
- BenchATM3
And these match the mentioned models respectively
Apart from the jars shipped with the Sosnoski bench suit, the OM-API and the two OM implementation jars are needed.