XML-а просто описва (евентуално) голямо количество информация. Не е начин да предадеш въпросното количество информация. Ако ти е по-удобно да го ползваш - ОК. Аз лично мразя XML, защото се парсва трудно и защото е голямо разхищение. Обаче ако ти е най-лесно да го ползваш, няма проблеми, има и доста библиотеки за парсване на XML-и. Сега вече дали въпросният XML ще го засилиш по unix domain socket, дали ще го пишеш в shared memory, дали ще го пращаш по mqueue, сокет или pipe, няма значение.
П.П на този въпрос, аз не съм човекът, който да ти даде добър отговор. Питай някой C++ програмист с опит в абстрактното мислене. Аз съм тъп и искам просто вход и изход и се опитвам да дам оптималния път между двете