Rondo: A Programming Platform for Model Management

From this page you can download a demo version of the Rondo system. It is currently provided as a Java jar file without the source code. A Java runtime environment has to be installed on your system (download JRE). The database backend functionality is not included in the demo version.

Installation instructions

Download and unpack the following zip archive in an empty directory: (600K). The archive includes the page you are reading.

Change the directory to where you unpacked the zip file. Double click on the file demo.bat in Windows Explorer or type demo.bat on command prompt. On Unix, run A file chooser pops up in which you can select a model-management script to execute. Once the script terminates, the file chooser window is displayed again. The execution trace of a script (including possible errors and warnings) is printed in the command prompt window.


Two sample scenarios are included: the change propagation and the reintegration scenario.

Change propagation scenario

The change propagation scenario can be found in the directory propagation and is described in our SIGMOD'03 paper cited below. Given are a relational schema, an XML schema, and a mapping between them. Now, either the relational schema or the XML schema evolves. The script allows propagating the changes done on the relational schema to the XML schema (script: and vice versa (script:

First, execute the script to initialize the schema files. A window will pop up that shows the input schemas and the mapping between them. Close the window to terminate the script.

Then, run or Answer the question "Be verbose?" with "Yes" to walk through the scenarios step by step. In the verbose mode, the intermediate results of the scripts are shown in popup windows. When such a window is displayed, you may simply close it to proceed. However, the intermediate results can also be modified. Specifically, you may have to adjust the mapping suggestions generated automatically by the Match operator (look into the script files). How to edit the mappings is described in the GUI section below.

Reintegration scenario

The reintegration scenario allows merging the changes to a relational or an XML schema that were done independently by two engineers or tools (scripts: and in directory reintegration). This scenario is described in an article submitted for publication. In short, the additions and deletions done on both schemas are reconciled in the resulting schema.

The reintegration scenario is also available in a run-through and verbose version. You will need to adjust the mapping m1x_m2x between the new elements added to both schemas.

Working with the GUI

The demo includes a simple GUI for examining and editing selectors and morphisms. If a selector is shown, click on a highlighted model element to select/unselect it.

If a morphism is shown, the user interface is always in one of the two modes: (a) a single element is selected and all its correspondences are shown, or (b) no elements are selected and the correspondences between all elements are shown. To switch back and forth between these two modes simply click on the same element multiple times.

Once an element has been selected, you can hold the SHIFT key pressed and select/unselect matching elements on the other side using a mouse click. To delete all incident arcs for an element, press CTRL and click on the element.

General note: sometimes you may need to resize a popup window to make the scrollbars appear.

Revision history

DateDistribution fileComments
June 4, 2003rondo-1.0.2.zipBugfix release. Improved XSD-relational converter.
Apr 27, 2003rondo-1.0a.zipFirst release.



Sergey Melnik (primary contact), Erhard Rahm, Phil Bernstein

Last modified: June 4, 2003