No one in the brief history of computing has ever written a piece of perfect software. It's unlikely that you'll be the first.
XML documents are much like humans — they are cute and fun to deal with when they’re small but can get really annoying as they grow bigger.
When you come across a stumbling block because the code doesn't quite fit anymore, or you notice two things that should really be merged, or anything else at all strikes you as being “wrong”, don't hesitate to change it. There's no time like the present.
It's not at all important to get it right the first time. It's vitally important to get it right the last time.
DRY ‐ Don't Repeat Yourself ‐ Every piece of knowledge must have a single, unambiguous, athoritative representation within a system.