Code Maintenance

In general, you should do all data manipulation for code generation at capture time; not at parsing time. At capture time, all of the original objects are easily available. The alternative is to generate intermediate tokens and write parsing code for them. It is easier just to generate the correct code to begin with, especially if attributes of several objects need to be taken into consideration to make a decision (for example, peer schemas and dynamic controls). It also makes the rrmsg.log much easier to deal with.

As the capture method is necessarily complex, take care to keep it clean and tidy. Where practical, you should transfer larger chunks of code to additional methods, to keep the size of the capture method under control. However, this needs to be balanced against creating a large number of methods in the class, which would also be unwieldy.

To help avoid a naming conflict when ATCG schemas are loaded under an application schema, some naming conventions need to be strictly adhered to.