I am working on parsing fixed length message encoding in ISO-8859-1 and XML in UTF-8 message with the same content. One advantage that fixed length over XML is easier to extract a certain substring based on position. It is a lot faster too. For XML to do that, it is a bit of kludge to do 2 String.indexOf() in Java to find the substring ‘s begin and end, then extract it with String.substring(). In my case, this substring is Order Id for an order made online by a customer, It made sense that the code peeks into message to get the order id, then look up our DB to see if we have the order id stored in our tables. Obviously fixed length is efficent in lookup without parsing it.