For XML (users list and playlists responses), Whamb uses CoreFoundation's API, which has an option for binary property lists. It's about 2-4 times smaller than plain XML. WSD uses plain XML tho, but it's not really a problem on a local network anyway. Mac OS X has a great support for plist/XML (all apps use it), it's so useful and efficient for trees and complex data... maybe you need to review your opinion about it:-)
For the scalling problem, I just discovered it's a limitation to CFStream's API (can't send more than about 256K of binary XML). It's gonna be modified in 1.1.1 to use a less specialized way but without any limitation, until this is fixed in CoreFoundation...
For XML (users list and playlists responses), Whamb uses CoreFoundation's API, which has an option for binary property lists. It's about 2-4 times smaller than plain XML. WSD uses plain XML tho, but it's not really a problem on a local network anyway. Mac OS X has a great support for plist/XML (all apps use it), it's so useful and efficient for trees and complex data... maybe you need to review your opinion about it :-)
For the scalling problem, I just discovered it's a limitation to CFStream's API (can't send more than about 256K of binary XML). It's gonna be modified in 1.1.1 to use a less specialized way but without any limitation, until this is fixed in CoreFoundation...