I have a class hierarchy with base class Element where each derived element type may have collection of child elements.
public abstract class Element { [XmlAr