APIが悪いとストレスがたまる

Javaで書いてあるライブラリなのに、挙動を変えるためのパラメータが public なクラス変数だったり、I/O エラーが発生したら例外を catch して false を返したりとか、ほんとこれでプログラム書いているとストレスがたまる。
つうか、SGMLを読んでいるのに実体参照とかを処理する気がないのは仕様ですか?出力するときも実体参照への置換とかしていないように見受けられますが。