Protocol

This document explores the possible xml protocols - advantages and inconvenients - which should support the functionalities :

  • Command writing/reading
  • User identification
  • User authentification

This study will take a close look at the following aspects of the design :

  • user interface
  • all java Reader / Writer support (file or socket)
  • xml compliance
  • external xml framework integration

Basic

Each Command is written/read as an xml document.



user interfaceoutputsimple push interface
inputsimple pull interface
Reader/Writer supportfileok
socketReader is closed at end of xml document
xml complianceone Command per xml document
external xml framework integrationvery easy
problemsone Command per file for file IO
proxy Reader to disable close at end of document

Transmission

A command set is written as a whole xml document.



user interfaceoutputnot straight-forward to write a single Command
inputno demultiplexing
Reader/Writer supportfileok
socketReader is closed at end of xml document
xml complianceok
external xml framework integrationvery easy
problemsamount of xml involved in protocol compared to usefull data
proxy Reader to disable close at end of document

Demultiplexed transmission

Basically the same as document xml with a demultiplxeing occuring on Input and modifying the user interface.



user interfaceoutputnot straight-forward to write a single Command
inputpush interface
Reader/Writer supportfileok
socketReader is closed at end of xml document
xml complianceok
external xml framework integrationeasy
problemsamount of xml involved in protocol compared to usefull data
proxy Reader to disable close at end of document

Multiplexed/demultiplexed transmission

Commands are xml nodes of a root node called 'transmission' defining a single xml document.



user interfaceoutputclose() may be forgotten
inputpush interface
Reader/Writer supportfileok
socketok
xml complianceok
external xml framework integrationtricky, mapping required
problemsuser output interface not very clean
external xml framework integration