This stuff isn't done yet.
While going through the interfaces of over a dozen
services implementations I have understood that we
can make a meta-specification which allows each of
them to keep their own IRC services culture, yet at
the same time provide a well-defined interface to
the client developers.
This means adding some negotation options and
general flexibility.
To get a better view of the work in progress, please look at
1. my irc+ wiki page
2. the comments embedded in the XML files.
Rock'n'roll --lynX