Salve a tutti!

Devo progettare un'applicazione client-server per la gestione di un newsgroup. Avevo pensato di memorizzare i messaggi all'interno di un file xml così strutturato:

codice:
<?xml version="1.0" encoding="UTF-8"?>
<lista>
  <newsgroup nome="prova">
    <messaggio id="01">
      <titolo>messaggio di prova</titolo>
      <autore>Io</autore>
      <data>data</data>
      <allegato>allegato</allegato>
      <testo>qui ci va il testo!</testo>
    </messaggio>
  </newsgroup>
</lista>
Inoltre sul newsgroup possono essere postati messaggi testuali con allegati file binari(massimo un allegato ad ogni messaggio), quindi si deve definire un formato di comunicazione fra client e server e lo scambio di messaggi.

Come posso gestire l'invio di file binari? Definito un formato posso memerizzarlo direttamente nel file xml?

E' la prima volta che scrivo un'applicazione di questo tipo...

Grazie