The widespread use of Web technologies and, in particular, the ever growing number of applications adopting XML [XML00] as the standard language for the encoding of any piece of structured information, naturally calls for efficient implementations of DOM, the standard interface to access the internal structure of documents. The DOM level 2 API [DOM], which has been conceived as a suitable hierarchy of classes, has its most natural mapping in object-oriented languages such as C++ [CPP] and Java [Java]. This is also testified by the already existing implementations in those languages. However, as of today, most applications are commonly developed in C, because of its standardization, flexibility, efficiency and availability. In this paper we describe the current state of Gdome2, which provides a DOM implementation for the C programming language [C]. The library is meant to become a key module of the Gnome architecture, supplying a range of facilities for an efficient, portable, and easy management of XML documents in the Gnome way. We conclude with a comparison between Gdome2 and Xerces, one of the more advanced and actively developed DOM implementations.
[1]
Brian W. Kernighan,et al.
The C Programming Language, Second Edition
,
1988
.
[2]
Ken Arnold,et al.
The Java Programming Language
,
1996
.
[3]
Jonathan Robie,et al.
Document Object Model (DOM) Level 2 Specification
,
1998
.
[4]
David Holmes,et al.
The Java Programming Language, Third Edition
,
2000
.
[5]
Joan M. Aliprand.
The Unicode Standard
,
1996
.
[6]
M. F.,et al.
Bibliography
,
1985,
Experimental Gerontology.
[7]
Bjarne Stroustrup,et al.
The C++ Programming Language: Special Edition
,
2000
.
[8]
Chris Dix,et al.
Beginning XML
,
2000
.
[9]
C. M. Sperberg-McQueen,et al.
eXtensible Markup Language (XML) 1.0 (Second Edition)
,
2000
.
[10]
Bjarne Stroustrup,et al.
C++ Programming Language
,
1986,
IEEE Softw..
[11]
Francois Yergeau.
UTF-8, a transformation format of ISO 10646
,
1998,
RFC.
[12]
C. M. Sperberg-McQueen,et al.
Extensible Markup Language (XML)
,
1997,
World Wide Web J..