Hi Yahya,
First, let's differentiate XML File and XML Code (I am not sure if it's should be called as code or just the way to define).
- XML File is file that consists XML "code", just like json file
- XML "Code" is define and store data in a shareable manner (Just like how JSON object also do)
Yes, changing UI will also update the Architecture that is written in XML form (form not file)
Let me share my thoughts on this. It will be best if you are familiar with "Factory and Seeding" or Creating Initial Data by Code if you used ORM before.
Example:
How do we add the very first user account? do we technically do an insert query to db? of course we can. But what if we can set it without access directly to db - as it might be concerning to access directly. Of course after you have the user let's say the "Administrator", if you want to change the access will it be easier for you to change it through UI that will update the DB or you prefer to update your xml file to update your code, commit, push, pull, restart your server, upgrade your module.
In short this is how you can think about it:
Uploading XML file that has the XML code > create data in db with the xml code as the architecture > you can edit the architecture (which written in XML format) from the UI on the db - more convenient this way.
Key note: XML file sets the initial data by the data that formatted in XML form written in it, DB plays for the changes in future.
Hope this helps.