It would be nice if Element had the following convenience methods: // for consistency with hasChildren(), hasMixedContent() boolean hasAttributes(); // is completely empty? ie, "<ELEM/>" or "<ELEM><ELEM/>" boolean isEmpty();