What's the best way to modify MoML inside of kar files? Should I use ptolemy.moml.MoMLParser, some other class in Kepler, standard tools (XSLT/DOM) or something else?
I'm trying to do two types of operations with MoML. After I update source code for actors, I want to have a way to update all of the affected kar files. This could be adding, removing or renaming ports and parameters or changing types and class names across all local kar files. All of these operations appear to be supported as filters in the MoML parser. The second task is doing a diff on MoML files without GUI or documentation related elements. The automated layout in the GUI is great, but small changes in the workflow can result in big changes in the layout. If I give a kar to someone and they update it, I want to be able to see what changes they made besides GUI placement or documentation. This also appears to be supported by MoMLParser since there are filters to remove parts of the file. When I tried ptolemy.moml.MoMLParser with org.kepler.moml.filter.BackwardCompatibility.initialize(), I get a lot of unnecessary changes. It would cause problems if I checked in the MoML files and ran 'svn blame'. I noticed there is a file ptolemy-kepler-2.3/src/adm/bin/updatemoml which calls ptolemy-kepler-2.3/src/adm/bin/updateMoMLFile.tcl and runs diff to see if there were any differences. I don't think that would work properly on a MoML from Kepler because there would be many changes. _______________________________________________ Kepler-dev mailing list [email protected] http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-dev
