next up previous
Next: Possibility of Semantic Web Up: Semantic Computing Vision of Previous: Semantic Computing Vision of

Implementation

Main implementation strategy of GNOWSYS is to develop it as a hybrid database (with RDBMS, OODBMS, and distributed DB features) without encoding in XML, but with an ability to map to any XML encoding schemes available with ease. This point is specially mentioned here because the hype created among the community on XML actually made XML based knowledge representation tools very very slow. Loading an XML file representing, say of the popular English thesaurus Wordnet[29], in any such application and perform faster manage, search, and retrieval operations, we will realize that XML encoding at an application layer is not a sane idea for larger knowledge bases. Keeping this in mind the physical storage of knowledge base in GNOWSYS is implemented on a web application server ZOPE (Zee Object Publishing Environment)[30], which took care of several requirements of a database, helping us to focus on implementing a faster prototype, including making it inter-operable. ZOPE provides state-of-the-art features for publishing (serving) objects on the Internet, customizing and extending existing objects, multi-user authentication, transaction management, version control, history, and most important for our purpose, a catalogue for indexing both data and metadata stored in the knowledge base. ZOPE also provides more than one architecture of creating views of the database using DTML (Dynamic Template Markup Language) and ZPT (Page Templates) templating architectures. Its in-built support for XML-RPC came in handy for easy implementation of an RCP port of GNOWSYS, GQL.

Figure 2: A diagram illustrating the implementation model of GNOWSYS database. ZOPE's Zserver, ZODB, Catalogue, and another third-party product BTreeFolder2 provide a feature rich environment for GNOWSYS. Diagram is made based on Zope Architecture[31]
\includegraphics[width=3in]{gdb.eps}

GNOWSYS is developed by using extendibility model of ZOPE. All the GNOWSYS component classes and interfacing functions are all implemented in a versatile, full-featured object-oriented programming language Python [3], in which ZOPE is also developed. The knowledge base is stored physically within ZODB, a special object storing tank, the contents of which can be accessed through ZServer which supports a wide variety of RPC protocols via HTTP.


next up previous
Next: Possibility of Semantic Web Up: Semantic Computing Vision of Previous: Semantic Computing Vision of
Nagarjuna G. 2005-01-25