Having been writing code that operates on XML for a while, I have always wondered what is the reason for having both Nodes and Elements? (We know what the differences are). Both of them represent tags (more or less) and having different methods, just makes the code complicated.
Are there any special semantics or practical reasons, or is it just the fact that the DOM spec was committee generated?