Study of an API migration for two XML APIs


Thiago Tonelli Bartolomei and Krzysztof Czarnecki and Ralf Lämmel and Tijs van der Storm

API migration refers to adapting an application such that its dependence on a given API (the source API) is eliminated in favor of depending on an alternative API (the target API) with the source and target APIs serving the same domain. One may attempt to automate API migration by code transformation or wrapping of some sort. API migration is relatively well understood for the special case where source and target APIs are essentially different versions of the same API. API migration is much less understood for the general case where the two APIs have been developed more or less independently of each other. The present paper exercises a simple instance of the general case and develops engineering techniques towards the mastery of API migration. That is, we study wrapper-based migration between two prominent XML APIs for the Java platform. The migration follows an iterative and test-driven approach and allows us to identify, classify, and measure various differences between the studied APIs in a systematic way.

Bibtex entry
 author = "Thiago Tonelli Bartolomei and Krzysztof Czarnecki and Ralf L{\"a}mmel and Tijs {van der Storm}",
 title = "{Study of an API migration for two XML APIs}",
 booktitle = "{Postproceedings of Software Language Engineering (SLE 2009)}",
 publisher = "Springer",
 series = "LNCS",
 volume = "5969",
 pages = "42--61",
 year = 2010,

Downloads and links

Website maintained by Ralf Lämmel (Email: