Previous Page Table of Contents Next Page


6. Implementation aspects and evaluation


An operational prototype tool has been implemented in the period of three months in order to demonstrate and evaluate the approach. The case study used in the development was the Country Profiles application, as illustrated in Section 5. The prototype allows (a) generic XML-based information infrastructure to support multilingual information in an extensible and standard way, (b) application integration structure based on Web services to allow interoperability of FAO systems and information sources for delivery through web portals, (c) use of Microsoft.NET [25], (d) standard XML representations for handling metadata and multilingual documents, and (e) dynamic country profiles report generation. In addition, the prototype has also demonstrated the ability to combine information in multiple languages together in the same pages, to develop new web-based information systems quickly and easily, and to combine and compare statistics from different countries.

The main activities in the development of the prototype consist of the (a) creation of Web services wrappers to existing data sources so that they could be accessed by using the XML information bus, (b) implementation of a new XML document repository that allows structured data to be stored for different languages in a generic and extendible manner, and (c) implementation of the Country Profiles application.

The Web services wrappers were created using Microsoft.NET for the following systems (those already accessible from the web are listed with their URL):

For EIMS, RAP, and NEMS systems the development team had access to the applications source code and respective databases. For FAOBib, GeoNetwork, General Maps, and BBC News the development team did not have access to the source code and the information was accessed by HTTP on scrape HTML data. For FAOSTAT and World Bank Statistics the access to the data was through batch and cache.

Our experience has been very positive. We have found that it was easy to develop the wrappers around the data sources. Some of the activities have been implemented in hours, instead of days, as it was previously thought.

A major advantage of using Microsoft.NET framework was the ease with which Web services wrappers could by created. However, the integration of these Web services with the J2EE platform had some problems due to the difference in handling complex data types and inconsistencies in the use of Web Services Description Language (WSDL).

One problem is related to the fact that.NET uses Document-style Web services by default, whereas the J2EE implementation (Apache Axis) uses RPC-style invocation. To alleviate this problem in.NET we used the SoapRpcService() [30] property to indicate that the.NET Web service was RPC-style. However, there were further problems because Axis did not yet implement support for multi-dimensional arrays or for generating complex type definitions in WSDL, which were created automatically by.NET. To alleviate these problems, and to allow developers to create Web services quickly and easily from existing Microsoft applications (of great importance to FAO, to encourage all departments to make their applications available as Web services), a second tier of Web services was created that automatically made the transformation from the data types generated by.NET to XML arrays that could be used by both.NET or J2EE Web services.

The prototype has shown that it is possible to integrate different information sources (internal and external to the organisation) by preserving their autonomy and that the system can evolve in an easy way by adding and removing data sources. In addition, it has also demonstrated that it is possible to avoid the problem of imposing the use of a single technology in an organization like the FAO. The Web services framework used in our approach allows a platform that is stable, flexible, extensible, and high performance.

The work presented in this paper has provided new opportunities for the FAO. Examples of these opportunities include, but are not limited to, standardization on the way information is shared within FAO and with external parties, provision of new information services within FAO (e.g. ontologies, statistics presentations), provision of an environment to efficiently develop, deploy, and maintain new information services, leading of a next generation information dissemination methods to assist with the aims of the FAO.


Previous Page Top of Page Next Page