The current implementation of XMLFormElement
& co heavily depends on IDGenerator
while this served us well for a while, it's actually a quite verbose API and force us to make a lot of injections.
In addition to that, the generated XML is a more complex to read for a human (when one has to debug). Having to troubleshoot imported data with V1643 and V5646 for F234 is not so nice when we could have VOpen VClosed for FStatus.
Finally, it makes things harder to review when the XML is used as a test fixture. For instance for jira import, we have generated XML as fixtures to ensure that given a Jira input, the generated Tuleap output is always the same. It's fine for non regression but when we add new features, the generated fixtures are hard to read because all ids where shuffled. A minor change generate a lot of noise.
ID should not be handled explicitly by the code but derived from names.