Language Independent; therefore language incovenient:
Very limited use of the Java class library; Many features are reinvented:
NodeIterator
instead of java.util.Iterator
Bad design:
Method overloading isn't used because JavaScript doesn't support it.
Named constants are often shorts
Only one kind of exception; details provided by constants
No Java-specific utility methods
like equals()
, hashCode()
, clone()
, or
toString()
Unexpected behavior:
The value of a non-empty element is null
DOM implementations allow the creation of malformed documents
Parser independent interfaces but parser dependent implementation classes. Most programs must use the parser dependent classes. JAXP helps solve this, but so far only for DOM Level 1.