It depends on the application. An empty tag matters, but it is NOT the same if it DOES NOT HAVE THERE. Depending on the design of the application, you need to save it or not.
I saw many applications where empty and / or closing tags ( <otherInfo/> ) made sense in the application, and if they were not there, the application would stop working.
Just to give an example: In magento, some cache servers require a cache prefix. If its empty is an empty prefix, but if it is not there, it just won't work. This will be one example of how you can use empty tags.
Another application I worked with was the directory API for the on-demand video provider.
there was node only <itempurchased/> to indicate that the item was purchased and could be served. I personally do not like this design, because it is unique. I would design it as <itempurchased>true</itempurchased> or <itempurchased bought="true/> or something else, but you are a world of collaboration :).
Therefore, they DO contain a value. This is a string with zero length .
If you do not want to change the data, you need to keep empty and closing tags.
source share