Thanks! I shall keep that in mind. The purpose of this validate() program is not to test my module. It is to help the user develop a consistent and accurate configuration file. Over the last 5 years of development, the syntax of this config file has become more complex. It winds up being possible to configure things that my SW doesn't consider an error, but nevertheless
could surprise the user. This is to make sure "that you've told the program to do what you want". So it spews out all sorts of explanations intended for a human to read. Updating this config file is serious business and is only typically done once per year.