XML'in data modelini objeye map edip, kendi DB data modeline göre işlem yapıyordur.
Herkesin kendi DB data modeli farklı ise, mecburen yazılımda farklıdır :)
XML için dinamik mapping yapabilsen dahi arka planda farklı data modeller içinde benzer mapping ya da iş kurallarını mecburen manuel yazmak zorundasın ;)
---
Merkezi bir ürün kataloğu olup, farklı siteler gelip bu merkezi ürün kataloğundan beslenmesi bu tür işlerde şart diğer türlüsü işin içinden çıkman çok zor. Senkronizasyon problemleri ile uğraşırsın.
Katalog için performans vs düşünülürse Mongo DB kullanılabilir.