The code of MoeNavigatorEngine is designed to be modular so that each part could be used without the other parts of the engine. Interface definitions make it possible to replace one part with another one or to define a custom part for special tasks.
This interface is designed for markup language parsers like the HTML and XML parser.
An interface for stylesheet definition parsers like the CSS parser.
MNENetworkHandler and MNENetProtocolHandler
MNENetworkHandler is responsible for handling raw network connections while MNENetProtocolHandler handles network protocols such as HTTP, FTP etc.
It might be possible to provide a handler that implements a network and network protocol handler at the same time. (In case it is not possible the interface must be changed. Please file a bug report in that case.)
The MNERenderer interface handles the output of parsed documents. How the output is presented depends on the renderer implementation.