
This debate is similar to the debate between inheritance and aggregation in
object-oriented modeling. There are some clear arguments for and against
each approach. And yet, when you have a blank sheet of paper in front of
you, the solution is sometimes obvious, sometimes not.
I don’t believe one approach is intrinsically better than the other. I try to
keep an open mind and to adapt to the needs of the application at hand.
For some applications, attributes just seem to work better, for others, ele-
ments are the clear winner. I always keep in mind that conversion is an
option provided the structure is good enough.
Your experience will guide you as well. ...