Friday, July 30, 2010

DeWBXML: Simple WBXML Decoder

At work I have a recurrent need to decode WAP Binary XML (WBXML) files, to check whether problems with network provisioning, WAP page rendering etc. are the handset's or the content provider's fault. Doing it by hand is tedious and error-prone, and I couldn't get the WBXML Library to work under Windows; so after a while I decided to write my own WBXML decoder.

DeWBXML is a Python application for decoding WBXML files. It was written with extensibility in mind: applications (e.g. WAP provisioning, WML, Push) are specified in Python using a style reminiscent of JSON, and plugged into a generic WBXML parser. It doesn't give much attention to XML namespaces or DTD's, so it's relatively forgiving on well-formedness.

DeWBXML was created out of personal need for a simple, convenient WBXML decoder. As such, development follows a rather inconstant pace; new features are added only as their necessity arises. Contributions and bug reports are welcome, but no guarantees are made on responses, timely or otherwise.