Skip to Main Content
XML-based markup languages are widely used, e.g., for information exchange and as file formats in various software development and exploration tools. Still, using a metalanguage, such as XML, does not guarantee tool interoperability. The particular XML-based languages used by different tools often vary. They can, none the less, be processed by the same methods and tools. In most UML-based software development tools, support for tool interoperability is provided by using OMG's XML Metadata Interchange (XMI) as a file format. However, in many cases XMI has turned out to be insufficient for storing all information from the UML models. Thus the tool vendors typically extend and/or modify the language so introduce their own XMI dialect. This, in turn, means that the tool interoperability is sacrificed. We discuss a method and a tool called DTD-compaper for exploring differences in exchange formats. DTD-compaper can, in general, be used to identify differences in grammars of XML-based languages. Further, we discuss three different case studies in which we used DTD-comparer. We first compare few commonly used XMI dialects. We further use the tool for comparing different versions of the Graph eXchange Language (GXL).