Tools and Utilities for use with DAVE-ML files


The Australian Defence Science and Technology Organisation has embraced DAVE-ML in a big way. Dr. Dan Newman has written a C++ library, Janus, which can be requested here. It allows easy creation, saving, and interrogation of a DAVE-ML compliant file at run-time from legacy or newly developed analysis or simulation tools. Thanks to Geoff Brian of DSTO for getting this developed and especially for making this software open-source.

XSLT allows multiple translations from XML

It is also possible to convert DAVE-ML files into HTML documents, using a Java-based tool known as eXtensible Stylesheet Language Transformation (XSLT). XSLT is a utility and language that converts an XML file into some other format, such as web-browser friendly (x)HTML or even RTF or PDF. It is even possible to use the XSLT tool to convert a DAVE function definition file into a function-table processor input file (function table processors are often used by simulation facilities to convert ASCII data files into a site-specific run-time function lookup algorithm).

An XSLT input file that converts DAVEfunc.dtd, version 1.4 (not quite the latest version) files into an HTML page is available for downloading here. The results of running this XSLT conversion is available here. The UNIX used command to perform this conversion was:

% java -cp ${XALAN_PATH} org.apache.xalan.xslt.Process -in F16_aero.dml -out F16_aero.html -xsl DAVE_html.xsl

where XALAN_PATH is an environment variable containing the path to the xalan application (such as /usr/local/java/xalan/xalan-j_2_3_1/classes). Xalan is a popular and open-source XSLT processor, available here, for most platforms.

DAVEtools utility programs in Java

Available for download is a tarball containing the source code for a pair of Java 1.5 utilitities that parse a DAVE-ML 1.9 or earlier model file and, among other things, can generate an equivalent Simulink® model. No warranty is expressed or implied for this utility that has not been fully tested. It requires additional Java source code, including jdom, as well as the mathml2 data type definition. More information about DAVEtools is available here.



Feedback to

Last modified Sun, 25-Apr-2010