> * Both Byte and Character streams
> 
>   Pro: - keeps everyone happy
> 
>   Con: - requires more interfaces
>        - requires another method in the Parser interface
>        - requires a new SAX class encapsulating a ByteStream and its
>          recommended encoding (or perhaps the ByteStream interface
>          will have a getEncoding() method)
>        - will greatly complicate the EntityResolver mechanism (the
>          application will need to be able to return a byte stream _or_
>          a character stream -- how could I handle this?)
You could just have a class that encapsulates a structure with three
members:
- a CharacterStream
- a ByteStream
- a String
At least one of the CharacterStream and ByteStream must be non-null. If
the ByteStream is non-null the String can specify the encoding.
James