In this paper, we investigate the issues that arise when binding statically typed languages to XML data. In particular, our motivation is to exploit the computational facilities of mainstream languages when computing over real-world entities encoded as XML documents or document fragments. These include completeness, strong typing, efficiency, as well as user-base and support. We first show that standard binding solutions, such as the SAX and DOM APIs, do not preserve the semantics of such entities, and thus hinder program specification, verification, and optimisation. We then compare two novel approaches, which rely on type information to preserve semantics. The first is Sun's JAXB architecture, in which types are automatically generated from document descriptions. The second is our SNAQue architecture, where types are directly specified by binding computations. For certain classes of applications, we show that the latter offers substantial advantages in terms of simplicity and flexibility. In previous work we have formally proven that SNAQue bindings can be correctly built for a representative, canonical language. Here, we extend that work and present SNAQue/J, a binding mechanism specific to the Java language.
|Number of pages||8|
|Journal||IEEE Internet Computing|
|Publication status||Published - 2003|