DTDChart: XML Document Structure Charts
DTDChart draws graphical structure charts for any XML DTD. It is
intended to help XML document analysts and DTD designers visualize the
document structures and DTD designs.
Immediate Order Fulfillment!
DTDChart is distributed as shareware. You may freely use the freeware version,
which prohibits printing charts and/or saving charts as JPEG files. To remove these restrictions
this please Register DTDChart at RegNet.
When registered you will immediately be sent an email with the link to
download the full version.
DTDChart's features include:
- Draws any XML element declaration within a DTD
- Vertical or horizontal chart display
- Handles multi-page charts, with page layout shown on underlying grid
- User selectable font and text size
- User-selectable max tree depth for easy handling of large & complex DTDs
- Optional display of leading comment for each element
- Optional display of attribute declarations for each element
- Configurable INI file for specifying default font, orientation, max tree depth, and other charting parameters
- Saves chart images as SVG or JPEG files (registered version only)
- Prints charts to printer (registered version only)
- Zooms display in or out for preview of multi-page charts
Here's an example screen shot:
Another DTDChart example can be found at Silmaril Consultants
Usage
To use DTDChart, launch the dtdchart.jar file as a Java application as shown below. The example file dtdchart.bat (provided) demonstrates this.
java -jar dtdchart.jar
Then open a valid DTD file from the Files..Open menu. DTDChart will display a structure chart of the element declarations.
DTDChart also accepts a command-line argument specifying the
name of the .XML file to open, as in:
java -jar dtdchart.jar personal.xml
For each element declaration, DTDChart displays a box with the element
name (and optionally any leading comments). Within each box
standard DTD symbols are used to indicate an
elements optional repetition within a document:
- an asterik (*) indicates the element may be present 0 or more times;
- a plus (+) one or more times;
- a question mark (?) 0 or 1 times;
- and in the absence of a symbol the element is required once and only once.
The content specifications (and optionally the attribute declarations)
for each element are shown underneath (or to the right), with
appropriate connector lines. Also note that parameter entity references used in the DTD are first expanded, so
that the chart is drawn normalized without any entity references.
Using options with the "View" menu, the font, fontsize, orientation,
and max tree depth can be changed (for very large DTDs,
such as DocBook, set the MaxTreeDepth very shallow, such as a value of 2).
Charts can also be printed and/or saved as JPEG files (great for drawing large charts). Future versions may support
copying to the clipboard as bitmaps. For charts that span pages, page boundary
lines are drawn for reference on the screen.
Default charting parameters can be specified in an initialization file. This file must be named dtdchart.ini and exist in the startup directory. The startup parameters include:
- MaxDepth: the maximum element depth drawn in the chart (for depth <=0, the entire chart is drawn)
- Font: the default display font
- Fontsize: the default fontsize in points
- Xpad: the minimum width between elements in the chart
- Ypad: the minimum height between elements in the chart
- Orientation: default chart orientation (horizontal or vertical)
Obtaining DTDChart
The trial version is available here: dtdchart.zip and contains the following files:
- dtdchart.htm (this documentation file)
- dtdchart.jar (DTDChart Java executable)
- dtdchart.bat (Example of how to run DTDChart via command line)
- dtdparser115.jar (additional library)
- JFontChooser.jar (additional library)
- dtdchart.ini (an initialization file specifying default charting parameters)
- memo.dtd (small sample DTD for a business memo)
- personal.dtd (sample DTD for employee information)
- play.dtd (a larger sample DTD for a Shakespeare play)
- batik-svggen.jar batik-dom.jar batik-svg-dom.jar xerces.jar batik-awt-util.jar batik-util.jar batik-xml.jar (Batik SVG libraries for registered version only)
DTDChart requires a Java2 (1.3 or later) runtime environment.
Installation
To install DTDChart, unpack the distribution ZIP file into a directory
on your hard drive (normally c:\DTDChart). To run DTDChart
from any other directory, place this directory into your PATH statement.
Release Notes
- Version 3.5, 19-July-2002: bug fixes in DTD parser
- Version 3.4, 06-May-2002: zooming features
- Version 3.3a, 24-Apr-2002: fix to null pointer problem displaying some DTDs; also FileOpen dialog now remembers last directory properly
- Version 3.3, 21-Apr-2002: output charts in SVG format; changed all sample DTD names to lowercase for correct behavior on UNIX; bug fix in JPEG output
- Version 3.2, 18-Apr-2002: optional display of leading comments and attributes
- Version 3.1, 08-Apr-2002: Menu key accelerators, automatic chart display upon open, minor bug fixes
- Version 3.0, 24-Jan-2002: Web release of Version 3.0. Note that "copy to clipboard" feature is not yet implemented; we are working on this in a platform-neutral way. Registered users will receive a free upgrade when this feature is implemented.
- Version 3.0 beta, 12-Dec-2001: beta-test release of new Java version.
Future Development
Some ideas for additional features currently include:
- Copy to clipboard
- Charting for XML Schemas
Registration & Licensing
DTDChart and its accompanying documentation are Copyright © 2001,2002 Intelligent Systems Research. All Rights Reserved.
Your use of the program indicates acceptance of the License Agreement with Intelligent Systems Research.
Also:
- DTDChart uses the DTDParser library by Mark Wutka, which is used under the terms of the GNU Lesser General Public License as a "work that uses the library".
- This product includes software developed by the Apache Software Foundation (http://www.apache.org/). Specifically, DTDChart includes code from the Apache Batik Project to render SVG graphics.
DTDChart is distributed as shareware. You may use the freeware
version of DTDChart for any period, however we cannot provide support for this version.
Registration entitles users to up to 1 hour of technical support. The registered version is available under these licenses:
For more information contact:
Intelligent Systems Research
5313 N. Kenmore Suite 3A Chicago IL 60640 USA
+(1) 773-989-0426 FAX: +(1) 520-438-6482
email:info@intsysr.com
http://www.intsysr.com