Is this XML?
File this one under the Wonderful Vendor category. We bought a system that has a web component and the vendor doesn’t allow direct access to the database for getting the data out. Instead, they provide an XML extract that you then have to process to show the data.
OK, not the best solution, but I’ve been working with XML for many years and this isn’t rocket science anymore right? So, I request a sample of the XML output so we can begin coding (the system is just coming online). So I get something along the lines of:
<account>accountnumber here
<customer-name>blah blah</customer-name>
<display>
<table border=1 width=”100″ >
<tr><td><font size=2 color=”#000000″>content here</font></td></tr>
</table>
</display>
</account>
Cant you spot the problems? No, there are no typos there. Go ahead, look again…
Bonus points if you said “WTF?!”. The first thing that jumps out is that this technically isn’t XML. Why? Because their aren’t quotes around some of the attribute values. If it isn’t well formed, then it just text with a bunch of angle brackets. When I bring this up to them, their response was “we can put CDATA tags around the html part.” Oh that’s nice, now we can’t parse it if we need to and it now makes the rest of our page non XML compliant (we like clean HTML around here).
Even more bonus points if you caught the ‘account’ tag. To be fair, having mixed content is allowed in XML, after all well formed HTML has mixed content correct? However, I have never seen anybody use mixed content for data transfer purposes. You run into problems like whitespace issues and line feeds.
So here we have this 6 figure piece of software and they don’t understand XML or how people need to use it. To top this all off, their other web piece is the order entry component. This piece of software is running on Tomcat 4 using JDK 1.4.2. Let’s see, Tomcat 4 is what, 3 or 4 years old? JDK 1.4.2 is almost as old. The JDK isn’t quite as big of an issue as the old version of Tomcat, but still. This isn’t something like Websphere (that is notorious for being well behind the curve) which is a huge java app. This thing is a relatively simple web app that should easily port up to something faster and more current.
Vendors never cease to amaze me.
Don’t miss anything, subscribe!
Did you enjoy this post? Why not leave a comment below and continue the conversation, or subscribe to my feed and get articles like this delivered automatically to your feed reader.

Hmmm…I used to work on a project where we used a vendor’s OE solution whose name will remain anonymous…let’s just say that they claimed to have an “advantage” over other solutions.
Anyway, they had a locked down (read “proprietary”) database and you could only get stuff in and out through XML. But they decided it best to build an XML parser themselves rather than use any one of the umpteen XML parsers that are freely available. Consequently, we were always getting XML that was not quite XML.
I wonder if this is the same vendor.