[gnome-db] Re: Mergeant Data Dictionary



Hi!

Sorry for taking so long to reply...

> For the uninitiated, a data dictionary is a means to model and/or
manage a 
> database at the data element (or data item, or data object, or field)
level.  
> Such a dictionary would list infomation such as name, business
definition, 
> data type, length, precision (where applicable), default values,
ranges of 
> values, lists of values and data sensitivity (e.g., Public,
Confidential, 
> etc).
> 
> My thoughts for the user interface is a tab in the main display,
modeled after 
> the Tables and Views tab, with a grid display, where each column
represents a 
> category of data element metadata, and each row represents a distinct
data 
> element.
> 
> Some of this information (name, scale, data type) is already available
within 
> the GdaFieldAttributes class.  Other data, such as default values,
ranges and 
> data sensitivity would need to be handled separately, perhaps within a
> subclass of GdaFieldAttributes.
> 

As Rodrigo said, I'm working on libmergeant, a library which is a
rewrite of Mergeant's core as a library and without some of the
limitations Mergeant had (and also much better code I hope).
Rewriting Mergeant using libmergeant will be really easy.


Basically this library has the following features (so far):
-> in memory representation of the DBMs objects (database, tables,
views, fields, constraints, etc) with an incremental update from the
DBMs itself.
-> XML storage and retreival
-> any kind of DML query (SELECT, INSERT, UPDATE, DELETE, UNION, etc)
representation and SQL rendering (with the framework ready for XQL
rendering)
-> high level widgets:
   * default widget to handle different data types and plugins possible
for any data type
   * an objects browser (any DBMs object or query), 
   * automatic form generation
   * automatic query generation in some cases


Libmergeant has a (big and complex) data dictionnary which is stored in
files as XML. So, it is possible to write applications which use that
dictionnary (for example a Nautilus view, or an AbiWord plugin to fetch
data from some predefined query in the dictionnary).

Because it is very complex, the dictionnary uses several objects which
are not part of libgda (libmergeant itself uses libgda and libgnomedb
objects when possible).

I've wanted to create a module in the Gnome CVS for libmergeant but I've
not had the time to do so. So far you can download a pre-packaged
version of it at http://malerbavintner.free.fr/libmergeant

Cheers,

Vivien 

NOTE: I'm going on hollidays on Friday for one month, so please use the
malerbevintner <at> free.fr email adress.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]