So I'm making a scenario maker of sorts in Python. As it stands now the scenario designer types Class invocations into a module at __main__ level that get stored into a list variable. This variable is stored at setup and used for calls from the Event Handler during game. I just had this idea, though. 
What if I would make a stand-in CivIV game environment that reads the WBS file and stores all the contents into classes and objects. So there would be a game class, a map class, tile class, player class and so on. Then I would create a module that mimics CvPythonExtensions with all the functions used in the my scenario maker code, so that they would be valid and work with the scenario maker code.
What this would in essence give me is an environment where I can use CivIV Python in the IDLE interpreter. So if I wanna test my scenario trigger instances, I don't have to fire up the actual game in order to do so. Also, I could make changes to the stand-in game session by using IDLE just like I would using the Python console in CivIV. (So if I wanna test a trigger condition depending on a city being on a certain plot, I could first use the interpreter to initialize a new city object belonging to that tile. Then the trigger instance would recognize the presence of the city and fire.)
I don't know if this even makes any sense to anyone else, but the hurdle in front of me is that I have little knowledge of XML. Because I would need to interpret the contents of an actual WBS file using Python. I also believe that I would have to load most if not all of the CivIV XML in order to get full functionality. Is there a guide or something in entry-level terms available that explains how this is done?
Lastly, it does sound like a huge undertaking, but I don't think I will at least never be taking the time to learn how to make a graphical interface for my scenario maker. So a purely text based interface would be an option to scripting, which is what I can offer at this point. Like the interface present in IDLE.

What if I would make a stand-in CivIV game environment that reads the WBS file and stores all the contents into classes and objects. So there would be a game class, a map class, tile class, player class and so on. Then I would create a module that mimics CvPythonExtensions with all the functions used in the my scenario maker code, so that they would be valid and work with the scenario maker code.
What this would in essence give me is an environment where I can use CivIV Python in the IDLE interpreter. So if I wanna test my scenario trigger instances, I don't have to fire up the actual game in order to do so. Also, I could make changes to the stand-in game session by using IDLE just like I would using the Python console in CivIV. (So if I wanna test a trigger condition depending on a city being on a certain plot, I could first use the interpreter to initialize a new city object belonging to that tile. Then the trigger instance would recognize the presence of the city and fire.)
I don't know if this even makes any sense to anyone else, but the hurdle in front of me is that I have little knowledge of XML. Because I would need to interpret the contents of an actual WBS file using Python. I also believe that I would have to load most if not all of the CivIV XML in order to get full functionality. Is there a guide or something in entry-level terms available that explains how this is done?
Lastly, it does sound like a huge undertaking, but I don't think I will at least never be taking the time to learn how to make a graphical interface for my scenario maker. So a purely text based interface would be an option to scripting, which is what I can offer at this point. Like the interface present in IDLE.