gnomemm r1771 - in libgdamm/trunk: . examples/simple libgda/src



Author: jhs
Date: Wed Nov  5 14:17:34 2008
New Revision: 1771
URL: http://svn.gnome.org/viewvc/gnomemm?rev=1771&view=rev

Log:
2008-11-05  Johannes Schmid  <jschmid openismus com>

	* examples/simple/main.cc:
	Remove debugging code
	
	* libgda/src/batch.hg:
	* libgda/src/blobop.hg:
	* libgda/src/dataaccesswrapper.hg:
	* libgda/src/datamodelarray.hg:
	* libgda/src/datamodeliter.hg:
	* libgda/src/dataselect.hg:
	* libgda/src/error.hg:
	* libgda/src/holder.hg:
	* libgda/src/libgda_docs.xml:
	* libgda/src/metastore.hg:
	* libgda/src/metastruct.hg:
	* libgda/src/row.hg:
	* libgda/src/serveroperation.hg:
	* libgda/src/serverprovider.hg:
	* libgda/src/set.hg:
	* libgda/src/sqlparser.hg:
	* libgda/src/statement.hg:
	* libgda/src/threader.hg:
	* libgda/src/xatransaction.hg:
	Added class documentation (and regenerated docs). Still needs some cleanup.

Modified:
   libgdamm/trunk/ChangeLog
   libgdamm/trunk/examples/simple/main.cc
   libgdamm/trunk/libgda/src/batch.hg
   libgdamm/trunk/libgda/src/blobop.hg
   libgdamm/trunk/libgda/src/dataaccesswrapper.hg
   libgdamm/trunk/libgda/src/datamodelarray.hg
   libgdamm/trunk/libgda/src/datamodeliter.hg
   libgdamm/trunk/libgda/src/dataselect.hg
   libgdamm/trunk/libgda/src/error.hg
   libgdamm/trunk/libgda/src/holder.hg
   libgdamm/trunk/libgda/src/libgda_docs.xml
   libgdamm/trunk/libgda/src/metastore.hg
   libgdamm/trunk/libgda/src/metastruct.hg
   libgdamm/trunk/libgda/src/quarklist.hg
   libgdamm/trunk/libgda/src/row.hg
   libgdamm/trunk/libgda/src/serveroperation.hg
   libgdamm/trunk/libgda/src/serverprovider.hg
   libgdamm/trunk/libgda/src/set.hg
   libgdamm/trunk/libgda/src/sqlparser.hg
   libgdamm/trunk/libgda/src/statement.hg
   libgdamm/trunk/libgda/src/threader.hg
   libgdamm/trunk/libgda/src/xatransaction.hg

Modified: libgdamm/trunk/examples/simple/main.cc
==============================================================================
--- libgdamm/trunk/examples/simple/main.cc	(original)
+++ libgdamm/trunk/examples/simple/main.cc	Wed Nov  5 14:17:34 2008
@@ -100,23 +100,7 @@
   Glib::RefPtr<Gda::DataModel> data_model;
   try
   {
-    //data_model = cnc->statement_execute_select (stmt, params);
-    // C equivalent to above call (more or less what libgdamm does internally):
-    // This returns a non-Null model
-    GdaDataModel* model = gda_connection_statement_execute_select(cnc->gobj(), Glib::unwrap(stmt), Glib::unwrap(params), NULL);
-    if(model == NULL)
-    {
-      std::cout << "GdaDataModel == NULL" << std::endl;
-    }
-
-    g_message ("Type: %s", G_OBJECT_TYPE_NAME (model));
-    // This return 0 instead of a Gda::DataModel object
-    data_model = Glib::wrap(model);
-    if(!data_model)
-    {
-      std::cout << "Gda::DataModel == 0" << std::endl;
-      return;
-    }
+    data_model = cnc->statement_execute_select (stmt, params);
   }
   catch(const Glib::Error& err)
   { 

Modified: libgdamm/trunk/libgda/src/batch.hg
==============================================================================
--- libgdamm/trunk/libgda/src/batch.hg	(original)
+++ libgdamm/trunk/libgda/src/batch.hg	Wed Nov  5 14:17:34 2008
@@ -33,9 +33,13 @@
 
 typedef Glib::SListHandle<Glib::RefPtr<const Statement> > StatementSList;
 
-/** Container for several values
+/** Multiple SQL statements groupped
  *
- * @ingroup Connection
+ * The Gda::Batch object represents one or more SQL statements (as Gda::Statement objects) in a single object.
+ * A Gda::Batch can either be built "manually" by assembling together several Gda::Statement objects, or from an 
+ * SQL string using a Gda::SqlParser object.
+ *
+ * @ingroup DataHandlers
  */
 class Batch : public Glib::Object
 {

Modified: libgdamm/trunk/libgda/src/blobop.hg
==============================================================================
--- libgdamm/trunk/libgda/src/blobop.hg	(original)
+++ libgdamm/trunk/libgda/src/blobop.hg	Wed Nov  5 14:17:34 2008
@@ -33,6 +33,8 @@
 /** Blobs handling. 
  * This object is a base class for individual database providers which support BLOB types.
  * It supports operations to read and write data in a BLOB.
+ *
+ * @ingroup DataHandlers
  */
 class BlobOp : public Glib::Object
 {

Modified: libgdamm/trunk/libgda/src/dataaccesswrapper.hg
==============================================================================
--- libgdamm/trunk/libgda/src/dataaccesswrapper.hg	(original)
+++ libgdamm/trunk/libgda/src/dataaccesswrapper.hg	Wed Nov  5 14:17:34 2008
@@ -35,7 +35,7 @@
  * The Gda::DataAccessWrapper object simply wraps around another Gda::DataModel data model 
  * object and allows data to be accessed in a random way while remaining memory efficient as much as possible.
  *
- * @ingroup Connection
+ * @ingroup DataModels
  */
 class DataAccessWrapper
  : public Glib::Object,

Modified: libgdamm/trunk/libgda/src/datamodelarray.hg
==============================================================================
--- libgdamm/trunk/libgda/src/datamodelarray.hg	(original)
+++ libgdamm/trunk/libgda/src/datamodelarray.hg	Wed Nov  5 14:17:34 2008
@@ -34,6 +34,11 @@
 
 /** An implementation of DataModel based on an array.
  *
+ * The Gda::DataModelArray object is a data model which internally uses a GArray to index all its rows (represented as Gda::Row objects).
+ * In this data model, all the data is stored in memory, which can be a memory limitation if the number of rows is huge.
+ * This type of data model is easy to use to store some temporary data, and has a random access mode (any value can be accessed at 
+ * any time without the need for an iterator). 
+ *
  * @ingroup DataModels
  */
 class DataModelArray

Modified: libgdamm/trunk/libgda/src/datamodeliter.hg
==============================================================================
--- libgdamm/trunk/libgda/src/datamodeliter.hg	(original)
+++ libgdamm/trunk/libgda/src/datamodeliter.hg	Wed Nov  5 14:17:34 2008
@@ -34,7 +34,35 @@
 
 _WRAP_GERROR(DataModelIterError, GdaDataModelIterError, GDA_DATA_MODEL_ITER_ERROR)
 
-// TODO
+/** Data model iterator
+  *
+  * A Gda::DataModelIter object is used to iterate through the rows of a Gda::DataModel. 
+  * If the data model is accessible in a random access way then any number of Gda::DataModelIter 
+  * objects can be created on the same data model, and if the data model only supports a cursor 
+  * based access then only one Gda::DataModelIter can be created. In any case creating a 
+  * Gda::DataModelIter should be done using the create_iter() method. 
+  *
+  * When a Gda::DataModelIter is valid (that is when it points to an existing row in the data model it iterates through), 
+  * the individual values (corresponding to each column of the data model, at the pointer row) 
+  * can be accessed using the get_value_at() or 
+  * get_value_for_field() methods (or in the same way Gda::Set's values are 
+  * accessed as Gda::DataModelIter inherits the Gda::Set).
+  *
+  * Right after being created, a Gda::DataModelIter is invalid (does not point to any row of its data model).
+  * To read the first row of the data model, use the move_next() method. 
+  * Calling this method several times will move the iterator forward, up to when the data model has 
+  * no more rows and the Gda::DataModelIter will be declared invalid (and move_next() 
+  * has returned FALSE). Note that at this point, the number of rows in the data model will be known.
+  *
+  * If the data model supports it, a Gda::DataModelIter can be moved backwards using the 
+  * move_prev() method. However if the iterator is invalid, moving backwards will 
+  * not be possible (on the contrary to move_next() which moves to the first row).
+  *
+  * The move_at_row() method, if the iterator can be moved both forward and backwards,
+  * can move the iterator to a specific row (sometimes faster than moving it forward or backwards a number of times).
+  *
+  * @ingroup DataModels
+  */
 class DataModelIter
  : public Set
 {

Modified: libgdamm/trunk/libgda/src/dataselect.hg
==============================================================================
--- libgdamm/trunk/libgda/src/dataselect.hg	(original)
+++ libgdamm/trunk/libgda/src/dataselect.hg	Wed Nov  5 14:17:34 2008
@@ -34,8 +34,27 @@
 
 /** Data models returned by the execution of a SELECT statement
  *
+ * This data model implements the Gda::DataModel interface and is the required 
+ * base object when database providers implement a data model returned when a 
+ * SELECT statement has been executed. As the GdaDataModel interface is implemented, 
+ * consult the API to access and modify the data held in a GdaDataSelect object.
  *
- * @ingroup Connection
+ * The default behaviour however is to disallow modifications, and this section 
+ * documents how to characterize a Gda::DataSelect to allow modifications. 
+ * Once this is done, any modification done to the data model whill be propagated 
+ * to the modified table in the database using INSERT, UPDATE or DELETE statements.
+ *
+ * After any modification, it is still possible to read values from the data model
+ * (even values for rows which have been modified or inserted). The data model 
+ * might then execute some SELECT statement to fetch some actualized values. 
+ * Note: there is a corner case where a modification made to a row would make 
+ * the row not selected at first in the data model (for example is the original 
+ * SELECT statement included a clause "WHERE id < 100" and the modification sets 
+ * the "id" value to 110), then the row will still be in the data model 
+ * even though it would not be if the SELECT statement which execution 
+ * created the data model in the first place was re-run.
+ *
+ * @ingroup DataModels
  */
 class DataSelect
  : public Glib::Object,

Modified: libgdamm/trunk/libgda/src/error.hg
==============================================================================
--- libgdamm/trunk/libgda/src/error.hg	(original)
+++ libgdamm/trunk/libgda/src/error.hg	Wed Nov  5 14:17:34 2008
@@ -32,6 +32,9 @@
 	
 /** This objects is the boxed type of a Glib::Error
  *
+ * This is used to pass Glib::Error savely through signals. You can use
+ * the gerror() method to access the underlying Glib::Error.
+ * 
  * @ingroup DataHandlers
  */
 class Error

Modified: libgdamm/trunk/libgda/src/holder.hg
==============================================================================
--- libgdamm/trunk/libgda/src/holder.hg	(original)
+++ libgdamm/trunk/libgda/src/holder.hg	Wed Nov  5 14:17:34 2008
@@ -34,9 +34,12 @@
 
 class DataModel;
 
-/** Container for several values
+/** Container for a single Gda::Value
  *
- * @ingroup Connection
+ * The GdaHolder is a container for a single Gda::Value value. It also specifies 
+ * various attributes of the contained value (default value, ...)
+ *
+ * @ingroup DataHandlers
  */
 class Holder : public Glib::Object
 {

Modified: libgdamm/trunk/libgda/src/libgda_docs.xml
==============================================================================
--- libgdamm/trunk/libgda/src/libgda_docs.xml	(original)
+++ libgdamm/trunk/libgda/src/libgda_docs.xml	Wed Nov  5 14:17:34 2008
@@ -1,88 +1,80 @@
 <root>
-<function name="gda_query_field_value_is_parameter">
+<function name="gda_sql_select_field_new">
 <description>
-Tells if @field can be considered as a parameter
+Creates a new #GdaSqlSelectField structure and sets its parent to @parent. A
+#GdaSqlSelectField is any expression in SELECT statements before the FROM clausure.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @field can be considered as a parameter
+<return> a new #GdaSqlSelectField structure.
 </return>
 </function>
 
-<function name="gda_quark_list_new_from_string">
+<function name="gda_sql_select_order_serialize">
 <description>
-Creates a new #GdaQuarkList given a connection string.
+Creates a new string description of the ORDER BY clausure used in a SELECT statement.
 
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> a connection string.
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GdaQuarkList.
+<return> a new string with the description of the ORDER BY or &quot;null&quot; in case @order is invalid.
 </return>
 </function>
 
-<function name="gda_config_has_section">
+<function name="gda_quark_list_new_from_string">
 <description>
-Checks whether the given section exists in the configuration
-system.
+Creates a new #GdaQuarkList given a string.
+
+ string must be a semi-colon separated list of &quot;&amp;lt;key&amp;gt;=&amp;lt;value&amp;gt;&quot; strings (for example
+&quot;DB_NAME=notes;USERNAME=alfred&quot;). Each key and value must respect the RFC 1738 recommendations: the
+&amp;lt;constant&amp;gt;&amp;lt;&amp;gt;&amp;quot;#%{}|\^~[]&amp;apos;`;/?:@=&amp;amp;&amp;lt;/constant&amp;gt; and space characters are replaced by 
+&amp;lt;constant&amp;gt;&amp;quot;%%ab&amp;quot;&amp;lt;/constant&amp;gt; where
+&amp;lt;constant&amp;gt;ab&amp;lt;/constant&amp;gt; is the hexadecimal number corresponding to the character (for example the
+&quot;DB_NAME=notes;USERNAME=al%%20fred&quot; string will specify a username as &quot;al fred&quot;). If this formalism
+is not respected, then some unexpected results may occur.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration section.
+<parameter name="string">
+<parameter_description> a string.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the section exists, %FALSE otherwise.
+<return> the newly created #GdaQuarkList.
 </return>
 </function>
 
-<function name="gda_column_set_unique_key">
+<function name="gda_data_model_iter_move_at_row">
 <description>
-Sets the &apos;unique key&apos; flag of the given column.
+Synchronizes the values of the parameters in @iter with the values at the @row row.
 
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="uk">
-<parameter_description> whether if the given column should be an unique key.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+If @row is not a valid row, then the returned value is FALSE, and the &quot;current-row&quot;
+property is set to -1 (which means that gda_data_model_iter_is_valid() would return FALSE)
 
-<function name="gda_connection_rollback_savepoint">
-<description>
-Rollback all the modifications made after the SAVEPOINT named @name.
+If any other error occurred then the returned value is FALSE, but the &quot;current-row&quot;
+property is set to the @row row.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name of the savepoint to rollback to
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter name="row">
+<parameter_description> the row to set @iter to
 </parameter_description>
 </parameter>
 </parameters>
@@ -90,140 +82,82 @@
 </return>
 </function>
 
-<function name="gda_dict_type_get_g_type">
-<description>
-Get the gda type of a data type
-
-
-</description>
-<parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the gda type
-</return>
-</function>
-
-<function name="gda_query_add_join">
+<function name="gda_connection_get_prepared_statement">
 <description>
-Add a join to @query. A join is defined by the two #GdaQueryTarget objects it joins and by
-a join condition which MUST ONLY make use of fields of the two entities represented by the
-targets.
-
-For any given couple of #GdaQueryTarget objects, there can exist ONLY ONE #GdaQueryJoin which joins the
-two.
+Retreives a pointer to an object representing a prepared statement for @gda_stmt within @cnc. The
+association must have been done using gda_connection_add_prepared_statement().
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="gda_stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE on success, and FALSE otherwise
+<return> the prepared statement, or %NULL if no association exists
 </return>
 </function>
 
-<function name="gda_dict_get_object_by_string_id">
+<function name="gda_connection_rollback_savepoint">
 <description>
-Fetch a pointer to the #GdaObject which has the @strid string ID.
+Rollback all the modifications made after the SAVEPOINT named @name.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="strid">
-<parameter_description> a string
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-</parameters>
-<return> the corresponding #GdaObject, or %NULL if none found
-</return>
-</function>
-
-<function name="gda_value_compare_ext">
-<description>
-Like gda_value_compare(), compares two values of the same type, except that NULL values and values
-of type GDA_TYPE_NULL are considered equals
-
-
-</description>
-<parameters>
-<parameter name="value1">
-<parameter_description> a #GValue to compare.
+<parameter name="name">
+<parameter_description> name of the savepoint to rollback to
 </parameter_description>
 </parameter>
-<parameter name="value2">
-<parameter_description> the other #GValue to be compared to @value1.
+<parameter name="error">
+<parameter_description> a place to store errors or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> 0 if both contain the same value, an integer less than 0 if @value1 is less than @value2 or
-an integer greater than 0 if @value1 is greater than @value2.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_graphviz_add_to_graph">
+<function name="gda_server_provider_internal_get_parser">
 <description>
-Adds @obj to be graphed by @graph
-
-</description>
-<parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraphviz object
-</parameter_description>
-</parameter>
-<parameter name="obj">
-<parameter_description> a #GObject object to be graphed
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+This is a factory method to get a unique instance of a #GdaSqlParser object
+for each #GdaServerProvider object
+Don&apos;t unref() it.
 
-<function name="gda_dict_class_always_register">
-<description>
-Make sure all new GdaDict object will use @func to register
-a type of object
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictRegFunc function
+<parameter name="prov">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GdaSqlParser
+</return>
 </function>
 
-<function name="gda_row_get_is_default">
+<function name="gda_mutex_unlock">
 <description>
-Tells if the value at column @num in @row must be considered as a default value
-
+Unlocks @m. If another thread is blocked in a gda_mutex_lock() call for @m, it will be woken and can lock @m itself.
+This function can be used even if g_thread_init() has not yet been called, and, in that case, will do nothing. 
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow
-</parameter_description>
-</parameter>
-<parameter name="num">
-<parameter_description> field index
+<parameter name="m">
+<parameter_description> a #GdaMutex
 </parameter_description>
 </parameter>
 </parameters>
-<return>
-</return>
+<return></return>
 </function>
 
 <function name="gda_server_provider_escape_string">
@@ -251,42 +185,6 @@
 </return>
 </function>
 
-<function name="gda_object_ref_set_ref_object">
-<description>
-Rather than to set the XML Id of the object @ref has to reference, this function allows
-to directly give the object, in case the object is known.
-
-</description>
-<parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> the object to keep a reference to
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_field_field_get_ref_field">
-<description>
-Get the real #GdaEntityField object (well, the object which implements that interface)
-referenced by @field
-
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldField object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GdaEntityField object, or NULL if @field is not active
-</return>
-</function>
-
 <function name="gda_connection_add_savepoint">
 <description>
 Adds a SAVEPOINT named @name.
@@ -311,85 +209,28 @@
 </return>
 </function>
 
-<function name="gda_query_set_query_type">
+<function name="gda_sqlite_pstmt_get_type">
 <description>
-Sets the type of @query
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the new type of query
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the #GType of GdaSqlitePStmt.
+</return>
 </function>
 
-<function name="gda_connection_new">
+<function name="gda_attributes_manager_clear">
 <description>
-This function creates a new #GdaConnection object. It is not
-intended to be used directly by applications (use
-#gda_client_open_connection instead).
-
-The connection is not opened at this stage; use 
-gda_connection_open() to open the connection.
-
+Remove all the attributes managed by @mgr for the @ptr ressource.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
-</parameter_description>
-</parameter>
-<parameter name="dsn">
-<parameter_description> GDA data source to connect to.
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description> user name to use to connect.
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
 </parameter_description>
 </parameter>
-<parameter name="password">
-<parameter_description> password for @username.
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> options for the connection.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a newly allocated #GdaConnection object.
-</return>
-</function>
-
-<function name="gda_object_destroy">
-<description>
-Force the @gdaobj object to be destroyed, even if we don&apos;t have a reference on it
-(we can&apos;t call g_object_unref() then) and even if the object is referenced
-multiple times by other objects.
-
-The &quot;destroyed&quot; signal is then emitted to tell the other reference holders that the object
-must be destroyed and that they should give back their reference (using g_object_unref()).
-However if a reference is still present, the object will not actually be destroyed and will
-still be alive, but its state may not be deterministic.
-
-This is usefull because sometimes objects need to disappear even if they are referenced by other
-objects. This usage is the same as with the gtk_widget_destroy() function on widgets.
-
-When this method returns, @gdaobj should have been destroyed and should not be used anymore.
-
-</description>
-<parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="ptr">
+<parameter_description> a pointer to the ressources for which all the attributes will be removed
 </parameter_description>
 </parameter>
 </parameters>
@@ -414,6 +255,22 @@
 <return></return>
 </function>
 
+<function name="gda_sql_expr_copy">
+<description>
+Creates a new #GdaSqlExpr structure initated with the values stored in @expr.
+
+
+</description>
+<parameters>
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GdaSqlExpr structure.
+</return>
+</function>
+
 <function name="gda_data_model_array_new">
 <description>
 Creates a new #GdaDataModel object without initializing the column
@@ -431,57 +288,60 @@
 </return>
 </function>
 
-<function name="gda_dict_aggregate_get_arg_dict_type">
+<function name="gda_holder_get_attribute">
 <description>
-To consult the list of arguments types (and number) of a aggregate.
+Get the value associated to a named attribute.
+
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
+<parameter name="holder">
+<parameter_description> a #GdaHolder
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> attribute name as a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of #GdaDictType objects, the list MUST NOT be modified.
+<return> a read-only #GValue, or %NULL if not attribute named @attribute has been set for @holder
 </return>
 </function>
 
-<function name="gda_query_condition_leaf_get_operator">
+<function name="gda_identifier_equal">
 <description>
-Get one of @condition&apos;s operators.
+Does the same as strcmp(@id1, @id2), but handles the case where id1 and/or id2 are enclosed in double quotes.
+can also be used in hash tables as a #GEqualFunc.
 
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="id1">
+<parameter_description> an identifier string
 </parameter_description>
 </parameter>
-<parameter name="op">
-<parameter_description> which oparetor is concerned
+<parameter name="id2">
+<parameter_description> an identifier string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested #GdaQueryField object
+<return> TRUE if @id1 and @id2 are equal.
 </return>
 </function>
 
-<function name="gda_query_get_parameter_list">
+<function name="gda_connection_event_get_source">
 <description>
-Like the gda_query_get_parameters() method, get a list of parameters which the query accepts,
-except that the parameters are stored within a #GdaParameterList object, and can be used as an argument
-to the gda_query_execute() method.
-
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaParameterList object, or %NULL if @query does not accept any parameter.
+<return> @event&apos;s source. 
 </return>
 </function>
 
@@ -510,95 +370,74 @@
 </return>
 </function>
 
-<function name="gda_row_set_default">
+<function name="gda_holder_get_value_str">
 <description>
-Instructs the @row that the value at column @num must be considered as a default value
+Same functionality as gda_holder_get_value() except that it returns the value as a string
+(the conversion is done using @dh if not %NULL, or the default data handler otherwise).
+
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="num">
-<parameter_description> field index
-</parameter_description>
-</parameter>
-<parameter name="is_default">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_connection_event_get_source">
-<description>
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
+<parameter name="dh">
+<parameter_description> a #GdaDataHandler to use, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> @event&apos;s source. 
+<return> the value, or %NULL
 </return>
 </function>
 
-<function name="gda_column_index_get_column_name">
+<function name="gda_data_model_get_row_from_values">
 <description>
+Returns: the requested row number, of -1 if not found
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-</parameters>
-<return> the column name of @dmcia.
-</return>
-</function>
-
-<function name="gda_dict_database_get_table_constraints">
-<description>
-Get all the constraints applicable to @table
-
-
-</description>
-<parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="values">
+<parameter_description> a list of #GValue values (no %NULL is allowed)
 </parameter_description>
 </parameter>
-<parameter name="table">
-<parameter_description> a #GdaDictTable, part of @db
+<parameter name="cols_index">
+<parameter_description> an array of #gint containing the column number to match each value of @values
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new GSList of #GdaDictConstraint objects
+<return> the requested row number, of -1 if not found
 </return>
 </function>
 
-<function name="gda_dict_type_set_g_type">
+<function name="gda_xa_transaction_begin">
 <description>
-Set the gda type for a data type
+Begins a distributed transaction (managed by @xa_trans). Please note that this phase may fail
+for some connections if a (normal) transaction is already started (this depends on the database
+provider being used), so it&apos;s better to avoid starting any (normal) transaction on any of the
+connections registered with @xa_trans.
+
 
 </description>
 <parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
 </parameter_description>
 </parameter>
-<parameter name="g_type">
-<parameter_description> 
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_threader_cancel">
+<function name="gda_data_model_iter_move_next_default">
 <description>
 
 </description>
@@ -607,19 +446,19 @@
 <return></return>
 </function>
 
-<function name="gda_delimiter_concat_list">
+<function name="gda_sql_operation_new">
 <description>
-Creates one #GdaDelimiterStatement from all the statements in @statements
+Creates a new #GdaSqlOperation structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="statements">
-<parameter_description> a list of #GdaDelimiterStatement structures
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaDelimiterStatement or %NULL if @statements is %NULL
+<return> a new #GdaSqlOperation structure.
 </return>
 </function>
 
@@ -637,7 +476,7 @@
 
 </description>
 <parameters>
-<parameter name="cnn">
+<parameter name="cnc">
 <parameter_description> an opened connection
 </parameter_description>
 </parameter>
@@ -658,210 +497,127 @@
 </return>
 </function>
 
-<function name="gda_query_get_query_type">
+<function name="gda_meta_store_get_attribute_value">
 <description>
-Get the type of a query
+The #GdaMetaStore object maintains a list of (name,value) attributes (attributes names starting with a &apos;_&apos;
+character are for internal use only and cannot be altered). This method and the gda_meta_store_set_attribute_value()
+method allows the user to add, set or remove attributes specific to their usage.
+
+This method allows to get the value of a attribute stored in @store. The returned attribute value is 
+placed at @att_value, the caller is responsible to free that string. 
+
+If there is no attribute named @att_name then @att_value is set to %NULL
+and @error will contain the GDA_META_STORE_ATTRIBUTE_NOT_FOUND_ERROR error code, and FALSE is returned.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="att_name">
+<parameter_description> name of the attribute to get
+</parameter_description>
+</parameter>
+<parameter name="att_value">
+<parameter_description> the place to store the attribute value
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of @query
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_entity_add_field">
+<function name="gda_sql_select_target_take_table_name">
 <description>
-Add @field to @iface&apos;s fields (at the end of the list)
+Sets the target to be a SELECT subquery setting target&apos;s expression to use
+ stmt; after call this function the target owns @stmt, then you must not free it.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> an object implementing the #GdaEntityField interface to add
+<parameter name="stmt">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_connection_get_last_insert_id">
+<function name="gda_data_handler_accepts_g_type">
 <description>
-Retrieve from the given #GdaConnection the ID of the last inserted row.
-A connection must be specified, and, optionally, a result set. If not NULL,
-the underlying provider should try to get the last insert ID for the given result set.
+Checks wether the GdaDataHandler is able to handle the gda type given as argument.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
 </parameter_description>
 </parameter>
-<parameter name="recset">
-<parameter_description> recordset.
+<parameter name="type">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string representing the ID of the last inserted row, or NULL
-if an error occurred or no row has been inserted. It is the caller&apos;s
-reponsibility to free the returned string.
+<return> TRUE if the gda type can be handled
 </return>
 </function>
 
-<function name="gda_parameter_list_find_group_for_param">
+<function name="gda_sql_parser_parse_string">
 <description>
-Finds a #GdaParameterListGroup which lists a  #GdaParameterListNode containing @param,
-don&apos;t modify the returned structure.
+Parses @sql and creates a #GdaStatement statement from the first SQL statement contained in @sql: if @sql
+contains more than one statement, then the remaining part of the string is not parsed at all, and @remain (if
+not %NULL) will point at the first non parsed character.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
 </parameter_description>
 </parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="sql">
+<parameter_description> the SQL string to parse
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #GdaParameterListGroup or %NULL
-</return>
-</function>
-
-<function name="gda_parameter_has_restrict_values">
-<description>
-Tells if @param has its values restricted by a #GdaDataModel, and optionnaly
-allows to fetch the resteictions.
-
-
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter
-</parameter_description>
-</parameter>
-<parameter name="model">
-<parameter_description> a place to store a pointer to the model restricting the parameter, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> a place to store the column in the model restricting the parameter, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @param has its values restricted.
-</return>
-</function>
-
-<function name="gda_value_get_blob">
-<description>
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value stored in @value.
-</return>
-</function>
-
-<function name="gda_data_handler_accepts_g_type">
-<description>
-Checks wether the GdaDataHandler is able to handle the gda type given as argument.
-
-
-</description>
-<parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if the gda type can be handled
-</return>
-</function>
-
-<function name="gda_parameter_list_merge">
-<description>
-Add to @paramlist all the parameters of @paramlist_to_merge.
-
-</description>
-<parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="remain">
+<parameter_description> location to store a pointer to remaining part of @sql in case @sql has multiple statement, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="paramlist_to_merge">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_join_render_type">
-<description>
-Get the SQL version of the join type (&quot;INNER JOIN&quot;, &quot;LEFT JOIN&quot;, etc)
-
-
-</description>
-<parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type as a const string
+<return> a new #GdaStatement object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_config_get_boolean">
+<function name="gda_sql_case_new">
 <description>
-Gets the value of the specified configuration entry as a boolean.
+Creates a new #GdaSqlCase structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored at the given entry.
+<return> a new #GdaSqlCase structure.
 </return>
 </function>
 
-<function name="gda_query_object_get_int_id">
-<description>
-Get the integer ID of @qobj
-
-Return: the integer ID
-
-</description>
-<parameters>
-<parameter name="qobj">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gda_data_model_send_hint">
 <description>
 Sends a hint to the data model. The hint may or may not be handled by the data
@@ -885,34 +641,10 @@
 <return></return>
 </function>
 
-<function name="gda_data_model_hash_set_n_columns">
-<description>
-Sets the number of columns for rows inserted in this model.
- cols must be greater than or equal to 0. 
-
-Also clears @model&apos;s contents.
-
-This function calls #gda_data_model_hash_clear to free the
-existing rows if any.
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> the #GdaDataModelHash.
-</parameter_description>
-</parameter>
-<parameter name="cols">
-<parameter_description> the number of columns for rows inserted in @model.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gda_server_provider_split_update_query">
 <description>
-When an update query will impact N&amp;gt;1 rows, it can be refined into a new update query which can be executed N times wich
-will impact one row at a time. This is usefull for providers implementations when dealing with BLOBs where updating
+When an update query will affect N&amp;gt;1 rows, it can be refined into a new update query which can be executed N times wich
+will affect one row at a time. This is usefull for providers implementations when dealing with BLOBs where updating
 rows with a blob can be done only one row at a time.
 
 After execution, @out_select contains a new GdaQuery, or %NULL if it is not possible to create the update query.
@@ -929,26 +661,6 @@
 </return>
 </function>
 
-<function name="gda_data_source_info_equal">
-<description>
-Tells if @info1 and @info2 are equal
-
-
-</description>
-<parameters>
-<parameter name="info1">
-<parameter_description> a data source information
-</parameter_description>
-</parameter>
-<parameter name="info2">
-<parameter_description> a data source information
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @info1 and @info2 are equal
-</return>
-</function>
-
 <function name="gda_data_handler_get_sane_init_value">
 <description>
 Creates a new GValue which holds a sane initial value to be used if no value is specifically
@@ -970,69 +682,50 @@
 </return>
 </function>
 
-<function name="gda_connection_get_username">
+<function name="gda_data_comparator_get_diff">
 <description>
-Gets the user name used to open this connection.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the user name.
-</return>
-</function>
+Get a pointer to the #GdaDiff structure representing the difference which number is @pos
 
-<function name="gda_command_set_options">
-<description>
-Sets the command options of @cmd. If there conflicting options, it will just
-leave the value as before.
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand
+<parameter name="comp">
+<parameter_description> a #GdaDataComparator object
 </parameter_description>
 </parameter>
-<parameter name="options">
-<parameter_description> the command options.
+<parameter name="pos">
+<parameter_description> the requested difference number (starting at 0)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to a #GdaDiff, or %NULL if @pos is invalid
+</return>
 </function>
 
-<function name="gda_dict_field_is_pkey_part">
+<function name="gda_data_model_append_values">
 <description>
-Test if @field is part of a primary key constraint
+Appends a row to the given data model. If any value in @values is actually %NULL, then 
+it is considered as a default value.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-</parameters>
-<return>
-</return>
-</function>
-
-<function name="gda_config_list_keys">
-<description>
-Returns: a list containing all the key names.
-
-</description>
-<parameters>
-<parameter name="path">
-<parameter_description> path for root dir.
+<parameter name="values">
+<parameter_description> #GList of #GValue* representing the row to add.  The
+length must match model&apos;s column count.  These #GValue
+are value-copied (the user is still responsible for freeing them).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list containing all the key names.
+<return> the number of the added row, or -1 if an error occurred
 </return>
 </function>
 
@@ -1057,703 +750,688 @@
 </return>
 </function>
 
-<function name="gda_connection_add_events_list">
+<function name="gda_vconnection_data_model_add_model">
 <description>
-This is just another convenience function which lets you add
-a list of #GdaConnectionEvent&apos;s to the given connection.*
-As with
-#gda_connection_add_event and #gda_connection_add_event_string,
-this function makes the connection object emit the &quot;error&quot;
-signal for each error event.
+Make @model appear as a table named @table_name in the @cnc connection (as if a
+&quot;CREATE TABLE...&quot; statement was executed, except that the data contained within @model
+is actually used when @table_name&apos;s contents is read or written).
+
+For a more general approach, see the gda_vconnection_data_model_add() method.
 
- events_list is copied to an internal list and freed.
 
 </description>
 <parameters>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter_description> a #GdaVconnectionDataModel connection
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> a #GdaDataModel
+</parameter_description>
+</parameter>
+<parameter name="table_name">
+<parameter_description> the name of the table
 </parameter_description>
 </parameter>
-<parameter name="events_list">
-<parameter_description> a list of #GdaConnectionEvent.
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_quark_list_foreach">
+<function name="gda_handler_time_get_format">
 <description>
-Calls the given function for each of the key/value pairs in @qlist. The function is passed the key and value 
-of each pair, and the given user_data parameter. @qlist may not be modified while iterating over it.
+Get a string representing the locale-dependant way to enter a date/time/datetime, using
+a syntax suitable for the #GnomeDbFormatEntry widget
+
 
 </description>
 <parameters>
-<parameter name="qlist">
-<parameter_description> a #GdaQuarkList structure.
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to call for each key/value pair
+<parameter name="hdl">
+<parameter_description> a #GdaHandlerTime object
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function
+<parameter name="type">
+<parameter_description> the type of data being handled
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string
+</return>
 </function>
 
-<function name="gda_graph_item_get_ref_object">
+<function name="gda_meta_struct_get_all_db_objects">
 <description>
-Get the referenced #GdaObject object, if it exists.
+Get a list of all the #GdaMetaDbObject structures representing database objects in @mstruct. Note that
+no #GdaMetaDbObject structure must not be modified.
 
 
 </description>
 <parameters>
-<parameter name="item">
-<parameter_description> a #GdaGraphItem object
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the referenced object, or %NULL
+<return> a new #GSList list of pointers which must be destroyed after usage using g_slist_free().
 </return>
 </function>
 
-<function name="gda_query_is_update_query">
+<function name="gda_server_operation_op_type_to_string">
 <description>
-Tells if @query is a UPDATE query.
+Get a string version of @type
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
+<parameter name="type">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @query is an update query
+<return> a non %NULL string (do not free or modify)
 </return>
 </function>
 
-<function name="gda_query_get_target_by_alias">
+<function name="gda_connection_close">
 <description>
-Get a pointer to a #GdaQueryTarget (which must be within @query) using
-its alias (if not found then @alias_or_name is interpreted as the target name)
-
+Closes the connection to the underlying data source, but first emits the 
+&quot;conn-to-close&quot; signal.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="alias_or_name">
-<parameter_description> the alias or name
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget object, or NULL if not found
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_list_new_from_spec_node">
+<function name="gda_mutex_lock">
 <description>
-Creates a new #GdaParameterList object from the @xml_spec
-specifications
+Locks @m. If @m is already locked by another thread, the current thread will block until @m is unlocked by the other thread.
 
+This function can be used even if g_thread_init() has not yet been called, and, in that case, will do nothing.
+
+Note: unlike g_mutex_lock(), the #GdaMutex is recursive, which means a thread can lock it several times (and has
+to unlock it as many times to actually unlock it).
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object, or %NULL
+<parameter name="m">
+<parameter_description> a #GdaMutex
 </parameter_description>
 </parameter>
-<parameter name="xml_spec">
-<parameter_description> a #xmlNodePtr for a &amp;lt;parameters&amp;gt; tag
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_data_model_iter_get_holder_for_field">
+<description>
+Fetch a pointer to the #GdaHolder object which is synchronized with data at 
+column @col
+
+
+</description>
+<parameters>
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store the error, or %NULL
+<parameter name="col">
+<parameter_description> the requested column
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new object, or %NULL if an error occurred
+<return> the #GdaHolder, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_row_set_model">
+<function name="gda_sql_select_from_take_new_join">
 <description>
-Set the #GdaDataModel the given #GdaRow belongs to. Note that calling
-this method should be reserved to GdaDataModel implementations and should
-therefore not be called by the user.
+Append @join to the joins in the FROM clausure and set @join&apos;s parent to
+ from; after call this function @from owns @join then you must not free it.
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow.
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
 </parameter_description>
 </parameter>
-<parameter name="model">
-<parameter_description> a #GdaDataModel this row belongs to, or %NULL if the row is outside any data model
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_parameter_list_find_source_for_param">
+<function name="gda_value_take_blob">
 <description>
-Finds a #GdaParameterListSource which contains the #GdaDataModel restricting the possible values of
- param, don&apos;t modify the returned structure.
-
+Stores @val into @value, but on the contrary to gda_value_set_blob(), the @blob
+argument is not copied, but used as-is and it should be considered owned by @value.
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="blob">
+<parameter_description> a #GdaBlob structure with the data and its size to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaParameterListSource or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="gda_connection_get_client">
+<function name="gda_vconnection_data_model_remove">
 <description>
-Gets the #GdaClient object associated with a connection. This
-is always the client that created the connection, as returned
-by #gda_client_open_connection.
+Remove the table named @table_name in the @cnc connection (as if a &quot;DROP TABLE...&quot;
+statement was executed, except that no data gets destroyed as the associated data model remains the same).
 
 
 </description>
 <parameters>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter_description> a #GdaVconnectionDataModel connection
+</parameter_description>
+</parameter>
+<parameter name="table_name">
+<parameter_description> the name of the table to remove from @cnc
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the client to which the connection belongs to.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_object_get_owner">
+<function name="gda_data_model_dump">
 <description>
-Fetch the owner of the GdaObject object.
+Dumps a textual representation of the @model to the @to_stream stream
 
+The following environment variables can affect the resulting output:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_ROW_NUMBERS: if set, the first coulumn of the output will contain row numbers&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_ATTRIBUTES: if set, also dump the data model&apos;s columns&apos; types and value&apos;s attributes&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_TITLE: if set, also dump the data model&apos;s title&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_NULL_AS_EMPTY: if set, replace the &apos;NULL&apos; string with an empty string for NULL values &amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="model">
+<parameter_description> a #GdaDataModel.
+</parameter_description>
+</parameter>
+<parameter name="to_stream">
+<parameter_description> where to dump the data model
 </parameter_description>
 </parameter>
 </parameters>
-<return> the object&apos;s owner.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_declare_object">
+<function name="gda_data_model_iter_set_value_at">
 <description>
-Declares the existence of a new object to @dict: @dict knows about @object but does not
-hold any reference to it. If @dict must hold such a reference, then use gda_dict_assume_object().
+Sets a value in @iter, at the column specified by @col
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> the column number
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
+<parameter name="value">
+<parameter_description> a #GValue (not %NULL)
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_value_copy">
+<function name="gda_server_provider_blob_list_for_delete">
 <description>
-Creates a new #GValue from an existing one.
+Create a SELECT query from a DELETE query which lists all the BLOB fields in the
+query which will be deleted. This function is used by GdaServerProvider implementations
+when dealing with BLOB deletions.
+
+After execution, @out_select contains a new GdaQuery, or %NULL if the delete query does not have any
+BLOB to delete.
+
+For example DELETE FROM blobs WHERE id= ##/ *name:&apos;id&apos; type:gint* /
+will create:
+SELECT t1.data FROM blobs AS t1 WHERE id= ##/ *name:&apos;id&apos; type:gint* /
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> value to get a copy from.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a newly allocated #GValue with a copy of the data in @value.
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_value_take_blob">
+<function name="gda_sql_select_target_serialize">
 <description>
-Stores @val into @value, but on the contrary to gda_value_set_blob(), the @blob
-argument is not copied, but used as-is and it should be considered owned by @value.
+Creates a new string representing a target used in a SELECT statement
+after the FROM clausure.
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="blob">
-<parameter_description> a #GdaBlob structure with the data and its size to be stored in @value.
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the description of the expression or &quot;null&quot; in case @field is invalid.
+</return>
 </function>
 
-<function name="gda_data_model_dump">
+<function name="gda_server_operation_get_root_nodes">
 <description>
-Dumps a textual representation of the @model to the @to_stream stream
+Get an array of strings containing the paths of nodes situated at the root of @op.
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel.
-</parameter_description>
-</parameter>
-<parameter name="to_stream">
-<parameter_description> where to dump the data model
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new array, which must be freed with g_strfreev().
+</return>
 </function>
 
-<function name="gda_query_add_target">
+<function name="gda_data_model_import_new_file">
 <description>
-Adds a target to @query. A target represents a entity (it can actually be a table,
-a view, or another query) which @query will use. 
-
-For a SELECT query, the targets appear
-after the FROM clause. The targets can be joined two by two using #GdaQueryJoin objects
-
-For UPDATE, DELETE or INSERT queries, there can be only ONE #GdaQueryTarget object which is
-the one where the data modifications are performed.
+Creates a new #GdaDataModel object which contains the data stored within the @filename file.
 
-For UNION and INTERSECT queries, there is no possible #GdaQueryTarget object.
+The options are the following ones:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;For the CSV format:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;ENCODING (string): specifies the encoding of the data in the file&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;SEPARATOR (string): specifies the CSV separator (comma as default)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;QUOTE (string): specifies the character used to as quote park (double quote as default)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;TITLE_AS_FIRST_LINE (boolean): consider that the first line of the file contains columns&apos; titles&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;G_TYPE_&amp;lt;column number&amp;gt; (GType): specifies the type of value expected in column &amp;lt;column number&amp;gt;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Other formats: no option&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="filename">
+<parameter_description> the file to import data from
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget to add to @query
+<parameter name="random_access">
+<parameter_description> TRUE if random access will be required
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="options">
+<parameter_description> list of importing options
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a pointer to the newly created #GdaDataModel.
 </return>
 </function>
 
-<function name="gda_graph_get_graph_type">
+<function name="gda_batch_add_statement">
 <description>
-Get the graph type of @graph.
-
+Add @stmt to the list of statements managed by @batch. A #GdaStatement object can be
+added multiple times to a #GdaBatch object.
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraph object
+<parameter name="batch">
+<parameter_description> a #GdaBatch object
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a statement to add to @batch&apos;s statements list
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type
-</return>
+<return></return>
 </function>
 
-<function name="gda_config_find_data_source">
+<function name="gda_meta_store_new">
 <description>
-Gets a #GdaDataSourceInfo structure from the data source list given its 
-name. After usage, the returned structure&apos;s memory must be freed using
-gda_data_source_info_free().
+Create a new #GdaMetaStore object.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> name of the data source to search for.
+<parameter name="string">
+<parameter_description> a connection string, or %NULL for an in-memory internal database
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaDataSourceInfo structure, if found, or %NULL if not found.
+<return> the newly created object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_query_get_first_field_for_target">
+<function name="gda_batch_get_parameters">
 <description>
-Finds the first occurence of a #GdaQueryFieldField object whose target is @target in @query
+Get a new #GdaSet object which groups all the execution parameters
+which @batch needs for all the statements it includes.
+This new object is returned though @out_params.
+
+Note that if @batch does not need any parameter, then @out_params is set to %NULL.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="batch">
+<parameter_description> a #GdaBatch object
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description>
+<parameter name="out_params">
+<parameter_description> a place to store a new #GdaSet object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested field, or %NULL
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_data_model_hash_insert_row">
+<function name="gda_value_get_ushort">
 <description>
-Inserts a @row in the @model.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> the #GdaDataModelHash which is gonna hold the row.
-</parameter_description>
-</parameter>
-<parameter name="rownum">
-<parameter_description> the number of the row.
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> the row to insert. The model is responsible of freeing it!
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value stored in @value.
+</return>
 </function>
 
-<function name="gda_connection_get_schema">
+<function name="gda_server_operation_load_data_from_xml">
 <description>
-Asks the underlying data source for a list of database objects.
-
-This is the function that lets applications ask the different
-providers about all their database objects (tables, views, procedures,
-etc). The set of database objects that are retrieved are given by the
-2 parameters of this function: @schema, which specifies the specific
-schema required, and @params, which is a list of parameters that can
-be used to give more detail about the objects to be returned.
-
-The list of parameters is specific to each schema type, see the
-&amp;lt;link linkend=&quot;libgda-provider-get-schema&quot;&amp;gt;get_schema() virtual method for providers&amp;lt;/link&amp;gt; for more details.
+Loads the contents of @node into @op. The XML tree passed through the @node
+argument must correspond to an XML tree saved using gda_server_operation_save_data_to_xml().
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="schema">
-<parameter_description> database schema to get.
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> parameter list.
+<parameter name="node">
+<parameter_description> a #xmlNodePtr
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter_description> a place to store errors or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDataModel containing the data required. The caller is responsible
-of freeing the returned model using g_object_unref().
+<return> %TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_constraint_unique_set_fields">
+<function name="gda_handler_string_new">
 <description>
+Creates a data handler for strings
+
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-<parameter name="fields">
-<parameter_description>
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the new object
+</return>
 </function>
 
-<function name="gda_parameter_get_not_null">
+<function name="gda_connection_get_provider_name">
 <description>
-Get wether the parameter can be NULL or not
+Get the name (identifier) of the database provider used by @cnc
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the parameter cannot be NULL
+<return> a non modifiable string
 </return>
 </function>
 
-<function name="gda_server_operation_get_root_nodes">
+<function name="gda_set_new">
 <description>
-Get an array of strings containing the paths of nodes situated at the root of @op.
+Creates a new #GdaSet object, and populates it with the list given as argument.
+The list can then be freed as it is copied. All the value holders in @holders are referenced counted
+and modified, so they should not be used anymore afterwards.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="holders">
+<parameter_description> a list of #GdaHolder objects
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new array, which must be freed with g_strfreev().
+<return> a new #GdaSet object
 </return>
 </function>
 
-<function name="gda_query_get_parameters">
+<function name="gda_data_proxy_row_is_deleted">
 <description>
-Get a list of parameters which the query accepts.
+Tells if the row number @proxy_row is marked to be deleted.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
+<parameter name="proxy_row">
+<parameter_description> A proxy row number
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of #GdaParameter objects (the list and objects must be freed by the caller)
+<return> TRUE if the row is marked to be deleted
 </return>
 </function>
 
-<function name="gda_column_get_primary_key">
+<function name="gda_sql_expr_new">
 <description>
+Creates a new #GdaSqlField structure, using @parent as its parent part.
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementInsert, #GdaSqlStatementUpdate, #GdaSqlSelectField, #GdaSqlSelectTarget, #GdaSqlOperation
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether if the given column is a primary key (%TRUE or %FALSE).
+<return> a new #GdaSqlField structure.
 </return>
 </function>
 
-<function name="gda_utility_build_decoded_id">
+<function name="gda_data_model_get_column_title">
 <description>
-Reverse of gda_utility_build_encoded_id()
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> column number.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the title for the given column in a data model object.
+</return>
 </function>
 
-<function name="gda_data_model_filter_sql_set_sql">
+<function name="gda_sql_function_free">
 <description>
-Sets the SQL command to be used on the given #GdaDataModelFilterSQL object
-for filtering rows from the source data model (which is
-set with #gda_data_model_filter_sql_set_source).
+Frees a #GdaSqlFunction structure and its members.
 
 </description>
 <parameters>
-<parameter name="sel">
-<parameter_description> a #GdaDataModelFilterSQL object.
-</parameter_description>
-</parameter>
-<parameter name="sql">
-<parameter_description> the SQL command to be used for filtering rows.
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_import_new_file">
+<function name="gda_value_get_numeric">
 <description>
-Creates a new #GdaDataModel object which contains the data stored within the @filename file.
-
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> the file to import data from
-</parameter_description>
-</parameter>
-<parameter name="random_access">
-<parameter_description> TRUE if random access will be required
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> list of options for the export
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the newly created #GdaDataModel.
+<return> the value stored in @value.
 </return>
 </function>
 
-<function name="gda_parameter_list_find_param">
+<function name="BLOB">
 <description>
-Finds a #GdaParameter using its name
-
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="param_name">
-<parameter_description> the name of the requested parameter
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GdaParameter or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="gda_value_get_ushort">
+<function name="gda_value_set_short">
 <description>
+Stores @val into @value.
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
+<parameter_description> a #GValue that will store @val.
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored in @value.
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_operation_load_data_from_xml">
+<function name="gda_quark_list_clear">
 <description>
-Loads the contents of @node into @op. The XML tree passed through the @node
-argument must correspond to an XML tree saved using gda_server_operation_save_data_to_xml().
-
+Removes all strings in the given #GdaQuarkList.
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> a #xmlNodePtr
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter name="qlist">
+<parameter_description> a #GdaQuarkList.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_handler_string_new">
+<function name="gda_server_provider_blob_list_for_update">
 <description>
-Creates a data handler for strings
+Create a SELECT query from an UPDATE query which lists all the BLOB fields in the
+query which will be updated. This function is used by GdaServerProvider implementations
+when dealing with BLOB updates.
+
+After execution, @out_select contains a new GdaQuery, or %NULL if the update query does not have any
+BLOB to update.
+
+For example UPDATE blobs set name = ##/ *name:&apos;name&apos; type:gchararray* /, data = ##/ *name:&apos;theblob&apos; type:&apos;GdaBlob&apos;* / WHERE id= ##/ *name:&apos;id&apos; type:gint* /
+will create:
+SELECT t1.data FROM blobs AS t1 WHERE id= ##/ *name:&apos;id&apos; type:gint* /
 
 
 </description>
 <parameters>
 </parameters>
-<return> the new object
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_aggregates_get_by_name_arg">
+<function name="gda_set_get_node">
 <description>
-To find a DBMS aggregate which is uniquely identified by its name and the type
-of its argument.
-
-About the aggregates accepting any data type for their argument: if @argtype is not %NULL
-then such an aggregate will be a candidate, and if @argtype is %NULL
-then only such an aggregate will be a candidate.
-
-If several aggregates are found, then the aggregate completely matching will be returned, or
-an aggregate where the argument type has the same GDA typa as the @argtype, or lastly an
-aggregate accepting any data type as argument.
+Finds a #GdaSetNode holding information for @holder, don&apos;t modify the returned structure
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="aggname">
-<parameter_description> the name of the aggregate
-</parameter_description>
-</parameter>
-<parameter name="argtype">
-<parameter_description> the type of argument or %NULL
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> The aggregate or NULL if not found
+<return> a #GdaSetNode or %NULL
 </return>
 </function>
 
-<function name="gda_dict_aggregate_set_sqlname">
+<function name="gda_statement_get_statement_type">
 <description>
-Set the SQL name of the data type.
-
-</description>
-<parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
-</parameter_description>
-</parameter>
-<parameter name="sqlname">
-<parameter_description> 
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Get the type of statement held by @stmt. It returns GDA_SQL_STATEMENT_NONE if
+ stmt does not hold any statement
 
-<function name="gda_query_join_set_join_type">
-<description>
-Sets the type of @join
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the new type of join
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the statement type
+</return>
 </function>
 
-<function name="gda_data_proxy_row_is_deleted">
+<function name="gda_data_proxy_get_model">
 <description>
-Tells if the row number @proxy_row is marked to be deleted.
+Get the #GdaDataModel which holds the unmodified (reference) data of @proxy
 
 
 </description>
@@ -1762,756 +1440,815 @@
 <parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="proxy_row">
-<parameter_description> A proxy row number
-</parameter_description>
-</parameter>
 </parameters>
-<return> TRUE if the row is marked to be deleted
+<return> the #GdaDataModel
 </return>
 </function>
 
-<function name="gda_connection_event_set_gda_code">
+<function name="gda_holder_is_valid">
 <description>
-Sets @event&apos;s gda code: that code is standardized by the libgda
-library. If you want to specify the corresponding provider specific code,
-use gda_connection_event_get_code() instead.
+Get the validity of @holder (that is, of the value held by @holder)
+
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> a code
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if @holder&apos;s value can safely be used
+</return>
 </function>
 
-<function name="gda_entity_get_field_by_xml_id">
+<function name="gda_holder_get_g_type">
 <description>
+Get @holder&apos;s type
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="xml_id">
-<parameter_description>
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested GdaEntityField
+<return> the data type
 </return>
 </function>
 
-<function name="gda_graphviz_save_file">
+<function name="gda_prepare_drop_database">
 <description>
-Saves a dot representation of the @graph object to @filename
+Creates a new #GdaServerOperation object which contains the specifications required
+to drop a database. Once these specifications provided, use 
+gda_perform_drop_database() to perform the database creation.
+
+If @db_name is left %NULL, then the name of the database to drop will have to be set in the
+returned #GdaServerOperation using gda_server_operation_set_value_at().
 
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraphviz object
+<parameter name="provider">
+<parameter_description> the database provider to use
 </parameter_description>
 </parameter>
-<parameter name="filename">
-<parameter_description>
+<parameter name="db_name">
+<parameter_description> the name of the database to drop, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description>
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> new #GdaServerOperation object, or %NULL if the provider does not support database
+destruction
 </return>
 </function>
 
-<function name="gda_data_model_get_column_title">
+<function name="gda_server_provider_select_query_has_blobs">
 <description>
+Determines if @query (which must be a SELECT query) returns a data model with some BLOB data
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> column number.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the title for the given column in a data model object.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_database_get_table_by_xml_id">
+<function name="gda_data_select_compute_row_selection_condition">
 <description>
-Get a reference to a GdaDictTable using its XML id.
+Offers the same features as gda_data_select_set_row_selection_condition() but the expression
+is computed from the meta data associated to the connection being used when @model was created.
+
+NOTE1: make sure the meta data associated to the connection is up to date before using this
+method, see gda_connection_update_meta_store().
+
+NOTE2: if the SELECT statement from which @model has been created uses more than one table, or
+if the table used does not have any primary key, then this method will fail
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="model">
+<parameter_description> a #GdaDataSelect object
 </parameter_description>
 </parameter>
-<parameter name="xml_id">
-<parameter_description> the XML id of the requested table
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The GdaDictTable pointer or NULL if the requested table does not exist.
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_data_model_query_new">
+<function name="gda_blob_op_write">
 <description>
-Creates a new #GdaDataModel object using the data returned by the execution of the
- query SELECT query.
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a SELECT query 
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the newly created #GdaDataModel.
-</return>
-</function>
+Writes a chunk of bytes from a @blob to the BLOB accessible through @op.
 
-<function name="gda_object_ref_set_ref_object_type">
-<description>
-Rather than to set the XML Id of the object @ref has to reference, this function allows
-to directly give the object, and specify the requested type, in case the object is known.
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="op">
+<parameter_description> a #GdaBlobOp
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> the object to keep a reference to
+<parameter name="blob">
+<parameter_description> a #GdaBlob which contains the data to write
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the type of object requested: it must be a type in the class hierarchy of @object
+<parameter name="offset">
+<parameter_description> offset to write from the start of the blob (starts at 0)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of bytes written. In case of error, -1 is returned and the
+provider should have added an error to the connection.
+</return>
 </function>
 
-<function name="gda_value_get_numeric">
+<function name="gda_blob_copy">
 <description>
+Creates a new #GdaBlob structure from an existing one.
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
+<parameter name="boxed">
+<parameter_description> source to get a copy from.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored in @value.
+<return> a newly allocated #GdaBlob which contains a copy of
+information in @boxed.
 </return>
 </function>
 
-<function name="BLOB">
+<function name="gda_server_provider_get_data_handler_dbms">
 <description>
+Find a #GdaDataHandler object to manipulate data of type @for_type.
 
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_value_set_short">
-<description>
-Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
+<parameter name="provider">
+<parameter_description> a server provider.
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="for_type">
+<parameter_description> a DBMS type definition
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GdaDataHandler, or %NULL if the provider does not know about the @for_type type
+</return>
 </function>
 
-<function name="gda_server_provider_blob_list_for_update">
+<function name="gda_connection_statement_execute_select_full">
 <description>
-Create a SELECT query from an UPDATE query which lists all the BLOB fields in the
-query which will be updated. This function is used by GdaServerProvider implementations
-when dealing with BLOB updates.
+Executes a selection command on the given connection.
 
-After execution, @out_select contains a new GdaQuery, or %NULL if the update query does not have any
-BLOB to update.
+This function returns a #GdaDataModel resulting from the SELECT statement, or %NULL
+if an error occurred.
 
-For example UPDATE blobs set name = ##/ *name:&apos;name&apos; type:gchararray* /, data = ##/ *name:&apos;theblob&apos; type:&apos;GdaBlob&apos;* / WHERE id= ##/ *name:&apos;id&apos; type:gint* /
-will create:
-SELECT t1.data FROM blobs AS t1 WHERE id= ##/ *name:&apos;id&apos; type:gint* /
+This function is just a convenience function around the gda_connection_statement_execute()
+function.
+
+See the documentation of the gda_connection_statement_execute() for information
+about the @params list of parameters.
 
 
 </description>
 <parameters>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object.
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="model_usage">
+<parameter_description> specifies how the returned data model will be used as a #GdaStatementModelUsage enum
+</parameter_description>
+</parameter>
+<parameter name="col_types">
+<parameter_description> an array of GType to request each returned #GdaDataModel&apos;s column&apos;s GType, terminated with the G_TYPE_NONE
+value. Any value left to 0 will make the database provider determine the real GType. @col_types can also be %NULL if no
+column type is specified.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> TRUE if no error occurred.
+<return> a #GdaDataModel containing the data returned by the
+data source, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_data_proxy_get_model">
+<function name="gda_data_model_set_values">
 <description>
-Get the #GdaDataModel which holds the unmodified (reference) data of @proxy
+In a similar way to gda_data_model_set_value_at(), this method modifies a data model&apos;s contents
+by setting several values at once.
+
+If any value in @values is actually %NULL, then the value in the corresponding column is left
+unchanged.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> row number.
+</parameter_description>
+</parameter>
+<parameter name="values">
+<parameter_description> a list of #GValue, one for at most the number of columns of @model
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDataModel
+<return> TRUE if the value in the data model has been updated and no error occurred
 </return>
 </function>
 
-<function name="gda_entity_is_writable">
+<function name="gda_vconnection_data_model_foreach">
 <description>
-Tells if the real entity (the corresponding DBMS object) represented by @iface can be written to.
+Call @func for each table in @cnc. 
 
+Warning: @func will be called for any table present in @cnc even if no data
+model represents the contents of the table (which means the 1st argument of @func
+may be %NULL)
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
+<parameter name="cnc">
+<parameter_description> a #GdaVconnectionDataModel connection
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GdaVConnectionDataModelFunc function pointer
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to @cunc calls
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if it is possible to write to @iface
-</return>
+<return></return>
 </function>
 
-<function name="gda_row_set_number">
+<function name="gda_vconnection_data_model_get_model">
 <description>
-Sets the row number for the given row.
+Find the #GdaDataModel object representing the @table_name table in @cnc
+
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow.
+<parameter name="cnc">
+<parameter_description> a #GdaVconnectionDataModel connection
 </parameter_description>
 </parameter>
-<parameter name="number">
-<parameter_description> the new row number.
+<parameter name="table_name">
+<parameter_description> a table name within @cnc
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GdaDataModel, or %NULL if no table named @table_name exists
+</return>
 </function>
 
-<function name="gda_client_notify_connection_opened_event">
+<function name="gda_data_model_get_column_index">
 <description>
-Notifies the given #GdaClient of the #GDA_CLIENT_EVENT_CONNECTION_OPENED 
-event.
+Get the index of the first column named @name in @model.
+
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="name">
+<parameter_description> a column name
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the column index, or -1 if no column named @name was found
+</return>
 </function>
 
-<function name="gda_client_open_connection_from_string">
+<function name="gda_holder_take_value">
 <description>
-Opens a connection given a provider ID and a connection string. This
-allows applications to open connections without having to create
-a data source in the configuration. The format of @cnc_string is
-similar to PostgreSQL and MySQL connection strings. It is a semicolumn-separated
-series of key=value pairs. Do not add extra whitespace after the semicolumn
-separator. The possible keys depend on the provider, but
-these keys should work with all providers:
-USER, PASSWORD, HOST, DATABASE, PORT
+Sets the value within the holder. If @holder is an alias for another
+holder, then the value is also set for that other holder.
 
-The username and password used to actually open the connection are the first
-non-NULL string being chosen by order from
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;the @username or @password&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;the USERNAME= and PASSWORD= parts of the @cnc_string&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+On success, the action of any call to gda_holder_force_invalid() is cancelled
+as soon as this method is called (even if @holder&apos;s value does not actually change).
+
+If the value is not different from the one already contained within @holder,
+then @holder is not chaged and no signal is emitted.
+
+Note1: if @holder can&apos;t accept the @value value, then this method returns FALSE, and @holder will be left
+in an invalid state.
 
+Note2: before the change is accepted by @holder, the &quot;validate-change&quot; signal will be emitted (the value
+of which can prevent the change from happening) which can be connected to to have a greater control
+of which values @holder can have, or implement some business rules.
 
+Note3: if user previously set this holder with gda_holder_take_static_value () the GValue
+stored internally will be forgiven and replaced by the @value. User should then
+take care of the &apos;old&apos; static GValue.
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="provider_id">
-<parameter_description> provider ID to connect to.
-</parameter_description>
-</parameter>
-<parameter name="cnc_string">
-<parameter_description> connection string.
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description> user name.
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="password">
-<parameter_description> password for @username.
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> options for the connection (see #GdaConnectionOptions).
+<parameter name="value">
+<parameter_description> a value to set the holder to
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the opened connection if successful, %NULL if there is
-an error.
+<return> TRUE if value has been set
 </return>
 </function>
 
-<function name="gda_query_field_all_get_target">
+<function name="gda_value_is_number">
 <description>
-Get the #GdaQueryTarget object @field &apos;belongs&apos; to
+Gets whether the value stored in the given #GValue is of
+numeric type or not.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldAll object
+<parameter name="value">
+<parameter_description> a #GValue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget object
+<return> %TRUE if a number, %FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_data_model_index__free">
+<function name="gda_data_model_iter_move_prev">
 <description>
-Deallocates all memory associated to the given #GdaDataModelIndex object.
-
+Moves @iter one row before where it already is (synchronizes the values of the parameters in @iter 
+with the values at the new row).
+
+If the iterator was on the data model&apos;s first row, then it can&apos;t be moved backwards
+anymore, and the returned value is FALSE; note also that the &quot;current-row&quot; property
+is set to -1 (which means that gda_data_model_iter_is_valid() would return FALSE).
+
+If any other error occurred then the returned value is FALSE, but the &quot;current-row&quot;
+property is set to the new current row (one row less than it was before the call).
+
+
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> the resource to free.
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if the iterator is now at the previous row
+</return>
 </function>
 
-<function name="gda_server_provider_select_query_has_blobs">
+<function name="gda_connection_internal_get_provider_data">
 <description>
-Determines if @query (which must be a SELECT query) returns a data model with some BLOB data
+Get the opaque pointer previously set using gda_connection_internal_set_provider_data().
+If it&apos;s not set, then add a connection event and returns %NULL
+
 
 </description>
 <parameters>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the pointer to the opaque structure set using gda_connection_internal_set_provider_data()
+</return>
 </function>
 
-<function name="gda_dict_extend_with_functions">
+<function name="gda_sql_function_serialize">
 <description>
-Make @dict handle functions and aggregates
+Creates a new string representing a function. You need to free the returned string
+using g_free();
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the description of the function or &quot;null&quot; in case @function is invalid.
+</return>
 </function>
 
-<function name="gda_query_is_insert_query">
+<function name="gda_mutex_new">
 <description>
-Tells if @query is a INSERT query.
+Creates a new #GdaMutex.
+
+Note: Unlike g_mutex_new(), this function will return %NULL if g_thread_init() has not been called yet.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
-</parameter_description>
-</parameter>
 </parameters>
-<return> TRUE if @query is an insertion query
+<return> a new #GdaMutex
 </return>
 </function>
 
-<function name="gda_referer_is_active">
+<function name="gda_value_new_binary">
 <description>
-Get the status of an object
+Makes a new #GValue of type #GDA_TYPE_BINARY with value @val.
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaReferer interface
+<parameter name="val">
+<parameter_description> value to set for the new #GValue.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the size of the memory pool pointer to by @val.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the object is active
+<return> the newly created #GValue.
 </return>
 </function>
 
-<function name="gda_blob_op_write">
+<function name="gda_pstmt_set_gda_statement">
 <description>
-Writes a chunk of bytes from a @blob to the BLOB accessible through @op.
-
+Informs @pstmt that it corresponds to the preparation of the @stmt statement
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaBlobOp
+<parameter name="pstmt">
+<parameter_description> a #GdaPStmt object
 </parameter_description>
 </parameter>
-<parameter name="blob">
-<parameter_description> a #GdaBlob which contains the data to write
-</parameter_description>
-</parameter>
-<parameter name="offset">
-<parameter_description> offset to write from the start of the blob (starts at 0)
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of bytes written. In case of error, -1 is returned and the
-provider should have added an error to the connection.
-</return>
+<return></return>
 </function>
 
-<function name="gda_blob_copy">
+<function name="gda_meta_store_schema_get_depend_tables">
 <description>
-Creates a new #GdaBlob structure from an existing one.
+
+Get an ordered list of the tables @store knows about on which the @table_name table depends (recursively). 
+The tables are ordered in a way that tables dependencies
+are respected: if table B has a foreign key on table A, then table A will be listed before table B in the returned
+list.
 
 
 </description>
 <parameters>
-<parameter name="boxed">
-<parameter_description> source to get a copy from.
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="table_name">
+<parameter_description> the name of the table for which all the dependencies must be listed
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaBlob which contains a copy of
-information in @boxed.
+<return> a new list of tables names (as gchar*), the list must be freed when no longer needed, 
+but the strings present in the list must not be modified.
 </return>
 </function>
 
-<function name="gda_query_condition_is_ancestor">
+<function name="gda_server_operation_get_sequence_min_size">
 <description>
-Tests if @ancestor is an ancestor of @condition
-
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="ancestor">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="path">
+<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @ancestor is an ancestor of @condition
+<return> the minimum number of items in the sequence at @path, or 0 if @path is not a sequence node
 </return>
 </function>
 
-<function name="gda_dict_constraint_unique_get_fields">
+<function name="gda_sql_table_take_name">
 <description>
-Get the list of fields represented by this UNIQUE constraint. It&apos;s up to the caller to free the list.
+Sets the table&apos;s name using the string holded by @value. When call, @value is freed using
+#gda_value_free().
 
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="field">
+<parameter_description> a #GdaSqlTable structure
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue holding a string to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of fields
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_list_add_param">
+<function name="gda_sql_select_from_free">
 <description>
-Adds @param to the list of parameters managed within @paramlist.
-WARNING: the paramlist may decide not to use the @param parameter, but to
-modify another parameter already present within the paramlist. The publicly available
-lists from the @paramlist object may also be changed in the process.
+Frees a #GdaSqlSelectFrom structure and its members.
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_drop_table">
+<function name="gda_server_operation_get_sequence_item_names">
 <description>
-This is just a convenient function to drop a table in an opened connection.
+Fetch the contents of a sequence. @path can describe either a sequence (for example &quot;/SEQNAME&quot;) or an item in a sequence
+(for example &quot;/SEQNAME/3&quot;)
 
 
 </description>
 <parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
-</parameter_description>
-</parameter>
-<parameter name="table_name">
-<parameter_description>
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="path">
+<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the table was dropped
+<return> a array of strings containing the complete paths of the nodes contained at @path (free with g_strfreev())
 </return>
 </function>
 
-<function name="gda_data_model_set_values">
+<function name="gda_server_provider_perform_operation_default">
 <description>
-If any value in @values is actually %NULL, then 
-it is considered as a default value.
+Performs the operation described by @op, using the SQL from the rendering of the operation
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> row number.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object which will be used to perform an action, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a list of #GValue, one for each n (&amp;lt;nb_cols) columns of @model
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the value in the data model has been updated and no error occurred
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_column_set_primary_key">
+<function name="gda_connection_batch_execute">
 <description>
-Sets the &apos;primary key&apos; flag of the given column.
+Executes all the statements contained in @batch (in the order in which they were added to @batch), and
+Returns: a list of #GObject objects
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="pk">
-<parameter_description> whether if the given column should be a primary key.
+<parameter name="batch">
+<parameter_description> a #GdaBatch object which contains all the statements to execute
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_renderer_render_as_str">
-<description>
-Build a human readable string representing the object, in the specified context.
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaRenderer interface
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_batch_get_parameters()), or %NULL
 </parameter_description>
 </parameter>
-<parameter name="context">
-<parameter_description> rendering context
+<parameter name="model_usage">
+<parameter_description>  specifies how the returned data model(s) will be used, as a #GdaStatementModelUsage enum
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new string
+<return> a list of #GObject objects
 </return>
 </function>
 
-<function name="gda_connection_get_infos">
+<function name="gda_server_provider_value_to_sql_string">
 <description>
-Get a pointer to a #GdaServerProviderInfo structure (which must not be modified)
-to retreive specific information about the provider used by @cnc.
+Produces a fully quoted and escaped string from a GValue
+
 
 </description>
 <parameters>
+<parameter name="provider">
+<parameter_description> a server provider.
+</parameter_description>
+</parameter>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="from">
+<parameter_description> #GValue to convert from
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> escaped and quoted value or NULL if not supported.
+</return>
 </function>
 
-<function name="gda_delimiter_split_sql">
+<function name="gda_utility_holder_load_attributes">
 <description>
-Splits @sql_text into a NULL-terminated array of SQL statements, like the g_strsplit()
-function.
-
-As a side note, this function returns %NULL if @sql_text is %NULL or if no statement was found.
+Note: this method may set the &quot;source&quot; custom string property
 
 
 </description>
 <parameters>
-<parameter name="sql_text">
+<parameter name="holder">
 <parameter_description>
 </parameter_description>
 </parameter>
+<parameter name="node">
+<parameter_description> an xmlNodePtr with a &amp;lt;parameter&amp;gt; tag
+</parameter_description>
+</parameter>
+<parameter name="sources">
+<parameter_description> a list of #GdaDataModel
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> a newly-allocated NULL-terminated array of strings. Use g_strfreev() to free it.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_value_is_number">
+<function name="gda_config_get_dsn_info_at_index">
 <description>
-Gets whether the value stored in the given #GValue is of
-numeric type or not.
+Get a pointer to a read-only #GdaDsnInfo at the @index position
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue.
+<parameter name="index">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if a number, %FALSE otherwise.
+<return> the pointer or %NULL if no DSN exists at position @index
 </return>
 </function>
 
-<function name="gda_dict_constraint_uses_field">
+<function name="gda_prepare_drop_table">
 <description>
-Tests if @field is part of the @cstr constraint
+This is just a convenient function to create a #GdaServerOperation to drop a 
+table in an opened connection.
 
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="cnc">
+<parameter_description> an opened connection
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
+<parameter name="table_name">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @cstr uses @field
+<return> a new #GdaServerOperation or NULL if couldn&apos;t create the opereration.
 </return>
 </function>
 
-<function name="gda_parameter_set_exists_default_value">
+<function name="gda_server_provider_get_schema_nb_columns">
 <description>
-Tells if @param has default unspecified value. This function is usefull
-if one wants to inform that @param has a default value but does not know
-what that default value actually is.
 
 </description>
 <parameters>
+<parameter name="schema">
+<parameter_description>
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the number of columns the #GdaDataModel for the requested schema
+must have
+</return>
 </function>
 
-<function name="gda_server_provider_get_data_handler_gtype">
+<function name="gda_sql_any_part_foreach">
 <description>
-Find a #GdaDataHandler object to manipulate data of type @for_type.
+Calls a function for each element of a #GdaSqlAnyPart node
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
+<parameter name="node">
+<parameter_description> the stat node
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
+<parameter name="func">
+<parameter_description> function to call for each sub node
 </parameter_description>
 </parameter>
-<parameter name="for_type">
-<parameter_description> a #GType
+<parameter name="data">
+<parameter_description> data to pass to @func each time it is called
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL (is also passed to @func)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDataHandler, or %NULL if the provider does not support the requested @for_type data type 
+<return> TRUE if @func has been called for any sub node of @node and always returned TRUE, or FALSE
+otherwise.
 </return>
 </function>
 
-<function name="gda_dict_database_add_constraint">
+<function name="gda_data_model_dir_new">
 <description>
-Add the @cstr constraint to the database. The @cstr constraint is a user-defined constraint
-(which is not part of the database structure itself).
+Creates a new #GdaDataModel object to list all the files starting from @basedir
+
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint
+<parameter name="basedir">
+<parameter_description> a directory
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaDataModel
+</return>
 </function>
 
-<function name="gda_data_proxy_cancel_all_changes">
+<function name="_gda_meta_store_finish_data_reset">
 <description>
-Cancel all the changes stored in the proxy (the @proxy will be reset to its state
-as it was just after creation).
+Commits any modification done since _gda_meta_store_begin_data_reset() was called.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
@@ -2519,326 +2256,321 @@
 </return>
 </function>
 
-<function name="gda_config_get_provider_list">
-<description>
-Returns: a GList of #GdaProviderInfo structures, don&apos;t free or modify it!
-
-</description>
-<parameters>
-</parameters>
-<return> a GList of #GdaProviderInfo structures, don&apos;t free or modify it!
-</return>
-</function>
-
-<function name="gda_data_model_index_get_name">
+<function name="gda_batch_remove_statement">
 <description>
+Removes @stmt from the list of statements managed by @batch. If @stmt is present several
+times in @batch&apos;s statements&apos; list, then only the first one is removed.
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
+<parameter name="batch">
+<parameter_description> a #GdaBatch object
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a statement to remove from @batch&apos;s statements list
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of @dmi.
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_object_set_int_id">
+<function name="gda_set_get_group">
 <description>
-Sets the integer ID of @qobj; this also triggers a change in the string ID 
-(which can be obtained using gda_object_get_id()) of the object.
+Finds a #GdaSetGroup which lists a  #GdaSetNode containing @holder,
+don&apos;t modify the returned structure.
+
 
 </description>
 <parameters>
-<parameter name="qobj">
-<parameter_description>
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="id">
-<parameter_description>
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GdaSetGroup or %NULL
+</return>
 </function>
 
-<function name="gda_connection_value_to_sql_string">
+<function name="gda_vconnection_data_model_add">
 <description>
-Produces a fully quoted and escaped string from a GValue
+Create a new virtual table named @table_name in @cnc. The contents of that new table
+is dictated by what&apos;s in @spec.
+
+If there is just one #GdaDataModel to make appear as a table
+then the gda_vconnection_data_model_add_model() method is easier to use.
 
 
 </description>
 <parameters>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter_description> a #GdaVconnectionDataModel connection
 </parameter_description>
 </parameter>
-<parameter name="from">
-<parameter_description> #GValue to convert from
+<parameter name="spec">
+<parameter_description> a #GdaVconnectionDataModelSpec structure
+</parameter_description>
+</parameter>
+<parameter name="spec_free_func">
+<parameter_description> function to call when freeing @spec, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="table_name">
+<parameter_description> the name of the table
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> escaped and quoted value or NULL if not supported.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_register_object_type">
+<function name="gda_sql_table_serialize">
 <description>
-Make @dict manage objects of type @reg-&amp;gt;type.
+Creates a new string representing a table. You need to free the returned string
+using g_free();
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="reg">
-<parameter_description> a #GdaDictRegisterStruct structure
+<parameter name="field">
+<parameter_description> a #GdaSqlTable structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the name of the field or &quot;null&quot; in case @table is invalid.
+</return>
 </function>
 
-<function name="gda_server_operation_get_sequence_min_size">
+<function name="gda_config_list_providers">
 <description>
+Get a #GdaDataModel representing all the installed database providers.
+
+The returned data model is composed of the following columns:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Provider name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Description&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;DSN parameters&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Authentication parameters&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;File name of the plugin&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
-</parameter_description>
-</parameter>
 </parameters>
-<return> the minimum number of items in the sequence at @path, or 0 if @path is not a sequence node
+<return> a new #GdaDataModel
 </return>
 </function>
 
-<function name="gda_dict_aggregate_set_dbms_id">
+<function name="gda_default_escape_string">
 <description>
-Set the DBMS identifier of the aggregate
+Escapes @string to make it understandable by a DBMS. The escape method is very common and replaces any
+occurence of &quot;&apos;&quot; with &quot;&apos;&apos;&quot; and &quot;\&quot; with &quot;\\&quot;
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
-</parameter_description>
-</parameter>
-<parameter name="id">
-<parameter_description> the DBMS identifier
+<parameter name="string">
+<parameter_description> string to escape
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_field_set_dict_type">
+<function name="gda_data_model_import_new_xml_node">
 <description>
-Sets the data type of the field
+Creates a new #GdaDataModel and loads the data in @node. The resulting data model
+can be accessed in a random way.
+
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField  object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GdaDictType object
+<parameter name="node">
+<parameter_description> an XML node corresponding to a &amp;lt;data-array&amp;gt; tag
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the newly created #GdaDataModel.
+</return>
 </function>
 
-<function name="gda_object_ref_new_copy">
+<function name="gda_config_dsn_needs_auth">
 <description>
-Creates a new GdaObjectRef object which is a copy of @orig. This is a copy constructor.
+Tells if the data source identified as @dsn_name needs any authentication. If a &amp;lt;username&amp;gt;
+and optionaly a &amp;lt;password&amp;gt; are specified, they are ignored.
 
 
 </description>
 <parameters>
-<parameter name="orig">
-<parameter_description> a #GdaObjectRef object
+<parameter name="dsn_name">
+<parameter_description> the name of a DSN, in the &quot;[&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;DSN&amp;gt;&quot; format
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> TRUE if an authentication is needed
 </return>
 </function>
 
-<function name="gda_data_model_filter_sql_add_source">
+<function name="gda_batch_new">
 <description>
-Adds a data model as a source of data for the #GdaDataModelFilterSQL object. When
-the select object is run (via #gda_data_model_filter_sql_run), it will parse the SQL
-and get the required data from the source data models.
+Creates a new #GdaBatch object
+
 
 </description>
 <parameters>
-<parameter name="sel">
-<parameter_description> a #GdaDataModelFilterSQL object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name to identify the data model (usually a table name).
-</parameter_description>
-</parameter>
-<parameter name="source">
-<parameter_description> a #GdaDataModel from which to get data.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the new object
+</return>
 </function>
 
-<function name="gda_server_operation_get_sequence_item_names">
+<function name="gda_holder_set_value">
 <description>
-Fetch the contents of a sequence. @path can describe either a sequence (for example &quot;/SEQNAME&quot;) or an item in a sequence
-(for example &quot;/SEQNAME/3&quot;)
+Sets the value within the holder. If @holder is an alias for another
+holder, then the value is also set for that other holder.
+
+On success, the action of any call to gda_holder_force_invalid() is cancelled
+as soon as this method is called (even if @holder&apos;s value does not actually change)
+
+If the value is not different from the one already contained within @holder,
+then @holder is not changed and no signal is emitted.
+
+Note1: the @value argument is treated the same way if it is %NULL or if it is a #GDA_TYPE_NULL value
+
+Note2: if @holder can&apos;t accept the @value value, then this method returns FALSE, and @holder will be left
+in an invalid state.
+
+Note3: before the change is accepted by @holder, the &quot;validate-change&quot; signal will be emitted (the value
+of which can prevent the change from happening) which can be connected to to have a greater control
+of which values @holder can have, or implement some business rules.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
+<parameter name="value">
+<parameter_description> a value to set the holder to, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a array of strings containing the complete paths of the nodes contained at @path (free with g_strfreev())
+<return> TRUE if value has been set
 </return>
 </function>
 
-<function name="gda_server_provider_value_to_sql_string">
+<function name="gda_holder_get_id">
 <description>
-Produces a fully quoted and escaped string from a GValue
+Get the ID of @holder. The ID can be set using @holder&apos;s &quot;id&quot; property
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="from">
-<parameter_description> #GValue to convert from
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> escaped and quoted value or NULL if not supported.
+<return> the ID (don&apos;t modify the string).
 </return>
 </function>
 
-<function name="gda_data_model_index_set_primary_key">
+<function name="gda_numeric_copy">
 <description>
-Sets if a #GdaDataModelIndex is a primary key.
+Creates a new #GdaNumeric structure from an existing one.
+
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="pk">
-<parameter_description> the new primary key setting of @dmi.
+<parameter name="boxed">
+<parameter_description> source to get a copy from.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated #GdaNumeric which contains a copy of
+information in @boxed.
+</return>
 </function>
 
-<function name="gda_data_model_query_refresh">
+<function name="gda_numeric_free">
 <description>
-(Re)-runs the SELECT query to update the contents of @model
-
+Deallocates all memory associated to the given @boxed
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelQuery data model
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="boxed">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_list_add_param_from_value">
+<function name="gda_column_get_dbms_type">
 <description>
-Creates and adds a new #GdaParameter to @paramlist. The ID and name of the new parameter
-are set as @name. The parameter&apos;s value is a copy of @value.
-
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name to give to the new parameter
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value to give to the new parameter, must not be NULL or of type null
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GdaParameter for information, or %NULL if an error occurred
+<return> the dbms_type of @column.
 </return>
 </function>
 
-<function name="gda_parameter_new">
+<function name="gda_threader_new">
 <description>
-Creates a new parameter of type @type
+Creates a new GdaThreader object. This object class is normally not instantiated
+directly but through child classes objects&apos; intantiation
 
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> the #GType requested
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new #GdaParameter object
+<return> the newly created object
 </return>
 </function>
 
-<function name="gda_create_table">
+<function name="gda_update_values_in_table">
 <description>
-Create a Table over an opened connection using a pair list of colum name and 
-GType as arguments, you need to finish the list using NULL.
+This is just a convenient function to update values in a table on a given column where
+the row is fitting the given condition.
 
-This is just a convenient function to create tables quickly, 
-using defaults for the provider and converting the #GType passed to the corresponding 
-type in the provider; to use a custom type or more advanced characteristics in a 
-specific provider use the #GdaServerOperation framework.
+The SQL command is like: 
+UPDATE INTO table_name SET column1 = new_value1, column2 = new_value2 ... WHERE condition_column_name = condition
 
 
 </description>
 <parameters>
-<parameter name="cnn">
+<parameter name="cnc">
 <parameter_description> an opened connection
 </parameter_description>
 </parameter>
 <parameter name="table_name">
-<parameter_description>
- num_columns
+<parameter_description> the name of the table where the update will be done
+</parameter_description>
+</parameter>
+<parameter name="condition_column_name">
+<parameter_description> the name of the column to used in the WHERE condition clause
+</parameter_description>
+</parameter>
+<parameter name="condition">
+<parameter_description> a GValue to used to find the values to be updated; it must correspond with the
+column&apos;s @GType
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -2846,1196 +2578,1335 @@
 </parameter_description>
 </parameter>
 <parameter name="Varargs">
-<parameter_description> pairs of column name and #GType, finish with NULL
+<parameter_description> a list of string/@GValue pairs where the string is the name of the column to be 
+updated followed by the new @GValue to set, finished by %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the table was created; FALSE and set @error otherwise
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_server_provider_get_schema_nb_columns">
+<function name="gda_data_proxy_get_filtered_n_rows">
 <description>
+Get the total number of filtered rows in @proxy if a filter has been applied. As new rows
+(rows added to the proxy and not yet added to the proxied data model) and rows to remove
+(rows marked for removal but not yet removed from the proxied data model) are also filtered,
+the returned number also contains reefrences to new rows and rows to be removed.
+
 
 </description>
 <parameters>
-<parameter name="schema">
-<parameter_description>
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of columns the #GdaDataModel for the requested schema
-must have
+<return> the number of filtered rows in @proxy, or -1 if no filter has been applied
 </return>
 </function>
 
-<function name="gda_query_join_set_condition_from_sql">
+<function name="gda_handler_type_new">
 <description>
-Parses @cond and if it represents a valid SQL expression to be @join&apos;s
-condition, then set it to be @join&apos;s condition.
+Creates a data handler for Gda types
+
+
+</description>
+<parameters>
+</parameters>
+<return> the new object
+</return>
+</function>
 
+<function name="gda_sql_select_join_free">
+<description>
+Frees a #GdaSqlSelectJoin structure and its members.
 
 </description>
 <parameters>
 <parameter name="join">
-<parameter_description> a #GdaQueryJoin object
-</parameter_description>
-</parameter>
-<parameter name="cond">
-<parameter_description> a SQL expression
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> place to store the error, or %NULL
+<parameter_description> a #GdaSqlSelectJoin structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
-<return> a TRUE on success
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_proxy_get_proxied_model_n_cols">
+<function name="gda_sql_select_from_copy">
 <description>
-Get the number of columns in the proxied data model
+Creates a new #GdaSqlSelectFrom structure initated with the values stored in @from.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of columns, or -1 if an error occurred
+<return> a new #GdaSqlSelectFrom structure.
 </return>
 </function>
 
-<function name="gda_utility_check_data_model">
+<function name="gda_data_select_compute_columns_attributes">
 <description>
-Check the column types of a GdaDataModel.
+Computes correct attributes for each of @model&apos;s columns, which includes the &quot;NOT NULL&quot; attribute, the
+default value, the precision and scale for numeric values.
 
 
 </description>
 <parameters>
 <parameter name="model">
-<parameter_description> a #GdaDataModel object
-</parameter_description>
-</parameter>
-<parameter name="nbcols">
-<parameter_description> the minimum requested number of columns
+<parameter_description> a #GdaDataSelect data model
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> @nbcols arguments of type GType or -1 (if any data type is accepted)
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the data model&apos;s columns match the provided data types and number
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="scan">
+<function name="gda_column_new">
 <description>
- return the newly allocated buffer state object.
 
 </description>
 <parameters>
 </parameters>
-<return></return>
+<return> a newly allocated #GdaColumn object.
+</return>
 </function>
 
-<function name="gda_dict_database_get_field_by_xml_id">
+<function name="gda_set_get_source">
 <description>
-Get a reference to a GdaDictField specifying its XML id
+Finds a #GdaSetSource which contains the #GdaDataModel restricting the possible values of
+ holder, don&apos;t modify the returned structure.
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="xml_id">
-<parameter_description> the XML id of the requested table field
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> The GdaDictField pointer or NULL if the requested field does not exist.
+<return> a #GdaSetSource or %NULL
 </return>
 </function>
 
-<function name="gda_query_join_get_join_type">
+<function name="gda_sql_statement_check_validity">
 <description>
-Get the type of a join
+If @cnc is not %NULL, then checks that all the database objects referenced in the statement actually
+exist in the connection&apos;s database (for example the table being updated in a UPDATE statement must exist in the
+connection&apos;s database for the check to succeed). This method fills the @stmt-&amp;gt;validity_meta_struct attribute.
+
+If @cnc is %NULL, then remove any information from a previous call to this method stored in @stmt. In this case,
+the @stmt-&amp;gt;validity_meta_struct attribute is cleared.
+
+Also note that some parts of @stmt may be modified: for example leading and trailing spaces in aliases or
+objects names will be removed.
 
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement pointer
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of @join
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_value_take_binary">
+<function name="gda_data_model_dump_as_string">
 <description>
-Stores @val into @value, but on the contrary to gda_value_set_binary(), the @binary
-argument is not copied, but used as-is and it should be considered owned by @value.
+Dumps a textual representation of the @model into a new string
+
+The following environment variables can affect the resulting output:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_ROW_NUMBERS: if set, the first coulumn of the output will contain row numbers&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_TITLE: if set, also dump the data model&apos;s title&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_DATA_MODEL_DUMP_NULL_AS_EMPTY: if set, replace the &apos;NULL&apos; string with an empty string for NULL values &amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="binary">
-<parameter_description> a #GdaBinary structure with the data and its size to be stored in @value.
+<parameter name="model">
+<parameter_description> a #GdaDataModel.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string.
+</return>
 </function>
 
-<function name="gda_parameter_get_default_value">
+<function name="gda_sql_select_join_new">
 <description>
-Get the default value held into the parameter. WARNING: the default value does not need to be of 
-the same type as the one required by @param.
+Creates a new #GdaSqlSelectJoin structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="parent">
+<parameter_description> a #GdaSqlSelectFrom
 </parameter_description>
 </parameter>
 </parameters>
-<return> the default value
+<return> a new #GdaSqlSelectJoin structure
 </return>
 </function>
 
-<function name="gda_dict_load">
+<function name="gda_server_operation_is_valid">
 <description>
-Loads an XML file which respects the Libgda DTD, and creates all the necessary
-objects that are defined within the XML file. During the creation of the other
-objects, all the normal signals are emitted.
-
-If the GdaDict object already has some contents, then it is first of all
-destroyed (to return its state as when it was first created).
-
-If an error occurs during loading then the GdaDict object is left as empty
-as when it is first created.
+Tells if all the required values in @op have been defined.
 
-The file loaded is the one specified using gda_dict_set_xml_filename()
+if @xml_file is not %NULL, the validity of @op is tested against that specification, 
+and not againts the current @op&apos;s specification.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation widget
+</parameter_description>
+</parameter>
+<parameter name="xml_file">
+<parameter_description> an XML specification file (see gda_server_operation_new())
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if loading was successfull and FALSE otherwise.
+<return> TRUE if @op is valid
 </return>
 </function>
 
-<function name="gda_data_source_info_free">
+<function name="gda_xa_transaction_string_to_id">
 <description>
-Deallocates all memory associated to the given #GdaDataSourceInfo.
+Creates a new #GdaXaTransactionId structure from its string representation, it&apos;s the opposite
+of gda_xa_transaction_id_to_string().
+
 
 </description>
 <parameters>
-<parameter name="info">
-<parameter_description> data source information to free.
+<parameter name="str">
+<parameter_description> a string representation of a #GdaXaTransactionId, in the &quot;gtrid,bqual,formatID&quot; format
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaXaTransactionId structure, or %NULL in @str has a wrong format
+</return>
 </function>
 
-<function name="gda_query_get_joins">
+<function name="gda_alphanum_to_text">
 <description>
-Get a list of all the joins used in @query
+Does the opposite of gda_text_to_alphanum(), in the same string 
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="text">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of the joins
+<return> @text if conversion succedded or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_query_new_from_sql">
+<function name="gda_attributes_manager_free">
 <description>
-Creates a new #GdaQuery object and fills its structure by parsing the @sql. If the parsing failed,
-then the returned query is of type GDA_QUERY_TYPE_NON_PARSED_SQL.
-
-To be parsed successfully, the expected SQL must respect the SQL standard; some extensions have been
-added to be able to define variables within the SQL statement. See the introduction to the #GdaQuery
-for more information. 
-
-The @error is set only if the SQL statement parsing produced an error; there is always a new #GdaQuery
-object which is returned.
-
+Frees all the resssources managed by @mgr
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="sql">
-<parameter_description> an SQL statement
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaQuery
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_hash_new">
+<function name="gda_meta_store_extract">
 <description>
+Extracts some data stored in @store using a custom SELECT query.
+
 
 </description>
 <parameters>
-<parameter name="cols">
-<parameter_description> number of columns for rows in this data model.
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="select_sql">
+<parameter_description> a SELECT statement
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of (variable name (gchar *), GValue *value) terminated with NULL, representing values for all the
+variables mentionned in @select_sql. If there is no variable then this part can be omitted.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the newly created #GdaDataModel.
+<return> a new #GdaDataModel, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_client_get_connections">
+<function name="gda_vconnection_data_model_get_table_name">
 <description>
-Gets the list of all open connections in the given #GdaClient object.
-The GList returned is an internal pointer, so DON&apos;T TRY TO
-FREE IT.
+Find the name of the table associated to @model in @cnc
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="cnc">
+<parameter_description> a #GdaVconnectionDataModel connection
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> a #GdaDataModel representing a table within @cnc
 </parameter_description>
 </parameter>
 </parameters>
-<return> a GList of #GdaConnection objects; dont&apos;t modify that list
+<return> the table name, or %NULL if not found
 </return>
 </function>
 
-<function name="gda_query_condition_new_from_sql">
+<function name="gda_handler_string_new_with_provider">
 <description>
-Creates a new #GdaQueryCondition object, which references other objects of @query, 
-from the @sql_cond statement.
+Creates a data handler for strings, which will use some specific methods implemented
+by the @prov object (possibly also @cnc).
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="sql_cond">
-<parameter_description> a SQL statement representing a valid condition
-</parameter_description>
-</parameter>
-<parameter name="targets">
-<parameter_description> location to store a list of targets used by the new condition (and its children), or %NULL
+<parameter name="prov">
+<parameter_description> a #GdaServerProvider object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaQueryCondition, or %NULL if there was an error in @sql_cond
+<return> the new object
 </return>
 </function>
 
-<function name="gda_data_model_hash_clear">
+<function name="gda_column_set_position">
 <description>
-Frees all the rows inserted in @model.
+Sets the position of the column refer to in the containing
+data model.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> the model to clear.
+<parameter name="column">
+<parameter_description> a #GdaColumn.
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the wanted position of the column in the containing data model.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_entity_get_fields">
+<function name="gda_connection_del_prepared_statement">
 <description>
-Get a new list containing all the #GdaEntityField objects held within the object
-implementing the #GdaEntity interface.
-
-The returned list nodes are in the order in which the fields are within the entity.
-
+Removes any prepared statement associated to @gda_stmt in @cnc: this undoes what
+gda_connection_add_prepared_statement() does.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="gda_stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new list.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_dump">
+<function name="gda_blob_set_op">
 <description>
-Dumps the whole dictionary managed by the GdaDict object
+correctly assigns @op to @blob
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="blob">
+<parameter_description> a #GdaBlob value
+</parameter_description>
+</parameter>
+<parameter name="op">
+<parameter_description> a #GdaBlobOp object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_iter_is_valid">
+<function name="gda_set_new_from_spec_node">
 <description>
-Tells if @iter is a valid iterator (if it actually corresponds to a valid row in the model)
+Creates a new #GdaSet object from the @xml_spec
+specifications
 
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="xml_spec">
+<parameter_description> a #xmlNodePtr for a &amp;lt;holders&amp;gt; tag
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store the error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @iter is valid
+<return> a new object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_parameter_list_find_param_for_user">
+<function name="gda_xa_transaction_new">
 <description>
-Finds a #GdaParameter which is to be used by @user
+Creates a new #GdaXaTransaction object, which will control the processus of
+performing a distributed transaction across several connections.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="format">
+<parameter_description> a format ID
 </parameter_description>
 </parameter>
-<parameter name="user">
-<parameter_description> a #GdaObject object
+<parameter name="global_transaction_id">
+<parameter_description> the global transaction ID
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaParameter or %NULL
+<return> the newly created object.
 </return>
 </function>
 
-<function name="gda_numeric_copy">
+<function name="gda_holder_get_value">
 <description>
-Creates a new #GdaNumeric structure from an existing one.
+Get the value held into the holder. If @holder is set to use its default value
+and that default value is not of the same type as @holder, then %NULL is returned.
+
+If @holder is set to NULL, then the returned value is a #GDA_TYPE_NULL GValue.
 
 
 </description>
 <parameters>
-<parameter name="boxed">
-<parameter_description> source to get a copy from.
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaNumeric which contains a copy of
-information in @boxed.
+<return> the value, or %NULL
 </return>
 </function>
 
-<function name="gda_entity_get_n_fields">
+<function name="gda_data_proxy_set_filter_expr">
 <description>
-Get the number of fields in @iface
+Sets a filter among the rows presented by @proxy. The filter is defined by a filter expression
+which can be any SQL valid expression using @proxy&apos;s columns. For instance if @proxy has the &quot;id&quot; and
+&quot;name&quot; columns, then a filter can be &quot;length(name) &amp;lt; 5&quot; to filter only the rows where the length of the
+name is strictly inferior to 5, or &quot;id &amp;gt;= 1000 and id &amp;lt; 2000 order by name limit 50&quot; to filter only the rows where the id
+is between 1000 and 2000, ordered by name and limited to 50 rows.
+
+Note about column names: real column names can be used (double quoted if necessary), but columns can also be named
+&quot;_&amp;lt;column number&amp;gt;&quot; with colmun numbers starting at 1.
+
+Note that any previous filter expression is replaced with the new @filter_expr if no error occurs
+(if an error occurs, then any previous filter is left unchanged).
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
+<parameter name="filter_expr">
+<parameter_description> an SQL based expression which will filter the contents of @proxy, or %NULL to remove any previous filter
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of fields, or -1 if an error occurred
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_numeric_free">
+<function name="gda_blob_to_string">
 <description>
-Deallocates all memory associated to the given @boxed
+Converts all the non printable characters of blob-&amp;gt;data into the \xxx representation
+where xxx is the octal representation of the byte, and the &apos;\&apos; (backslash) character
+is converted to &quot;\\&quot;.
+
 
 </description>
 <parameters>
-<parameter name="boxed">
-<parameter_description>
+<parameter name="blob">
+<parameter_description> a correctly filled @GdaBlob structure
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_column_get_dbms_type">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="maxlen">
+<parameter_description> a maximum len used to truncate, or 0 for no maximum length
 </parameter_description>
 </parameter>
 </parameters>
-<return> the dbms_type of @column.
+<return> a new string from @blob
 </return>
 </function>
 
-<function name="gda_query_field_is_internal">
+<function name="gda_data_model_import_from_model">
 <description>
+Copy the contents of the @from data model to the @to data model. The copy stops as soon as an error
+orrurs.
+
+The @cols_trans is a hash table for which keys are @to columns numbers and the values are
+the corresponding column numbers in the @from data model. To set the values of a column in @to to NULL,
+create an entry in the hash table with a negative value.
+
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
+<parameter name="to">
+<parameter_description> the destination #GdaDataModel
+</parameter_description>
+</parameter>
+<parameter name="from">
+<parameter_description> the source #GdaDataModel
+</parameter_description>
+</parameter>
+<parameter name="overwrite">
+<parameter_description> TRUE if @to is completely overwritten by @from&apos;s data, and FALSE if @from&apos;s data is appended to @to
+</parameter_description>
+</parameter>
+<parameter name="cols_trans">
+<parameter_description> a #GHashTable for columns translating, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @field is internal
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_xml_storage_get_xml_id">
+<function name="gda_sql_select_from_take_new_target">
 <description>
-Fetch the xml id string of the object, it&apos;s up to the caller to
-free the string.
-
+Append @target to the targets in the FROM clausure and set @target&apos;s parent to
+ from; after call this function @from owns @target then you must not free it.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaXmlStorage interface
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the xml id.
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_field_set_alias">
+<function name="gda_connection_clear_events_list">
 <description>
-Sets @qfield&apos;s alias
+This function lets you clear the list of #GdaConnectionEvent&apos;s of the
+given connection. 
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-<parameter name="alias">
-<parameter_description> the alias to set @qfield to
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_parameter_list_set_param_default_value">
+<function name="gda_data_model_iter_move_prev_default">
 <description>
-Stores @value in @paramlist to make it possible for @paramlist&apos;s users to find a default value
-for @param when one is required, instead of %NULL.
-
- paramlist only provides a storage functionnality, the way the value obtained with 
-gda_parameter_list_get_param_default_value() is used is up to @paramlist&apos;s user.
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object, managed by @paramlist
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #GValue, of the same type as @param, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_field_get_target">
+<function name="gda_sql_statement_check_structure">
 <description>
-Get the #GdaQueryTarget object @field &apos;belongs&apos; to
+Checks for any error in @stmt&apos;s structure to make sure the statement is valid
+(for example a SELECT statement must at least return a column, a DELETE statement must specify which table
+is targetted).
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldField object
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement pointer
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget object
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_utility_parameter_load_attributes">
+<function name="gda_meta_struct_dump_as_graph">
 <description>
-WARNING: may set the &quot;source&quot; custom string property 
+Creates a new graph (in the GraphViz syntax) representation of @mstruct.
+
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description>
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> an xmlNodePtr with a &amp;lt;parameter&amp;gt; tag
+<parameter name="info">
+<parameter_description> informs what kind of information to show in the resulting graph
 </parameter_description>
 </parameter>
-<parameter name="sources">
-<parameter_description> a list of #GdaDataModel
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string, or %NULL if an error occurred.
+</return>
 </function>
 
-<function name="gda_query_new">
+<function name="gda_attributes_manager_new">
 <description>
-Creates a new #GdaQuery object
+Creates a new #GdaAttributesManager, which can store (name, value) attributes for pointers or GObject objects
+(in the latter case, the attibutes are destroyed when objects are also destroyed).
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="for_objects">
+<parameter_description> set to TRUE if attributes will be set on objects.
+</parameter_description>
+</parameter>
+<parameter name="signal_func">
+<parameter_description> a function to be called whenever an attribute changes on an object (if @for_objects is TRUE), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="signal_data">
+<parameter_description> user data passed as last argument of @signal_func when it is called
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> the new #GdaAttributesManager
 </return>
 </function>
 
-<function name="gda_update_values_in_table">
+<function name="gda_data_proxy_alter_value_attributes">
 <description>
-This is just a convenient function to update values in a table on a given column where
-the row is fitting the given condition.
-
-The SQL command is like: 
-UPDATE INTO table_name SET column1 = new_value1, column2 = new_value2 ... WHERE condition_column_name = condition
-
+Alters the attributes of the value stored at (proxy_row, col) in @proxy. the @alter_flags
+can only contain the GDA_VALUE_ATTR_IS_NULL, GDA_VALUE_ATTR_IS_DEFAULT and GDA_VALUE_ATTR_IS_UNCHANGED
+flags (other flags are ignored).
 
 </description>
 <parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
-</parameter_description>
-</parameter>
-<parameter name="table_name">
-<parameter_description> the name of the table where the update will be done
-</parameter_description>
-</parameter>
-<parameter name="condition_column_name">
-<parameter_description> the name of the column to used in the WHERE condition clause
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="condition">
-<parameter_description> a GValue to used to find the values to be updated; it must correspond with the
-column&apos;s @GType
+<parameter name="proxy_row">
+<parameter_description> A proxy row number
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="col">
+<parameter_description> a valid column number
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of string/@GValue pairs where the string is the name of the column to be 
-updated followed by the new @GValue to set, finished by %NULL
+<parameter name="alter_flags">
+<parameter_description> flags to alter the attributes
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_undeclare_condition">
+<function name="gda_sql_select_field_free">
 <description>
-Explicitely ask @query to forget about the existence of @cond. This function is used by the
-#GdaQueryCondition implementation, and should not be called directly
+Frees a #GdaSqlSelectField structure and its members.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="cond">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_handler_type_new">
+<function name="gda_sql_select_order_copy">
 <description>
-Creates a data handler for Gda types
+Creates a new #GdaSqlSelectOrder structure initated with the values stored in @order.
 
 
 </description>
 <parameters>
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure to be copied
+</parameter_description>
+</parameter>
 </parameters>
-<return> the new object
+<return> a new #GdaSqlSelectOrder structure.
 </return>
 </function>
 
-<function name="gda_row_new_from_list">
+<function name="gda_set_set_holder_value">
 <description>
-Creates a #GdaRow from a list of #GValue&apos;s.  These GValue&apos;s are
-value-copied and the user are still responsible for freeing them.
-
-See the gda_row_new() function&apos;s documentation for more information about the @model attribute
+Set the value of the #GdaHolder which ID is @holder_id to a specified value
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel this row belongs to, or %NULL if the row is outside any data model
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a list of #GValue&apos;s.
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="holder_id">
+<parameter_description> the ID of the holder to set the value
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> value, of the correct type, depending on the requested holder&apos;s type (not NULL)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created row.
+<return> TRUE if no error occurred and the value was set correctly
 </return>
 </function>
 
-<function name="gda_data_model_set_value_at">
+<function name="gda_meta_struct_get_db_object">
 <description>
+Tries to locate the #GdaMetaDbObject structure representing the database object named after
+ catalog, @schema and @name.
+
+If one or both of @catalog and @schema are %NULL, and more than one database object matches the name, then
+the return value is also %NULL.
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="col">
-<parameter_description> column number.
+<parameter name="catalog">
+<parameter_description> the catalog the object belongs to (as a G_TYPE_STRING GValue), or %NULL
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> row number.
+<parameter name="schema">
+<parameter_description> the schema the object belongs to (as a G_TYPE_STRING GValue), or %NULL
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue, or %NULL
+<parameter name="name">
+<parameter_description> the object&apos;s name (as a G_TYPE_STRING GValue), not %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+</parameters>
+<return> the #GdaMetaDbObject or %NULL if not found
+</return>
+</function>
+
+<function name="gda_sql_select_join_serialize">
+<description>
+Creates a new string description of the join used in a SELECT statement.
+
+
+</description>
+<parameters>
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the value in the data model has been updated and no error occurred
+<return> a new string with the description of the join or &quot;null&quot; in case @join is invalid.
 </return>
 </function>
 
-<function name="gda_column_new">
+<function name="gda_log_is_enabled">
 <description>
 
 </description>
 <parameters>
 </parameters>
-<return> a newly allocated #GdaColumn object.
+<return> whether GDA logs are enabled (%TRUE or %FALSE).
 </return>
 </function>
 
-<function name="gda_graph_del_item">
+<function name="gda_attributes_manager_set">
 <description>
-Removes @item from @graph
+Associates an attribute named @att_name to @ptr, with the value @value. Any previous association is replaced by
+this one, and if @value is %NULL then the association is removed.
+
+Note: @att_name is *not* copied, so it should be a static string, or a string which exists as long as @mgr exists (or,
+in case @ptr is an object, as long as that object exists). Libgda provides several predefined names for common attributes,
+see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraph object
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
+</parameter_description>
+</parameter>
+<parameter name="ptr">
+<parameter_description> a pointer to the ressources to which the attribute will apply
+</parameter_description>
+</parameter>
+<parameter name="att_name">
+<parameter_description> an attribute&apos;s name, as a *static* string
 </parameter_description>
 </parameter>
-<parameter name="item">
-<parameter_description> a #GdaGraphItem object
+<parameter name="value">
+<parameter_description> a #GValue, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_constraint_non_null_get_field">
+<function name="gda_sql_case_copy">
 <description>
+Creates a new #GdaSqlCase structure initated with the values stored in @sc.
+
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlCase structure.
+</return>
 </function>
 
-<function name="gda_data_model_dump_as_string">
+<function name="gda_log_message">
 <description>
-Dumps a textual representation of the @model into a new string
-
+Logs the given message in the GDA log file.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel.
+<parameter name="format">
+<parameter_description> format string (see the printf(3) documentation).
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments to insert in the message.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string.
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_field_field_get_ref_field_name">
+<function name="gda_data_proxy_get_sample_end">
 <description>
-Get the real name of the represented field. The returned name can be in either forms:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;field_name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;table_name.field_name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Get the row number of the last row to be displayed.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldField object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> represented field name (free the memory after usage)
+<return> the number of the last row being displayed.
 </return>
 </function>
 
-<function name="gda_query_condition_new_copy">
+<function name="gda_connection_event_set_source">
 <description>
-This is a copy constructor
-
+Sets @event&apos;s @source; this function should not be called directly
 
 </description>
 <parameters>
-<parameter name="orig">
-<parameter_description> a #GdaQueryCondition to copy
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
-<parameter name="replacements">
-<parameter_description> a hash table to store replacements, or %NULL
+<parameter name="source">
+<parameter_description> a source.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_operation_is_valid">
+<function name="gda_attributes_manager_copy">
 <description>
-Tells if all the required values in @op have been defined.
-
-if @xml_file is not %NULL, the validity of @op is tested against that specification, 
-and not againts the current @op&apos;s specification.
-
+For each attribute set for @from (in @from_mgr), set the same attribute to @to (in @to_mgr). @from_mgr and
+ to_mgr can be equal.
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation widget
+<parameter name="from_mgr">
+<parameter_description> a #GdaAttributesManager
 </parameter_description>
 </parameter>
-<parameter name="xml_file">
-<parameter_description> a XML specification file (see gda_server_operation_new())
+<parameter name="from">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="to_mgr">
+<parameter_description> a #GdaAttributesManager
+</parameter_description>
+</parameter>
+<parameter name="to">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @op is valid
-</return>
+<return></return>
 </function>
 
-<function name="data">
+<function name="gda_virtual_connection_internal_get_provider_data">
 <description>
-Finds or creates anew GdaDictType if possible. if @created is returned as TRUE, then the
-caller of this function _does_ have a reference on the returned object.
+Get the opaque pointer previously set using gda_virtual_connection_internal_set_provider_data().
+If it&apos;s not set, then add a connection event and returns %NULL
 
 
 </description>
 <parameters>
+<parameter name="vcnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GdaDictType, or %NULL if it was not possible to find and create one
+<return> the pointer to the opaque structure set using gda_virtual_connection_internal_set_provider_data()
 </return>
 </function>
 
-<function name="gda_dict_function_get_dbms_id">
+<function name="gda_prepare_create_database">
 <description>
-Get the DBMS identifier of the function
+Creates a new #GdaServerOperation object which contains the specifications required
+to create a database. Once these specifications provided, use 
+gda_perform_create_database() to perform the database creation.
+
+If @db_name is left %NULL, then the name of the database to create will have to be set in the
+returned #GdaServerOperation using gda_server_operation_set_value_at().
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="provider">
+<parameter_description> the database provider to use
+</parameter_description>
+</parameter>
+<parameter name="db_name">
+<parameter_description> the name of the database to create, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string with the function&apos;s id
+<return> new #GdaServerOperation object, or %NULL if the provider does not support database
+creation
 </return>
 </function>
 
-<function name="gda_query_field_agg_get_ref_agg">
+<function name="gda_server_provider_create_operation">
 <description>
-Get the real #GdaDictAggregate object used by @agg
+Creates a new #GdaServerOperation object which can be modified in order to perform the @type type of
+action. The @options can contain:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;named values which ID is a path in the resulting GdaServerOperation object, to initialize some value&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;named values which may change the contents of the GdaServerOperation, see &amp;lt;link linkend=&quot;gda-server-op-information-std&quot;&amp;gt;this section&amp;lt;/link&amp;gt; for more information&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaQueryFieldAgg object
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object which will be used to perform an action, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the type of operation requested
+</parameter_description>
+</parameter>
+<parameter name="options">
+<parameter_description> an optional list of parameters
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDictAggregate object, or NULL if @agg is not active
+<return> a new #GdaServerOperation object, or %NULL in the provider does not support the @type type
+of operation or if an error occurred
 </return>
 </function>
 
-<function name="gda_dict_field_is_null_allowed">
+<function name="gda_data_handler_get_str_from_value">
 <description>
-Test if @field can be %NULL or not
+Creates a new string which is a &quot;user friendly&quot; representation of the given value
+(in the users&apos;s locale, specially for the dates). If the value is 
+NULL or is of type GDA_TYPE_NULL, the returned string is a copy of &quot;&quot; (empty string).
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the value to be converted to a string
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> the new string.
 </return>
 </function>
 
-<function name="gda_data_proxy_row_has_changed">
+<function name="gda_xa_transaction_register_connection">
 <description>
-Tells if the row number @proxy_row has changed
+Registers @cnc to be used by @xa_trans to create a distributed transaction.
+
+Note: any #GdaConnection object can only be registered with at most one #GdaXaTransaction object; also
+some connections may not be registered at all with a #GdaXaTransaction object because the database
+provider being used does not support it.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
 </parameter_description>
 </parameter>
-<parameter name="proxy_row">
-<parameter_description> A proxy row number
+<parameter name="cnc">
+<parameter_description> the connection to add to @xa_trans
+</parameter_description>
+</parameter>
+<parameter name="branch">
+<parameter_description> the branch qualifier
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_query_condition_node_add_child">
+<function name="gda_dir_blob_op_new">
+<description>
+
+</description>
+<parameters>
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_field_take_name">
 <description>
-Adds a child to @condition; this is possible only if @condition is a node type (AND, OR, etc)
+Sets the field&apos;s name using the string holded by @value. When call, @value is freed using
+#gda_value_free().
 
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="child">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="field">
+<parameter_description> a #GdaSqlField structure
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="value">
+<parameter_description> a #GValue holding a string to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_handler_string_new_with_provider">
+<function name="gda_sql_field_copy">
 <description>
-Creates a data handler for strings, which will use some specific methods implemented
-by the @prov object (possibly also @cnc).
+Creates a new GdaSqlField structure initated with the values stored in @field.
 
 
 </description>
 <parameters>
-<parameter name="prov">
-<parameter_description> a #GdaServerProvider object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
+<parameter name="field">
+<parameter_description> a #GdaSqlAnyPart
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a new #GdaSqlField structure.
 </return>
 </function>
 
-<function name="gda_column_set_position">
+<function name="gda_value_get_geometric_point">
 <description>
-Sets the position of the column refer to in the containing
-data model.
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="position">
-<parameter_description> the wanted position of the column in the containing data model.
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value stored in @value.
+</return>
 </function>
 
-<function name="gda_query_expand_all_field">
+<function name="gda_rfc1738_encode">
 <description>
-Converts each visible &quot;target.*&quot; (#GdaQueryFieldAll) field into its list of fields. For example &quot;t1.*&quot; becomes &quot;t1.a, t1.b&quot;
-if table t1 is composed of fields &quot;a&quot; and &quot;b&quot;. The original GdaQueryFieldAll field is not removed, but
-simply rendered non visible.
-
-The returned list must be free&apos;d by the caller using g_slist_free().
+Encodes @string using the RFC 1738 recommendations: the
+&amp;lt;constant&amp;gt;&amp;lt;&amp;gt;&amp;quot;#%{}|\^~[]&amp;apos;`;/?:@=&amp;amp;&amp;lt;/constant&amp;gt; and space characters are replaced by 
+&amp;lt;constant&amp;gt;&amp;quot;%%ab&amp;quot;&amp;lt;/constant&amp;gt; where
+&amp;lt;constant&amp;gt;ab&amp;lt;/constant&amp;gt; is the hexadecimal number corresponding to the character.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget, or %NULL
+<parameter name="string">
+<parameter_description> a string to encode 
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of the #GdaQueryField objects which have been created
+<return> a new string
 </return>
 </function>
 
-<function name="gda_query_target_get_represented_entity">
+<function name="gda_config_get_dsn_info">
 <description>
-Get the #GdaEntity object which is represented by @target
+Get information about the DSN named @dsn_name. 
+
+ dsn_name&apos;s format is &quot;[&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;DSN&amp;gt;&quot; (if &amp;lt;username&amp;gt;
+and optionaly &amp;lt;password&amp;gt; are provided, they are ignored). Also see the gda_dsn_split() utility
+function.
 
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="dsn_name">
+<parameter_description> the name of the DSN to look for
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaEntity object or NULL if @target is not active
+<return> a a pointer to read-only #GdaDsnInfo structure, or %NULL if not found
 </return>
 </function>
 
-<function name="gda_data_proxy_find_row_from_values">
+<function name="gda_data_model_import_new_mem">
 <description>
-Find the first row where all the values in @values at the columns identified at
- cols_index match.
+Creates a new #GdaDataModel object which contains the data stored in the @data string. 
 
-NOTE: the @cols_index array MUST contain a column index for each value in @values
+Important note: the @data string is not copied for memory efficiency reasons and should not
+therefore be altered in any way as long as the returned data model exists.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="data">
+<parameter_description> a string containng the data to import
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a list of #GValue values
+<parameter name="random_access">
+<parameter_description> TRUE if random access will be required
 </parameter_description>
 </parameter>
-<parameter name="cols_index">
-<parameter_description> an array of #gint containing the column number to match each value of @values
+<parameter name="options">
+<parameter_description> list of importing options, see gda_data_model_import_new_file() for more information
 </parameter_description>
 </parameter>
 </parameters>
-<return> proxy row number if the row has been identified, or -1 otherwise
+<return> a pointer to the newly created #GdaDataModel.
 </return>
 </function>
 
-<function name="gda_dict_table_get_parents">
+<function name="gda_dir_blob_get_filename">
 <description>
-Get the parent tables of the table given as argument. This is significant only
-for DBMS which support tables inheritance (like PostgreSQL for example).
-
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a constant list of #GdaDictTable objects
-</return>
+<return></return>
 </function>
 
-<function name="gda_blob_set_op">
+<function name="gda_holder_get_source_model">
 <description>
-correctly assigns @op to @blob
+Tells if @holder has its values sourceed by a #GdaDataModel, and optionnaly
+allows to fetch the resteictions.
+
 
 </description>
 <parameters>
-<parameter name="blob">
-<parameter_description> a #GdaBlob value
+<parameter name="holder">
+<parameter_description> a #GdaHolder
 </parameter_description>
 </parameter>
-<parameter name="op">
-<parameter_description> a #GdaBlobOp object, or %NULL
+<parameter name="col">
+<parameter_description> a place to store the column in the model sourceing the holder, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the #GdaDataModel source for @holder
+</return>
 </function>
 
-<function name="gda_server_provider_rollback_savepoint">
+<function name="gda_data_model_thaw">
 <description>
+Re-enables notifications of changes on the given data model.
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name of the savepoint to rollback to
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_delimiter_display">
+<function name="gda_data_model_iter_invalidate_contents">
 <description>
+Declare all the parameters in @iter invalid, without modifying the
+#GdaDataModel @iter is for or changing the row it represents. This method
+is for internal usage.
 
 </description>
 <parameters>
-<parameter name="statement">
-<parameter_description>
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_graph_get_items">
+<function name="gda_attributes_manager_foreach">
 <description>
-Get a list of #GdaGraphItem objects which are items of @graph
-
+Calls @func for every attribute set to @ptr.
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraph object
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
+</parameter_description>
+</parameter>
+<parameter name="ptr">
+<parameter_description> a pointer to the ressources for which all the attributes used
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GdaAttributesManagerFunc function
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> user data to be passed as last argument of @func each time it is called
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaGraphItem objects
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_query_get_parameter_list">
+<function name="gda_sql_parser_parse_file_as_batch">
 <description>
-If some parameters are required to execute the SELECT query used in the @model data model, then
-Returns: a #GdaParameterList object, or %NULL
+Parse @filename&apos;s contents and creates a #GdaBatch object which contains all the
+#GdaStatement objects created while parsing (one object per SQL statement).
+
+ filename&apos;s contents are parsed and #GdaStatement objects are created as long as no error is found. If an error is found 
+at some point, then the parsing stops, @error may be set and %NULL is returned
+
+if @sql is %NULL, then the returned #GdaBatch object will contain no statement.
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelQuery data model
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
+</parameter_description>
+</parameter>
+<parameter name="filename">
+<parameter_description> name of the file to parse
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaParameterList object, or %NULL
+<return> a new #GdaBatch object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_data_model_import_from_model">
+<function name="gda_meta_store_modify_with_context">
 <description>
-Copy the contents of the @from data model to the @to data model. The copy stops as soon as an error
-orrurs.
-
-The @cols_trans is a hash table for which keys are @to columns numbers and the values are
-the corresponding column numbers in the @from data model. To set the values of a column in @to to NULL,
-create an entry in the hash table with a negative value.
+Propagates an update to @store, the update&apos;s contents is represented by @new_data, this function is
+primarily reserved to database providers.
 
 
 </description>
 <parameters>
-<parameter name="to">
-<parameter_description> the destination #GdaDataModel
-</parameter_description>
-</parameter>
-<parameter name="from">
-<parameter_description> the source #GdaDataModel
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="overwrite">
-<parameter_description> TRUE if @to is completely overwritten by @from&apos;s data, and FALSE if @from&apos;s data is appended to @to
+<parameter name="context">
+<parameter_description> a #GdaMetaContext context describing what to modify in @store
 </parameter_description>
 </parameter>
-<parameter name="cols_trans">
-<parameter_description> a #GHashTable for columns translating, or %NULL
+<parameter name="new_data">
+<parameter_description> a #GdaDataModel containing the new data to set in @table_name, or %NULL (treated as a data model
+with no row at all)
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -4043,757 +3914,713 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_column_set_name">
+<function name="gda_sql_operation_free">
 <description>
-Sets the name of @column to @name.
+Frees a #GdaSqlOperation structure and its members.
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the new name of @column.
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_delimiter_to_string">
+<function name="gda_vprovider_data_model_new">
 <description>
-Converts a statement to a string
+Creates a new GdaVirtualProvider object which allows one to 
+add and remove GdaDataModel objects as tables within a connection
+
 
 </description>
 <parameters>
-<parameter name="statement">
-<parameter_description> a #GdaDelimiterStatement
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a new #GdaVirtualProvider object.
+</return>
 </function>
 
-<function name="gda_dict_constraint_equal">
+<function name="gda_meta_table_column_foreach_attribute">
 <description>
-Compares two #GdaDictConstraint objects to see if they are equal, without taking into account the
-name of the constraints or weather they are user or system defined
-
+Calls @func for each attribute set to tcol
 
 </description>
 <parameters>
-<parameter name="cstr1">
-<parameter_description> the first #GdaDictConstraint to compare
+<parameter name="column">
+<parameter_description> a #GdaMetaTableColumn
 </parameter_description>
 </parameter>
-<parameter name="cstr2">
-<parameter_description> the second #GdaDictConstraint to compare
+<parameter name="func">
+<parameter_description> a #GdaAttributesManagerFunc function
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> user data to be passed as last argument of @func each time it is called
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the two constraints are equal and FALSE otherwise
-</return>
+<return></return>
 </function>
 
-<function name="gda_connection_clear_events_list">
+<function name="gda_data_proxy_set_sample_size">
 <description>
-This function lets you clear the list of #GdaConnectionEvent&apos;s of the
-given connection. 
+Sets the size of each chunk of fata to display: the maximum number of rows which
+can be displayed at a time. The default value is arbitrary 300 as it is big enough to
+be able to display quite a lot of data, but small enough to avoid too much data
+displayed at the same time.
+
+Note: the rows which have been added but not yet commited will always be displayed
+regardless of the current chunk of data, and the modified rows which are not visible
+when the displayed chunk of data changes are still held as modified rows.
+
+To remove the chunking of the data to display, simply pass @sample_size the 0 value.
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
+<parameter name="sample_size">
+<parameter_description> the requested size of a chunk, or 0
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_entity_get_field_by_index">
+<function name="gda_sql_operation_serialize">
 <description>
+Creates a new string representing an operator. You need to free the returned string
+using g_free();
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="index">
-<parameter_description>
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested GdaEntityField or NULL if the index is out of bounds
+<return> a new string with the description of the operator or &quot;null&quot; in case @operation is invalid.
 </return>
 </function>
 
-<function name="gda_dict_database_get_tables">
+<function name="gda_sql_function_take_name">
 <description>
-Get a list of all the tables within @db
+Sets the function&apos;s arguments to point to @args, then sets the
+list&apos;s data elements&apos; parent to @function.
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure
+</parameter_description>
+</parameter>
+<parameter name="args">
+<parameter_description> a #GSList to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of all the #GdaDictTable objects
-</return>
+<return></return>
 </function>
 
-<function name="gda_config_get_data_source_list">
+<function name="gda_handler_time_new">
 <description>
-Returns: a GList of #GdaDataSourceInfo structures.
+Creates a data handler for time values
+
 
 </description>
 <parameters>
 </parameters>
-<return> a GList of #GdaDataSourceInfo structures.
+<return> the new object
 </return>
 </function>
 
-<function name="gda_query_get_field_by_ref_field">
+<function name="gda_row_get_length">
 <description>
-Finds the first #GdaQueryField object in @query which represents @ref_field.
-The returned object will be a #GdaQueryFieldField object which represents @ref_field.
-
-If @target is specified, then the returned field will be linked to that #GdaQueryTarget object.
-
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="ref_field">
-<parameter_description> a #GdaEntityField object
-</parameter_description>
-</parameter>
-<parameter name="field_state">
-<parameter_description> tells about the status of the requested field, see #GdaQueryFieldState
+<parameter name="row">
+<parameter_description> a #GdaRow.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaQueryFieldField object or %NULL
+<return> the number of columns that the @row has.
 </return>
 </function>
 
-<function name="gda_connection_event_list_copy">
+<function name="gda_value_to_xml">
 <description>
-Creates a new list which contains the same events as @events and
-adds a reference for each event in the list.
+Serializes the given #GValue to an XML node string.
 
-You must free the list using #gda_connection_event_list_free.
 
 </description>
 <parameters>
-<parameter name="events">
-<parameter_description> a GList holding event objects.
+<parameter name="value">
+<parameter_description> a #GValue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of events.
+<return> the XML node. Once not needed anymore, you should free it.
 </return>
 </function>
 
-<function name="gda_data_proxy_alter_value_attributes">
+<function name="gda_log_disable">
 <description>
-Alters the attributes of the value stored at (proxy_row, col) in @proxy. the @alter_flags
-can only contain the GDA_VALUE_ATTR_IS_NULL, GDA_VALUE_ATTR_IS_DEFAULT and GDA_VALUE_ATTR_IS_UNCHANGED
-flags (other flags are ignored).
+Disables GDA logs.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-<parameter name="proxy_row">
-<parameter_description> A proxy row number
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> a valid column number
-</parameter_description>
-</parameter>
-<parameter name="alter_flags">
-<parameter_description> flags to alter the attributes
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_type_get_synonyms">
+<function name="gda_value_set_null">
 <description>
-Get a list of @dt&apos;s synonyms
-
+Sets the type of @value to #GDA_TYPE_NULL.
 
 </description>
 <parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
+<parameter name="value">
+<parameter_description> a #GValue that will store a value of type #GDA_TYPE_NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of strings which must not be modified
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_get_sub_queries">
+<function name="gda_dir_blob_set_filename">
 <description>
-Get a list of all the sub-queries managed by @query
-
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new list of the sub-queries
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_condition_node_del_child">
+<function name="gda_meta_struct_load_from_xml_file">
 <description>
-Removes a child from @condition; this is possible only if @condition is a node type (AND, OR, etc)
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="mstruct">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="xml_spec_file">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="child">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="error">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error has occurred
+</return>
 </function>
 
-<function name="gda_object_ref_get_ref_object">
+<function name="gda_value_new_from_xml">
 <description>
-Get the referenced object by @ref
+Creates a GValue from an XML representation of it. That XML
+node corresponds to the following string representation:
+&amp;lt;value type=&quot;gdatype&quot;&amp;gt;value&amp;lt;/value&amp;gt;
+
+For more information
+about the string format, see the gda_value_set_from_string() function.
+This function is typically used when reading configuration files or other non-user input that should be locale 
+independent.
 
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="node">
+<parameter_description> an XML node representing the value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the object, or NULL if the reference is not active
+<return> the newly created #GValue.
 </return>
 </function>
 
-<function name="gda_query_field_func_get_args">
+<function name="gda_config_list_dsn">
 <description>
-Get a list of the other #GdaQueryField objects which are arguments of @func. If some
-of them are missing, then a %NULL is inserted where it should have been.
+Get a #GdaDataModel representing all the configured DSN, and keeping itself up to date with
+the changes in the declared DSN.
+
+The returned data model is composed of the following columns:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;DSN name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Provider name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Description&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Connection string&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Username if it exists&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaQueryFieldFunc object
+</parameters>
+<return> a new #GdaDataModel
+</return>
+</function>
+
+<function name="gda_data_model_bdb_get_errors">
+<description>
+Get the list of errors which have occurred while using @model
+
+
+</description>
+<parameters>
+<parameter name="model">
+<parameter_description> a #GdaDataModelBdb object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of arguments
+<return> a read-only list of #GError pointers, or %NULL if no error has occurred
 </return>
 </function>
 
-<function name="gda_command_free">
+<function name="gda_value_set_ushort">
 <description>
-Frees the resources allocated by #gda_command_new.
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_column_get_references">
+<function name="gda_holder_copy">
 <description>
-Reference is returned in tablename.fieldname format. Do not free
-this variable, it is used internally within GdaColumn.
+Copy constructor.
+
+Note1: if @orig is set with a static value (see #gda_holder_take_static_value ()) 
+its copy will have a fresh new allocated GValue, so that user should free it when done.
 
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="orig">
+<parameter_description> a #GdaHolder object to copy
 </parameter_description>
 </parameter>
 </parameters>
-<return> @column&apos;s references.
+<return> a new #GdaHolder object
 </return>
 </function>
 
-<function name="gda_dict_field_is_fkey_part">
+<function name="This">
 <description>
-Test if @field is part of a foreign key constraint
+ note The BinReloc source code MUST be included in your library, or this
+function won&apos;t work correctly.
 
+ returns TRUE on success, FALSE if a filename cannot be found.
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
-</parameter_description>
-</parameter>
 </parameters>
-<return>
-</return>
+<return></return>
 </function>
 
-<function name="gda_config_add_listener">
+<function name="gda_value_set_from_string">
 <description>
-Installs a configuration listener, which is a callback function
-which will be called every time a change occurs on a given
-configuration entry.
+Stores the value data from its string representation as @type.
+
+The accepted formats are:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;G_TYPE_BOOLEAN: a caseless comparison is made with &quot;true&quot; or &quot;false&quot;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;numerical types: C locale format (dot as a fraction separator)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;G_TYPE_DATE: see &amp;lt;link linkend=&quot;gda-parse-iso8601-date&quot;&amp;gt;gda_parse_iso8601_date()&amp;lt;/link&amp;gt;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_TYPE_TIME: see &amp;lt;link linkend=&quot;gda-parse-iso8601-time&quot;&amp;gt;gda_parse_iso8601_time()&amp;lt;/link&amp;gt;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;GDA_TYPE_TIMESTAMP: see &amp;lt;link linkend=&quot;gda-parse-iso8601-timestamp&quot;&amp;gt;gda_parse_iso8601_timestamp()&amp;lt;/link&amp;gt;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
+This function is typically used when reading configuration files or other non-user input that should be locale 
+independent.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> configuration path to listen to.
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> callback function.
+<parameter name="as_string">
+<parameter_description> the stringified representation of the value.
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to be passed to the callback function.
+<parameter name="type">
+<parameter_description> the type of the value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID of the listener, which you will need for
-calling #gda_config_remove_listener. If an error occurs,
-0 is returned.
+<return> %TRUE if the value has been converted to @type from
+its string representation; it not means that the value is converted 
+successfully, just that the transformation is avairable. %FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_sql_transaction_parse">
+<function name="gda_holder_take_static_value">
 <description>
-Generate in memory a structure of the @sqlquery in an easy
-to view way.  You can also modify the returned structure and
-regenerate the sql query using sql_stringify().  The structure
-contains information on what type of sql statement it is, what
-tables its getting from, what fields are selected, the where clause,
-joins etc.
+Sets the const value within the holder. If @holder is an alias for another
+holder, then the value is also set for that other holder.
 
+The value will not be freed, and user should take care of it, either for its
+freeing or for its correct value at the moment of query.
 
-</description>
-<parameters>
-<parameter name="sqlquery">
-<parameter_description> A SQL query string. ie SELECT * FROM FOO
-</parameter_description>
-</parameter>
-</parameters>
-<return> A generated sql_statement or %NULL on error.
-</return>
-</function>
+If the value is not different from the one already contained within @holder,
+then @holder is not chaged and no signal is emitted.
+
+Note1: if @holder can&apos;t accept the @value value, then this method returns NULL, and @holder will be left
+in an invalid state.
+
+Note2: before the change is accepted by @holder, the &quot;validate-change&quot; signal will be emitted (the value
+of which can prevent the change from happening) which can be connected to to have a greater control
+of which values @holder can have, or implement some business rules.
 
-<function name="gda_query_get_field_by_sql_naming_fields">
-<description>
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a const value to set the holder to
 </parameter_description>
 </parameter>
-<parameter name="sql_name">
-<parameter_description> the SQL naming for the requested field
+<parameter name="value_changed">
+<parameter_description> a boolean set with TRUE if the value changes, FALSE elsewhere.
 </parameter_description>
 </parameter>
-<parameter name="fields_list">
-<parameter_description> an explicit list of fields to search into
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> NULL if an error occurred or if the previous GValue was NULL itself. It returns
+the static GValue user set previously, so that he can free it.
+
 </return>
 </function>
 
-<function name="gda_query_field_value_set_is_parameter">
+<function name="gda_connection_value_to_sql_string">
 <description>
-Sets wether @field can be considered as a parameter
+Produces a fully quoted and escaped string from a GValue
+
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="is_param">
-<parameter_description>
+<parameter name="from">
+<parameter_description> #GValue to convert from
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
-</function>
-
-<function name="gda_query_is_modify_query">
-<description>
-Tells if @query is a modification query (a simple UPDATE, DELETE, INSERT).; pure SQL
-queries are not handled and will always return FALSE.
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @query is a modification query
+<return> escaped and quoted value or NULL if not supported.
 </return>
 </function>
 
-<function name="gda_log_message">
+<function name="gda_data_model_iter_get_column_for_param">
 <description>
-Logs the given message in the GDA log file.
+Get the column number in the #GdaDataModel for which @iter is an iterator as
+represented by the @param parameter
+
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> format string (see the printf(3) documentation).
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to insert in the message.
+<parameter name="param">
+<parameter_description> a #GdaHolder object, listed in @iter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the column number, or @param is not valid
+</return>
 </function>
 
-<function name="gda_query_is_delete_query">
+<function name="gda_data_proxy_get_n_modified_rows">
 <description>
-Tells if @query is a DELETE query.
+Get the number of rows which have been modified in the proxy (the sum of rows existing in
+the proxied data model which have been modified, and new rows).
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @query is an delete query
+<return> the number of modified rows
 </return>
 </function>
 
-<function name="gda_query_join_set_condition">
+<function name="gda_meta_struct_complement">
 <description>
-Sets @cond to be @join&apos;s condition. This is possible only if @cond uses
-query fields which are either of type GdaQueryFieldField and reference one of the two
-targets which @join uses, or any other query field type.
+Creates a new #GdaMetaDbObject structure in @mstruct to represent the database object (of type @type)
+which can be uniquely identified as @catalog  schema @name.
+
+If @catalog is not %NULL, then @schema should not be %NULL.
+
+If @catalog is %NULL and @schema is not %NULL, then the database object will be the one which is
+&quot;visible&quot; by default (that is which can be accessed only by its short @name name).
+
+If both @catalog and @schema are %NULL, then the database object will be the one which 
+can be accessed by its @schema  name name.
+
+Important note: @catalog, @schema and @name must respect the following convention:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;be surrounded by double quotes for a case sensitive search&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;otherwise they will be converted to lower case for search&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="cond">
-<parameter_description> a  #GdaQueryCondition object, or %NULL to remove the join&apos;s condition
+<parameter name="type">
+<parameter_description> the type of object to add (which can be GDA_META_DB_UNKNOWN)
 </parameter_description>
 </parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_handler_time_get_no_locale_str_from_value">
-<description>
-Retunrs: a new string representing @value without taking the current
-locele into account
-
-</description>
-<parameters>
-<parameter name="hdl">
-<parameter_description> a #GdaHandlerTime object
+<parameter name="catalog">
+<parameter_description> the catalog the object belongs to (as a G_TYPE_STRING GValue), or %NULL
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a GValue value
+<parameter name="schema">
+<parameter_description> the schema the object belongs to (as a G_TYPE_STRING GValue), or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_add_sub_query">
-<description>
-Add @sub_query to @query. Sub queries are managed by their parent query, and as such they
-are destroyed when their parent query is destroyed.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="name">
+<parameter_description> the object&apos;s name (as a G_TYPE_STRING GValue), not %NULL
 </parameter_description>
 </parameter>
-<parameter name="sub_query">
-<parameter_description> a #GdaQuery object
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GdaMetaDbObject corresponding to the database object if no error occurred, or %NULL
+</return>
 </function>
 
-<function name="gda_connection_event_set_source">
+<function name="gda_sql_select_field_take_star_value">
 <description>
-Sets @event&apos;s @source.
+Sets the expression field&apos;s value in the #GdaSqlSelectField structure to point to @value;
+after this @field is the owner of @value.
+
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
 </parameter_description>
 </parameter>
-<parameter name="source">
-<parameter_description> a source.
+<parameter name="value">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_join_get_query">
+<function name="gda_sql_expr_serialize">
 <description>
-Get the #GdaQuery to which @join is attached to
+Creates a new string representing a field. You need to free the returned string
+using g_free();
 
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQuery
+<return> a new string with the name of the field or &quot;null&quot; in case @expr is invalid.
 </return>
 </function>
 
-<function name="gda_server_provider_create_operation">
+<function name="gda_connection_supports_feature">
 <description>
-Creates a new #GdaServerOperation object which can be modified in order to perform the @type type of
-action. The @options can contain:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;parameters which ID is a path in the resulting GdaServerOperation object, to initialize some value&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;parameters which may change the contents of the GdaServerOperation, see &amp;lt;link linkend=&quot;gda-server-op-information&quot;&amp;gt;this section&amp;lt;/link&amp;gt; for more information&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Asks the underlying provider for if a specific feature is supported.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
-</parameter_description>
-</parameter>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object which will be used to perform an action
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the type of operation requested
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> an optional list of parameters
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="feature">
+<parameter_description> feature to ask for.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaServerOperation object, or %NULL in the provider does not support the @type type
-of operation or if an error occurred
+<return> %TRUE if the provider supports it, %FALSE if not.
 </return>
 </function>
 
-<function name="gda_dict_get_object_by_name">
+<function name="gda_utility_check_data_model">
 <description>
-Tries to find an object from its name, among the objects managed by @dict of type @type.
+Check the column types of a GdaDataModel.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #Gtype type of object
+<parameter name="nbcols">
+<parameter_description> the minimum requested number of columns
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> 
+<parameter name="Varargs">
+<parameter_description> @nbcols arguments of type GType or -1 (if any data type is accepted)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the requested object, or %NULL if the object was not found
+<return> TRUE if the data model&apos;s columns match the provided data types and number
 </return>
 </function>
 
-<function name="gda_data_handler_get_str_from_value">
+<function name="gda_insert_row_into_table">
 <description>
-Creates a new string which is a &quot;user friendly&quot; representation of the given value
-(in the users&apos;s locale, specially for the dates). If the value is 
-NULL or is of type GDA_TYPE_NULL, the returned string is a copy of &quot;&quot; (empty string).
+This is just a convenient function to insert a row with the values given as argument.
+The values must correspond with the GType of the column to set, otherwise throw to 
+an error. Finish the list with NULL.
+
+The arguments must be pairs of column name followed by his value.
 
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
+<parameter name="cnc">
+<parameter_description> an opened connection
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to be converted to a string
+<parameter name="table_name">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of string/@GValue pairs where the string is the name of the column
+followed by its @GValue to set in the insert operation, finished by %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new string.
+<return> TRUE if no error occurred, and FALSE and set error otherwise
 </return>
 </function>
 
-<function name="gda_connection_set_password">
+<function name="gda_config_get_provider_info">
 <description>
-Sets the user password for the connection to the server. If the connection is already opened,
-then no action is performed at all and FALSE is returned.
+Get some information about the a database provider (adaptator) named 
+ provider_name
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-<parameter name="password">
+<parameter name="provider_name">
 <parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE on success
+<return> a pointer to read-only #GdaProviderInfo structure, or %NULL if not found
 </return>
 </function>
 
-<function name="gda_column_set_scale">
+<function name="gda_gbr_init">
 <description>
-Sets the scale of @column to @scale.
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="scale">
-<parameter_description> number of decimals.
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_connection_commit_transaction">
+<function name="gda_handler_boolean_new">
 <description>
-Commits the given transaction to the backend database. You need to call
-gda_connection_begin_transaction() first.
+Creates a data handler for booleans
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to commit
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the transaction was finished successfully,
-%FALSE otherwise.
+<return> the new object
 </return>
 </function>
 
-<function name="gda_dict_constraint_fkey_set_fields">
+<function name="gda_connection_get_meta_store">
 <description>
-Sets the field pairs which make the foreign key represented by @cstr. All the field pairs
-must list a field which belong to the same #GdaDictTable to which the constraint is attached
-and a field which belongs to a #GdaDictTable which is different from the one just mentionned and which
-is within the same database.
-The pairs are of type #GdaDictConstraintFkeyPair.
+Get or initializes the #GdaMetaStore associated to @cnc
+
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-<parameter name="pairs">
-<parameter_description> a list of #GdaDictField objects
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GdaMetaStore object
+</return>
 </function>
 
-<function name="gda_query_condition_get_child_by_xml_id">
+<function name="gda_data_model_create_iter">
 <description>
-Get a pointer to a #GdaQueryCondition child from its XML Id
+Creates a new iterator object #GdaDataModelIter object which can be used to iterate through
+rows in @model.
+
+The row the returned #GdaDataModelIter represents is undefined. For models which can be accessed 
+randomly the correspoding row can be set using gda_data_model_iter_move_at_row(), 
+and for models which are accessible sequentially only then the first row will be
+fetched using gda_data_model_iter_move_next().
 
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="xml_id">
-<parameter_description> the XML Id of the requested #GdaQueryCondition child
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryCondition object, or %NULL if not found
+<return> a new #GdaDataModelIter object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_value_get_geometric_point">
+<function name="gda_value_get_short">
 <description>
 
 </description>
@@ -4807,286 +4634,251 @@
 </return>
 </function>
 
-<function name="gda_client_notify_error_event">
+<function name="gda_connection_update_meta_store">
 <description>
-Notifies the given #GdaClient of the #GDA_CLIENT_EVENT_ERROR event.
+Updates @cnc&apos;s associated #GdaMetaStore. If @context is not %NULL, then only the parts described by
+ context will be updated, and if it is %NULL, then the complete meta store will be updated.
+
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
 <parameter name="cnc">
 <parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
+<parameter name="context">
+<parameter_description> description of which part of @cnc&apos;s associated #GdaMetaStore should be updated, or %NULL
+</parameter_description>
+</parameter>
 <parameter name="error">
-<parameter_description> the error to be notified.
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_dict_get_object_type_registration">
+<function name="gda_data_model_array_new_with_g_types">
 <description>
-Get a pointer to the #GdaDictRegisterStruct structure for the @type type of
-objects.
+Creates a new #GdaDataModel object with the column types as
+specified.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="cols">
+<parameter_description> number of columns for rows in this data model.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> e #Gtype
+<parameter name="Varargs">
+<parameter_description> types of the columns of the model to create as #GType, as many as indicated by @cols
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDictRegisterStruct pointer, or %NULL if @type is not registered
+<return> a pointer to the newly created #GdaDataModel.
 </return>
 </function>
 
-<function name="gda_query_field_value_new">
+<function name="gda_meta_struct_add_db_object">
 <description>
-Creates a new GdaQueryFieldValue object which represents a value or a parameter.
+Adds @dbo to the database objects known to @mstruct. In any case (whether an error occured or not)
+ dbo&apos;s responsability is then transferred to @smtruct and should
+not be used after calling this function (it may have been destroyed). If you need a pointer to the #GdaMetaDbObject
+for a database object, use gda_meta_struct_get_db_object().
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery in which the new object will be
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the GDA type for the value
+<parameter name="dbo">
+<parameter_description> a #GdaMetaDbObject structure
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a pointer to the #GdaMetaDbObject used in @mstruct to represent the added database object (may be @dbo or not)
 </return>
 </function>
 
-<function name="gda_data_model_import_new_mem">
+<function name="gda_dsn_split">
 <description>
-Creates a new #GdaDataModel object which contains the data stored in the @data string. 
-
-Important note: the @data string is not copied for memory efficiency reasons and should not
-therefore be altered in any way as long as the returned data model exists.
+Extract the DSN, username and password from @string. in @string, the various parts are strings
+which are expected to be encoded using an RFC 1738 compliant encoding. If they are specified, 
+the returned username and password strings are correclty decoded.
 
+ out_username and @out_password may be set to %NULL depending on @string&apos;s format.
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> a string containng the data to import
+<parameter name="string">
+<parameter_description> a string in the &quot;[&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;DSN&amp;gt;&quot; form
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to the newly created #GdaDataModel.
-</return>
-</function>
-
-<function name="gda_server_provider_delete_savepoint">
-<description>
-
-</description>
-<parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter name="out_dsn">
+<parameter_description> a place to store the new string containing the &amp;lt;DSN&amp;gt; part
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
+<parameter name="out_username">
+<parameter_description> a place to store the new string containing the &amp;lt;username&amp;gt; part
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name of the savepoint to delete
+<parameter name="out_password">
+<parameter_description> a place to store the new string containing the &amp;lt;password&amp;gt; part
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_referer_get_ref_objects">
+<function name="gda_holder_value_is_default">
 <description>
-Get the list of objects which are referenced by @iface. The returned list is a
-new list. If @iface is not active, then the returned list is incomplete.
+Tells if @holder&apos;s current value is the default one.
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaReferer interface
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of referenced objects
+<return> TRUE if @holder @holder&apos;s current value is the default one
 </return>
 </function>
 
-<function name="gda_data_model_thaw">
+<function name="gda_config_remove_dsn">
 <description>
-Re-enables notifications of changes on the given data model.
+Add or update a DSN from the definition in @info
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="dsn_name">
+<parameter_description> the name of the DSN to remove
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_iter_invalidate_contents">
-<description>
-Declare all the parameters in @iter invalid, without modifying the
-#GdaDataModel @iter is for or changing the row it represents
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_condition_get_main_conditions">
-<description>
-Makes a list of all the conditions which
-are always verified by @condition when it returns TRUE when evaluated.
-Basically the returned list lists the atomic conditions which are AND&apos;ed
-together to form the complex @condition.
-
-Examples: if @condition is:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt; &quot;A and B&quot; then the list will contains {A, B}&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt; &quot;A and (B or C)&quot; it will contain {A, B or C}&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt; &quot;A and (B and not C)&quot;, it will contain {A, B, not C}&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-
-
-</description>
-<parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaQueryCondition objects
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_command_set_command_type">
+<function name="gda_data_model_get_column_name">
 <description>
-Sets the command type of @cmd.
+Since: 3.2
+
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the command type.
+<parameter name="col">
+<parameter_description> column number.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name for the given column in a data model object.
+</return>
 </function>
 
-<function name="gda_referer_deactivate">
+<function name="gda_config_get_nb_dsn">
 <description>
-Deactivates the object. This is the opposite to function gda_referer_activate().
-If the object is already non active, then nothing happens.
+Get the number of defined DSN
+
+Return: the number of defined DSN
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaReferer interface
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_filter_sql_new">
+<function name="gda_row_new">
 <description>
-Creates a new #GdaDataModelFilterSQL object, which allows programs to filter
-#GdaDataModel&apos;s based on a given SQL SELECT command.
+Creates a #GdaRow which can hold @count #GValue values.
 
-A #GdaDataModelFilterSQL is just another #GdaDataModel-based class, so it
-can be used in the same way any other data model class is.
+The caller of this function is the only owner of a reference to the newly created #GdaRow
+object, even if @model is not %NULL (it is recommended to pass %NULL as the @model argument
+if this function is not called from within a #GdaDataModel implementation).
 
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> the #GdaDataModel this row belongs to, or %NULL if the row is outside any data model
+</parameter_description>
+</parameter>
+<parameter name="count">
+<parameter_description> number of #GValue in the new #GdaRow.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created object.
+<return> a newly allocated #GdaRow object.
 </return>
 </function>
 
-<function name="gda_query_get_all_fields">
+<function name="gda_sql_statement_normalize">
 <description>
-Fetch a list of all the fields of @query: the ones which are visible, and
-the ones which are not visible and are not internal query fields.
+&quot;Normalizes&quot; (in place) some parts of @stmt, which means @stmt may be modified.
+At the moment any &quot;*&quot; field in a SELECT statement will be replaced by one
+#GdaSqlSelectField structure for each field in the referenced table.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="stmt">
+<parameter_description> a pointer to a #GdaSqlStatement structure
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of fields
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_query_join_set_condition_from_fkcons">
+<function name="gda_holder_get_alphanum_id">
 <description>
-Creates a #GdaQueryCondition for @join using the foreign key constraints
-present in the database if the two targets @join joins are database tables
-(#GdaDictTable objects).
+Get an &quot;encoded&quot; version of @holder&apos;s name. The &quot;encoding&quot; consists in replacing non
+alphanumeric character with the string &quot;__gdaXX&quot; where XX is the hex. representation
+of the non alphanumeric char.
 
-If there is more than one FK constraint between the database tables, then
-no join is created, and the call returns FALSE.
+This method is just a wrapper around the gda_text_to_alphanum() function.
 
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if suitable foreign keys were found and a join condition
-has been created
+<return> a new string
 </return>
 </function>
 
-<function name="gda_data_proxy_set_sample_size">
+<function name="gda_data_proxy_get_filter_expr">
 <description>
-Sets the size of each chunck of fata to display: the maximum number of rows which
-can be displayed at a time. The default value is arbitrary 300 as it is big enough to
-be able to display quite a lot of data, but small enough to avoid too much data
-displayed at the same time.
-
-Note: the rows which have been added but not yet commited will always be displayed
-regardless of the current chunck of data, and the modified rows which are not visible
-when the displayed chunck of data changes are still held as modified rows.
+Get the current filter expression used by @proxy.
 
-To remove the chuncking of the data to display, simply pass @sample_size the 0 value.
 
 </description>
 <parameters>
@@ -5094,374 +4886,311 @@
 <parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="sample_size">
-<parameter_description> the requested size of a chunck, or 0
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the current filter expression or %NULL if no filter has been set
+</return>
 </function>
 
-<function name="gda_dict_constraint_fkey_set_actions">
+<function name="gda_server_provider_supports_operation">
 <description>
-Sets the actions undertaken by the DBMS when some actions occur on the referenced data
+Tells if @provider supports the @type of operation on the @cnc connection, using the
+(optional) @options parameters.
+
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-<parameter name="on_update">
-<parameter_description> the action undertaken when an UPDATE occurs
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
 </parameter_description>
 </parameter>
-<parameter name="on_delete">
-<parameter_description> the action undertaken when a DELETE occurs
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object which would be used to perform an action, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_field_value_set_value">
-<description>
-Sets the value of @field, or removes it (if @val is %NULL)
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="type">
+<parameter_description> the type of operation requested
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> the value to be set, or %NULL
+<parameter name="options">
+<parameter_description> a list of named parameters, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if the operation is supported
+</return>
 </function>
 
-<function name="gda_dict_function_set_ret_dict_type">
+<function name="gda_connection_event_set_gda_code">
 <description>
-Set the return type of a function
+Sets @event&apos;s gda code: that code is standardized by the libgda
+library. If you want to specify the corresponding provider specific code,
+use gda_connection_event_get_code() or gda_connection_event_get_sqlstate() instead.
+
+This function should not be called directly
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent
 </parameter_description>
 </parameter>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object or #NULL
+<parameter name="code">
+<parameter_description> a code
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_all_new">
+<function name="gda_data_comparator_new">
 <description>
-Creates a new #GdaQueryFieldAll object which represents all the fields of the entity represented
-by a target.
+Creates a new comparator to compute the differences from @old_model to @new_model: if one applies
+all the computed differences (as #GdaDiff structures) to @old_model, the resulting data model
+should have the same contents as @new_model.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery in which the new object will be
+<parameter name="old_model">
+<parameter_description> Data model to which the modifications should be applied
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> the target&apos;s name or alias
+<parameter name="new_model">
+<parameter_description> Target data model.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a new #GdaDataComparator object
 </return>
 </function>
 
-<function name="gda_config_remove_listener">
+<function name="gda_data_model_import_from_file">
 <description>
-Removes a configuration listener previously installed with
-#gda_config_add_listener, given its ID.
+Imports data contained in the @file file into @model; the format is detected.
+
 
 </description>
 <parameters>
-<parameter name="id">
-<parameter_description> the ID of the listener to remove.
+<parameter name="model">
+<parameter_description> a #GdaDataModel
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_delimiter_free_list">
-<description>
-Destroys all the #GdaDelimiterStatement structures in @statements, and
-frees the @statements list
-
-</description>
-<parameters>
-<parameter name="statements">
-<parameter_description> a list of #GdaDelimiterStatement structures
+<parameter name="file">
+<parameter_description> the filename to import from
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_join_swap_targets">
-<description>
-Changes the relative roles of the two #GdaQueryTarget objects. It does not
-change the join condition itself, and is usefull only for the internals
-of the #GdaQuery object
-
-</description>
-<parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="cols_trans">
+<parameter_description> a #GHashTable for columns translating, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_column_get_title">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="options">
+<parameter_description> list of options for the export
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the column&apos;s title
-</return>
-</function>
-
-<function name="gda_handler_time_new">
-<description>
-Creates a data handler for time values
-
-
-</description>
-<parameters>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_server_provider_blob_list_for_delete">
-<description>
-Create a SELECT query from a DELETE query which lists all the BLOB fields in the
-query which will be deleted. This function is used by GdaServerProvider implementations
-when dealing with BLOB deletions.
-
-After execution, @out_select contains a new GdaQuery, or %NULL if the delete query does not have any
-BLOB to delete.
-
-For example DELETE FROM blobs WHERE id= ##/ *name:&apos;id&apos; type:gint* /
-will create:
-SELECT t1.data FROM blobs AS t1 WHERE id= ##/ *name:&apos;id&apos; type:gint* /
-
-
-</description>
-<parameters>
-</parameters>
-<return> TRUE if no error occurred.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_row_get_length">
+<function name="gda_data_model_dir_clean_errors">
 <description>
+Reset the list of errors which have occurred while using @model
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow.
+<parameter name="model">
+<parameter_description> a #GdaDataModelDir object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of columns that the @row has.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_function_accepts_arg_dict_types">
+<function name="gda_column_get_attribute">
 <description>
-Test if the proposed list of arguments (@arg_types) would be accepted by
-the @func function.
+Get the value associated to a named attribute.
 
-The non acceptance can be beause of data type incompatibilities or a wrong number
-of data types.
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="column">
+<parameter_description> a #GdaColumn
 </parameter_description>
 </parameter>
-<parameter name="arg_types">
-<parameter_description> a list of #GdaDictType objects or #NULL values, ordered
+<parameter name="attribute">
+<parameter_description> attribute name as a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if accepted
+<return> a read-only #GValue, or %NULL if not attribute named @attribute has been set for @column
 </return>
 </function>
 
-<function name="gda_parameter_new_boolean">
+<function name="gda_xa_transaction_commit_recovered">
 <description>
-Creates a new #GdaParameter object of type G_TYPE_BOOLEAN
+Tries to commit the data prepared but which failed to commit (see gda_xa_transaction_commit()). This
+method allows one to terminate a distributed transaction which succedded but for which some
+connections needed to be recovered.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the parameter to create
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value to give to the new parameter
+<parameter name="cnc_to_recover">
+<parameter_description> a place to store the list of connections for which the there were data to recover and which failed
+to be actually committed, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaParameter object
+<return> TRUE if all the data which was still uncommitted has been committed
 </return>
 </function>
 
-<function name="gda_log_disable">
-<description>
-Disables GDA logs.
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_value_set_null">
+<function name="gda_data_model_set_column_title">
 <description>
-Sets the type of @value to #GDA_TYPE_NULL.
+Sets the @title of the given @col in @model.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store a value of type #GDA_TYPE_NULL.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> column number
+</parameter_description>
+</parameter>
+<parameter name="title">
+<parameter_description> title for the given column.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_execute">
+<function name="gda_meta_store_modify">
 <description>
-Executes @query and returns #GdaDataModel if @query&apos;s execution yields to a data set, or a
-#GdaParameterList object otherwise, or %NULL if an error occurred. You can test the return value
-using GObject&apos;s introscpection features such as GDA_IS_DATA_MODEL() or GDA_IS_PARAMETER_LIST().
+Propagates an update to @store, the update&apos;s contents is represented by @new_data, this function is
+primarily reserved to database providers.
+
+For example tell @store to update its list of tables, @new_data should contain the same columns as the &quot;_tables&quot;
+table of @store, and contain one row per table in the store; there should not be any more argument after the @error
+argument.
 
-For more information about the returned value, see gda_server_provider_execute_command().
+Now, to update only one table, the @new_data data model should have one row for the table to update (or no row
+at all if the table does not exist anymore), and have values for the promary key of the &quot;_tables&quot; table of
+ store, namely &quot;table_catalog&quot;, &quot;table_schema&quot; and &quot;table_name&quot;.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> the #GdaQuery to execute
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> a #GdaParameterList object obtained using gda_query_get_parameter_list()
+<parameter name="table_name">
+<parameter_description> the name of the table to modify within @store
 </parameter_description>
 </parameter>
-<parameter name="iter_model_only_requested">
-<parameter_description> set to TRUE if the returned data model will only be accessed using an iterator
+<parameter name="new_data">
+<parameter_description> a #GdaDataModel containing the new data to set in @table_name, or %NULL (treated as a data model
+with no row at all)
+</parameter_description>
+</parameter>
+<parameter name="condition">
+<parameter_description> SQL expression (which may contain variables) defining the rows which are being obsoleted by @new_data, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
 <parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
+<parameter name="Varargs">
+<parameter_description> a list of (variable name (gchar *), GValue *value) terminated with NULL, representing values for all the
+variables mentionned in @condition.
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GdaDataModel, a #GdaParameterList or %NULL.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_parameter_list_new">
+<function name="gda_connection_statement_to_sql">
 <description>
-Creates a new #GdaParameterList object, and populates it with the list given as argument.
-The list can then be freed as it gets copied. All the parameters in @params are referenced counted
-and modified, so they should not be used anymore afterwards, and the @params list gets copied
-(so it should be freed by the caller).
+Renders @stmt as an SQL statement, adapted to the SQL dialect used by @cnc
 
 
 </description>
 <parameters>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
 <parameter name="params">
-<parameter_description> a list of #GdaParameter objects
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> SQL rendering flags, as #GdaStatementSqlFlag OR&apos;ed values
+</parameter_description>
+</parameter>
+<parameter name="params_used">
+<parameter_description> a place to store the list of individual #GdaHolder objects within @params which have been used
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaParameterList object
+<return> a new string, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_graphs_get_with_type">
+<function name="gda_connection_string_split">
 <description>
-Get a list of the graphs managed by @dict, which are of the
-requested type.
-
+Extract the provider, connection parameters, username and password from @string. 
+in @string, the various parts are strings
+which are expected to be encoded using an RFC 1738 compliant encoding. If they are specified, 
+the returned provider, username and password strings are correclty decoded.
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="string">
+<parameter_description> a string in the &quot;[&amp;lt;provider&amp;gt;://][&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;connection_params&amp;gt;&quot; form
 </parameter_description>
 </parameter>
-<parameter name="type_of_graphs">
-<parameter_description> the requested type of graphs
+<parameter name="out_cnc_params">
+<parameter_description> a place to store the new string containing the &amp;lt;connection_params&amp;gt; part
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new list of #GdaGraph objects
-</return>
-</function>
-
-<function name="gda_value_new_from_xml">
-<description>
-Creates a GValue from a XML representation of it. That XML
-node corresponds to the following string representation:
-&amp;lt;value type=&quot;gdatype&quot;&amp;gt;value&amp;lt;/value&amp;gt;
-
-
-</description>
-<parameters>
-<parameter name="node">
-<parameter_description> a XML node representing the value.
+<parameter name="out_provider">
+<parameter_description> a place to store the new string containing the &amp;lt;provider&amp;gt; part
 </parameter_description>
 </parameter>
-</parameters>
-<return>  the newly created #GValue.
-</return>
-</function>
-
-<function name="gda_data_model_append_values">
-<description>
-Appends a row to the given data model. If any value in @values is actually %NULL, then 
-it is considered as a default value.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="out_username">
+<parameter_description> a place to store the new string containing the &amp;lt;username&amp;gt; part
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> #GList of #GValue* representing the row to add.  The
-length must match model&apos;s column count.  These #GValue
-are value-copied (the user is still responsible for freeing them).
+<parameter name="out_password">
+<parameter_description> a place to store the new string containing the &amp;lt;password&amp;gt; part
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -5469,172 +5198,92 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of the added row, or -1 if an error occurred
-</return>
-</function>
-
-<function name="gda_column_get_defined_size">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a @GdaColumn.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the defined size of @column.
-</return>
+<return></return>
 </function>
 
-<function name="gda_column_index_get_sorting">
+<function name="gda_connection_get_dsn">
 <description>
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a @GdaColumnIndex.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the sorting of @dmcia.
+<return>the data source name the connection object is connected
+to.
 </return>
 </function>
 
-<function name="gda_value_set_ushort">
+<function name="gda_quark_list_foreach">
 <description>
-Stores @val into @value.
+Calls the given function for each of the key/value pairs in @qlist. The function is passed the key and value 
+of each pair, and the given user_data parameter. @qlist may not be modified while iterating over it.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
+<parameter name="qlist">
+<parameter_description> a #GdaQuarkList structure.
 </parameter_description>
 </parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
+<parameter name="func">
+<parameter_description> the function to call for each key/value pair
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_graph_query_sync_targets">
-<description>
-Synchronises the graph items with the targets of the query @graph represents
-
-</description>
-<parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraphQuery object
+<parameter name="user_data">
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_client_prepare_drop_database">
-<description>
-Creates a new #GdaServerOperation object which contains the specifications required
-to drop a database. Once these specifications provided, use 
-gda_client_perform_drop_database() to perform the database creation.
-
-If @db_name is left %NULL, then the name of the database to drop will have to be set in the
-returned #GdaServerOperation using gda_server_operation_set_value_at().
-
-
-</description>
-<parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="db_name">
-<parameter_description> the name of the database to drop, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="provider">
-<parameter_description> a provider
-</parameter_description>
-</parameter>
-</parameters>
-<return> new #GdaServerOperation object, or %NULL if the provider does not support database
-destruction
-</return>
-</function>
-
-<function name="gda_query_field_get_alias">
-<description>
-Get @qfield&apos;s alias
-
-
-</description>
-<parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the alias
-</return>
-</function>
-
-<function name="gda_connection_get_password">
+<function name="gda_value_get_list">
 <description>
-Gets the password used to open this connection.
-
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the password.
+<return> the value stored in @value.
 </return>
 </function>
 
-<function name="gda_value_set_from_string">
+<function name="gda_data_model_add_data_from_xml_node">
 <description>
-Stores the value data from its string representation as @type.
+Adds the data from an XML node to the given data model (see the DTD for that node
+in the $prefix/share/libgda/dtd/libgda-array.dtd file).
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="as_string">
-<parameter_description> the stringified representation of the value.
+<parameter name="model">
+<parameter_description> a #GdaDataModel.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the type of the value
+<parameter name="node">
+<parameter_description> an XML node representing a &amp;lt;gda_array_data&amp;gt; XML node.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the value has been converted to @type from
-its string representation; it not means that the value is converted 
-successfully, just that the transformation is avairable. %FALSE otherwise.
+<return> %TRUE if successful, %FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_query_is_well_formed">
+<function name="gda_data_select_compute_modification_statements">
 <description>
-Tells if @query is well formed, and if @context is not %NULL, also tells if rendering to
-SQL can be done without error
+Makes @model try to compute INSERT, UPDATE and DELETE statements to be used when modifying @model&apos;s contents.
+Note: any modification statement set using gda_data_select_set_modification_statement() will first be unset
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> a #GdaParameterList obtained using gda_query_get_parameter_list(), or %NULL
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -5642,3910 +5291,867 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> FALSE if @query is not well formed
+<return> TRUE if no error occurred. If FALSE is returned, then some modification statement may still have been
+computed
 </return>
 </function>
 
-<function name="gda_entity_add_field_before">
+<function name="gda_connection_event_set_description">
 <description>
-Add @field to @iface&apos;s fields, before @field_before if it is not %NULL, 
-or at the end if @field_before is %NULL.
+Sets @event&apos;s @description. This function should not be called directly.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> an object implementing the #GdaEntityField interface to add
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
-<parameter name="field_before">
-<parameter_description> an object implementing the #GdaEntityField interface before which @field will be added, or %NULL
+<parameter name="description">
+<parameter_description> a description.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_parameter_get_value_str">
-<description>
-Get a string representation of the value stored in @param. Calling
-gda_parameter_set_value_str () with this value will restore @param&apos;s current
-state.
-
-
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new string, or %NULL if @param&apos;s value is NULL
-</return>
-</function>
-
-<function name="gda_log_is_enabled">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return> whether GDA logs are enabled (%TRUE or %FALSE).
-</return>
-</function>
-
-<function name="gda_data_model_iter_get_column_for_param">
-<description>
-Get the column number in the #GdaDataModel for which @iter is an iterator as
-represented by the @param parameter
-
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object, listed in @iter
-</parameter_description>
-</parameter>
-</parameters>
-<return> the column number, or @param is not valid
-</return>
-</function>
-
-<function name="gda_column_index_get_defined_size">
-<description>
-
-</description>
-<parameters>
-<parameter name="dmcia">
-<parameter_description> a @GdaColumnIndex.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the defined size of @dmcia.
-</return>
-</function>
-
-<function name="gda_renderer_render_as_sql">
-<description>
-Build a SQL statement representing the object, in the specified context.
-
-If @context is %NULL, then no error related to missing parameters (which should be in the
-context) is returned, and missing values are replaced by &apos;human readable&apos; SQL.
-
-If @out_params_used is not %NULL, then pointers to the #GdaParameter objects used to actually
-render the SQL statement are appended to the list (in case a parameter object is used several times,
-it is only once listed in the resulting list).
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaRenderer interface
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> a #GdaParameterList containing values for @iface&apos;s parameters, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="out_params_used">
-<parameter_description> a place to append #GdaParameter which have been used during the rendering process, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> OR&apos;ed flags from #GdaRendererOptions to give some rendering options
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new SQL statement (new string), or %NULL in case of error
-</return>
-</function>
-
-<function name="gda_parameter_get_value">
-<description>
-Get the value held into the parameter
-
-
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value (a NULL value returns a GDA_TYPE_NULL GValue)
-</return>
-</function>
-
-<function name="gda_connection_supports_feature">
+<function name="gda_column_get_name">
 <description>
-Asks the underlying provider for if a specific feature is supported.
-
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="feature">
-<parameter_description> feature to ask for.
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the provider supports it, %FALSE if not.
-</return>
-</function>
-
-<function name="gda_dict_aggregate_set_arg_dict_type">
-<description>
-Set the argument type of a aggregate
-
-</description>
-<parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
-</parameter_description>
-</parameter>
-<parameter name="dt">
-<parameter_description> a #GdaDictType objects or #NULL value to represent the data type
-of the aggregate&apos;s unique argument .
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_insert_row_into_table">
-<description>
-This is just a convenient function to insert a row with the values given as argument.
-The values must correspond with the GType of the column to set, otherwise throw to 
-an error. Finish the list with NULL.
-
-The arguments must be pairs of column name followed by his value.
-
-
-</description>
-<parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
-</parameter_description>
-</parameter>
-<parameter name="table_name">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a list of string/@GValue pairs where the string is the name of the column
-followed by its @GValue to set in the insert operation, finished by %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred, and FALSE and set error otherwise
-</return>
-</function>
-
-<function name="gda_query_set_sql_text">
-<description>
-Defines @query&apos;s contents from an SQL statement. The SQL text is parsed and the internal query structured
-is built from that; the query type is also set. If the SQL text cannot be parsed, then the internal structure
-of the query is emptied and the query type is set to GDA_QUERY_TYPE_NON_PARSED_SQL.
-
-To be parsed successfully, the expected SQL must respect the SQL standard; some extensions have been
-added to be able to define variables within the SQL statement. See the introduction to the #GdaQuery
-for more information.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="sql">
-<parameter_description> the SQL statement
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store parsing error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_object_set_name">
-<description>
-Sets the name of the GdaObject object. If the name is changed, then the 
-&quot;name_changed&quot; signal is emitted.
-
-
-</description>
-<parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> 
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_connection_get_server_version">
-<description>
-Gets the version string of the underlying database server.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the server version string.
-</return>
-</function>
-
-<function name="gda_data_model_index_get_references">
-<description>
-
-</description>
-<parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-</parameters>
-<return> @dmi&apos;s references.
-</return>
-</function>
-
-<function name="gda_handler_boolean_new">
-<description>
-Creates a data handler for booleans
-
-
-</description>
-<parameters>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_object_ref_new">
-<description>
-Creates a new GdaObjectRef object. This #GdaObjectRef object does itself increase the
-reference count of the referenced object, so if all the reference count holders call g_object_unref()
-on there referenced object, then that object will not be destroyed because this #GdaObjectRef still
-has a reference on it. Use gda_object_ref_new_no_ref_count() if you don&apos;t want to increase the reference
-count of the referenced object.
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_data_model_create_iter">
-<description>
-Creates a new iterator object #GdaDataModelIter object which can be used to iterate through
-rows in @model.
-
-The row the returned #GdaDataModelIter represents is undefined. For models which can be accessed 
-randomly the correspoding row can be set using gda_data_model_move_iter_at_row(), 
-and for models which are accessible sequentially only then the first row will be
-fetched using gda_data_model_move_iter_next().
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GdaDataModelIter object, or %NULL if an error occurred
-</return>
-</function>
-
-<function name="gda_value_get_short">
-<description>
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value stored in @value.
-</return>
-</function>
-
-<function name="gda_data_model_array_new_with_g_types">
-<description>
-Creates a new #GdaDataModel object with the column types as
-specified.
-
-
-</description>
-<parameters>
-<parameter name="cols">
-<parameter_description> number of columns for rows in this data model.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> types of the columns of the model to create as #GType
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the newly created #GdaDataModel.
-</return>
-</function>
-
-<function name="gda_query_get_target_pkfields">
-<description>
-Makes a list of the #GdaQueryField objects which represent primary key fields of
-the entity represented by @target.
-
-If the entity represented by @target does not have any primary key, or if the 
-primary key&apos;s fields are not present in @query, then the returned value is %NULL.
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new GSList, or %NULL.
-</return>
-</function>
-
-<function name="gda_dict_function_set_sqlname">
-<description>
-Set the SQL name of the data type.
-
-</description>
-<parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
-</parameter_description>
-</parameter>
-<parameter name="sqlname">
-<parameter_description> 
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_client_declare_connection">
-<description>
-Declares the @cnc to @client. This function should not be used directly
-
-</description>
-<parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_condition_represents_join">
-<description>
-Tells if @condition represents a join condition: it is a condition (within a #GdaQuery object)
-for which the only #GdaQueryFieldField fields taking part in the condition are from two distincts
-#GdaQueryTarget objects. Such conditions can be assigned to a #GdaQueryJoin object using the 
-gda_query_join_set_condition() or gda_query_join_set_condition_from_fkcons() methods.
-
-Additionnaly, if @condition is a join condition, and if @target1 and @target2 are not %NULL
-then they are set to point to the two #GdaQueryTarget objects taking part in the condition. In this
-case @target1 and @target2 wil hold non %NULL values.
-
-In a similar way, if @is_equi_join is not %NULL, then it will be set to TRUE if the join
-condition is an equi join (that is the only comparison operator is the equal sign and there are
-only AND operators in the condition).
-
-If @condition is not a join condition, then @target1, @target2 and @is_equi_join are left
-untouched.
-
-
-</description>
-<parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="target1">
-<parameter_description> place to store one of the targets, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="target2">
-<parameter_description> place to store the other target, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="is_equi_join">
-<parameter_description> place to store if the join is an equi join
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @condition is a join condition
-</return>
-</function>
-
-<function name="gda_dict_constraint_get_constraint_type">
-<description>
-Get the type of constraint the @cstr object represents
-
-
-</description>
-<parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the constraint type
-</return>
-</function>
-
-<function name="gda_dict_get_default_handler">
-<description>
-Obtain a pointer to a #GdaDataHandler which can manage
-#GValue values of type @for_type
-
-The returned pointer is %NULL if there is no default data handler available for the @for_type data type
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="for_type">
-<parameter_description> a #GType type
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #GdaDataHandler
-</return>
-</function>
-
-<function name="gda_row_get_id">
-<description>
-Returns: the unique identifier for this row.
-
-</description>
-<parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow (which contains #GValue).
-</parameter_description>
-</parameter>
-</parameters>
-<return> the unique identifier for this row.
-</return>
-</function>
-
-<function name="gda_connection_event_set_code">
-<description>
-Sets @event&apos;s code: the code is specific to the provider being used.
-If you want to have a common understanding of the event codes, use
-gda_connection_event_get_gda_code() instead.
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
-</parameter_description>
-</parameter>
-<parameter name="code">
-<parameter_description> a code.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_object_get_name">
-<description>
-Fetch the name of the GdaObject object.
-
-
-</description>
-<parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the object&apos;s name.
-</return>
-</function>
-
-<function name="gda_query_condition_is_leaf">
-<description>
-Tells if @condition is a leaf condition (not AND, OR, NOT, etc)
-
-
-</description>
-<parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @condition is a leaf condition
-</return>
-</function>
-
-<function name="sqlerror">
-<description>
-Internal function for displaying error messages used by the lexer parser.
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_row_new">
-<description>
-Creates a #GdaRow which can hold @count #GValue values.
-
-The caller of this function is the only owner of a reference to the newly created #GdaRow
-object, even if @model is not %NULL (it is recommended to pass %NULL as the @model argument
-if this function is not called from within a #GdaDataModel implementation).
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> the #GdaDataModel this row belongs to, or %NULL if the row is outside any data model
-</parameter_description>
-</parameter>
-<parameter name="count">
-<parameter_description> number of #GValue in the new #GdaRow.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a newly allocated #GdaRow object.
-</return>
-</function>
-
-<function name="gda_dict_set_connection">
-<description>
-Sets the associated connection to @dict. This connection is then used when the dictionary
-synchronises itself, and when manipulating data (the gda_dict_get_handler() method).
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_iter_can_be_moved">
-<description>
-Tells if @iter can point to another row. Note the @iter by itself will not refuse
-a row change, but that the row change may be refused by another object using
- iter 
-
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if the row represented by @iter can be changed
-</return>
-</function>
-
-<function name="gda_object_ref_is_active">
-<description>
-Find wether @ref is active
-
-
-</description>
-<parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @ref is active
-</return>
-</function>
-
-<function name="gda_entity_swap_fields">
-<description>
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="field1">
-<parameter_description> an object implementing the #GdaEntityField interface
-</parameter_description>
-</parameter>
-<parameter name="field2">
-<parameter_description> an object implementing the #GdaEntityField interface
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_value_to_xml">
-<description>
-Serializes the given #GValue to a XML node string.
-
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the XML node. Once not needed anymore, you should free it.
-</return>
-</function>
-
-<function name="gda_server_provider_supports_operation">
-<description>
-Tells if @provider supports the @type of operation on the @cnc connection, using the
-(optional) @options parameters.
-
-
-</description>
-<parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object which would be used to perform an action
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the type of operation requested
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> a list of named parameters, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if the operation is supported
-</return>
-</function>
-
-<function name="gda_query_field_is_equal">
-<description>
-Compares the @qfield1 and @qfield2. The name and aliases of the two fields are
-not compared, only the contents of the fields are.
-
-
-</description>
-<parameters>
-<parameter name="qfield1">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-<parameter name="qfield2">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if they are equal and FALSE otherwise
-</return>
-</function>
-
-<function name="gda_referer_replace_refs">
-<description>
-Ask @iface to replace references to objects listed as keys in the @replacements hash table
-with references to objects of the corresponding value.
-
-It&apos;s up to the caller to make sure each pair of (key, value) objects in @replacements are of the
-same type, and that it makes sense to procede to the replacement.
-
-The object implementing this interface will accept to do any work only if it is
-already active.
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaReferer interface
-</parameter_description>
-</parameter>
-<parameter name="replacements">
-<parameter_description> a #GHashTable
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_config_save_data_source_info">
-<description>
-Saves a data source in the libgda configuration given a
-#GdaDataSourceInfo structure containing all the information
-about the data source.
-
-
-</description>
-<parameters>
-<parameter name="dsn_info">
-<parameter_description> a #GdaDataSourceInfo structure.
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_dict_object_is_assumed">
-<description>
-Tests if @object is assumed by @dict
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @object is assumed by @dict
-</return>
-</function>
-
-<function name="gda_data_model_import_from_file">
-<description>
-Imports data contained in the @file file into @model; the format is detected.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel
-</parameter_description>
-</parameter>
-<parameter name="file">
-<parameter_description> the filename to import from
-</parameter_description>
-</parameter>
-<parameter name="cols_trans">
-<parameter_description> a #GHashTable for columns translating, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> list of options for the export
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_column_set_table">
-<description>
-Sets the name of the table to which the given column belongs.
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="table">
-<parameter_description> table name.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_parameter_new_copy">
-<description>
-Copy constructor.
-
-
-</description>
-<parameters>
-<parameter name="orig">
-<parameter_description> a #GdaParameter object to copy
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GdaParameter object
-</return>
-</function>
-
-<function name="gda_dict_unassume_object">
-<description>
-Makes @dict release its reference on @object.
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_entity_field_get_description">
-<description>
-Get the description of the object implementing the #GdaEntityField interface
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaEntityField interface
-</parameter_description>
-</parameter>
-</parameters>
-<return> the description
-</return>
-</function>
-
-<function name="gda_entity_field_get_dict_type">
-<description>
-Get the data type of the object implementing the #GdaEntityField interface
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaEntityField interface
-</parameter_description>
-</parameter>
-</parameters>
-<return> the corresponding #GdaDictType
-</return>
-</function>
-
-<function name="gda_parameter_list_new_from_spec_string">
-<description>
-Creates a new #GdaParameterList object from the @xml_spec
-specifications
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="xml_spec">
-<parameter_description> a string
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store the error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new object, or %NULL if an error occurred
-</return>
-</function>
-
-<function name="gda_data_model_set_column_title">
-<description>
-Sets the @title of the given @col in @model.
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> column number
-</parameter_description>
-</parameter>
-<parameter name="title">
-<parameter_description> title for the given column.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_row_copy">
-<description>
-Copy constructor.
-
-
-</description>
-<parameters>
-<parameter name="row">
-<parameter_description> the #GdaRow to copy
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GdaRow
-</return>
-</function>
-
-<function name="gda_object_connect_destroy">
-<description>
-Connects the &quot;destroy&quot; signal of the @gdaobj object but first cheks that
- gdaobj exists and has not yet been destroyed.
-
-
-</description>
-<parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> the handler id of the signal
-</return>
-</function>
-
-<function name="gda_query_set_condition">
-<description>
-Sets the query&apos;s associated condition; if there was already a query condition,
-then the old one is trashed first.
-
-Pass %NULL as the @cond argument to remove any query condition
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="cond">
-<parameter_description> a #GdaQueryCondition object, or %NULL to remove condition
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_connection_get_dsn">
-<description>
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-</parameters>
-<return>the data source name the connection object is connected
-to.
-</return>
-</function>
-
-<function name="gda_query_field_value_get_default_value">
-<description>
-Get the default value stored by @field.
-
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value or NULL
-</return>
-</function>
-
-<function name="gda_server_operation_op_type_to_string">
-<description>
-Get a string version of @type
-
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> a non %NULL string (do not free or modify)
-</return>
-</function>
-
-<function name="gda_dict_type_get_sqlname">
-<description>
-Get the DBMS&apos;s name of a data type.
-
-
-</description>
-<parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the name of the data type
-</return>
-</function>
-
-<function name="gda_value_get_list">
-<description>
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value stored in @value.
-</return>
-</function>
-
-<function name="gda_dict_save_xml_file">
-<description>
-Saves the contents of a GdaDict object to a file which is given as argument.
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="xmlfile">
-<parameter_description> the name of the file to which the XML will be written to
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if saving was successfull and FALSE otherwise.
-</return>
-</function>
-
-<function name="gda_server_provider_begin_transaction">
-<description>
-
-</description>
-<parameters>
-<parameter name="provider">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to start
-</parameter_description>
-</parameter>
-<parameter name="level">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return>
-</return>
-</function>
-
-<function name="gda_init">
-<description>
-Initializes the GDA library. 
-
-</description>
-<parameters>
-<parameter name="app_id">
-<parameter_description> name of the program.
-</parameter_description>
-</parameter>
-<parameter name="version">
-<parameter_description> revision number of the program.
-</parameter_description>
-</parameter>
-<parameter name="nargs">
-<parameter_description> number of arguments, usually argc from main().
-</parameter_description>
-</parameter>
-<parameter name="args">
-<parameter_description> list of arguments, usually argv from main().
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_dict_function_set_arg_dict_types">
-<description>
-Set the arguments types of a function
-
-</description>
-<parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
-</parameter_description>
-</parameter>
-<parameter name="arg_types">
-<parameter_description> a list of #GdaDictType objects or #NULL values ordered to represent the data types
-of the function&apos;s arguments .
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_add_data_from_xml_node">
-<description>
-Adds the data from a XML node to the given data model (see the DTD for that node
-in the $prefix/share/libgda/dtd/libgda-array.dtd file).
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel.
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> a XML node representing a &amp;lt;gda_array_data&amp;gt; XML node.
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if successful, %FALSE otherwise.
-</return>
-</function>
-
-<function name="gda_dict_database_get_field_by_name">
-<description>
-Get a reference to a GdaDictField specifying the full name (table_name.field_name)
-of the requested field.
-
-
-</description>
-<parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-<parameter name="fullname">
-<parameter_description> the name of the requested table field
-</parameter_description>
-</parameter>
-</parameters>
-<return> The GdaDictField pointer or NULL if the requested field does not exist.
-</return>
-</function>
-
-<function name="gda_data_proxy_get_n_modified_rows">
-<description>
-Get the number of rows which have been modified in the proxy (the sum of rows existing in
-the proxied data model which have been modified, and new rows).
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of modified rows
-</return>
-</function>
-
-<function name="gda_data_model_index_set_references">
-<description>
-Sets @dmi&apos;s @references.
-
-</description>
-<parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="ref">
-<parameter_description> references.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_config_has_key">
-<description>
-Checks whether the given key exists in the configuration system.
-
-
-</description>
-<parameters>
-<parameter name="path">
-<parameter_description> path to the configuration key.
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if the entry exists, %FALSE otherwise.
-</return>
-</function>
-
-<function name="gda_connection_event_set_description">
-<description>
-Sets @event&apos;s @description.
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
-</parameter_description>
-</parameter>
-<parameter name="description">
-<parameter_description> a description.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_column_get_name">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the name of @column.
-</return>
-</function>
-
-<function name="gda_connection_close_no_warning">
-<description>
-Closes the connection to the underlying data source, without emiting any warning signal.
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_index_set_name">
-<description>
-Sets the name of @dmi to @name.
-
-</description>
-<parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the new name of @dmi.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_target_get_complete_name">
-<description>
-Get a complete name for target in the form of &quot;&amp;lt;entity name&amp;gt; AS &amp;lt;target alias&amp;gt;&quot;
-
-
-</description>
-<parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new string
-</return>
-</function>
-
-<function name="gda_data_proxy_get_sample_size">
-<description>
-Get the size of each chunk of data displayed at a time.
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the chunck (or sample) size, or 0 if chunking is disabled.
-</return>
-</function>
-
-<function name="gda_dict_get_object_by_xml_id">
-<description>
-For the objects which implement the #GdaXmlStorage interface, this function allows to find an object from
-its XML Id. The object is looked from the managed objects of type @type, and also from the list
-of all declared objects.
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #Gtype type of object
-</parameter_description>
-</parameter>
-<parameter name="xml_id">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the requested object, or %NULL if the object was not found
-</return>
-</function>
-
-<function name="gda_data_model_import_new_xml_node">
-<description>
-Creates a new #GdaDataModel and loads the data in @node. The resulting data model
-can be accessed in a random way.
-
-
-</description>
-<parameters>
-<parameter name="node">
-<parameter_description> an XML node corresponding to a &amp;lt;data-array&amp;gt; tag
-</parameter_description>
-</parameter>
-</parameters>
-<return> a pointer to the newly created #GdaDataModel.
-</return>
-</function>
-
-<function name="gda_value_set_timestamp">
-<description>
-Stores @val into @value.
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_row_set_value">
-<description>
-Sets the value stored at position @num in @row to be a copy of
- value 
-
-
-</description>
-<parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow
-</parameter_description>
-</parameter>
-<parameter name="num">
-<parameter_description> field index.
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #GValue to insert into @row at the @num position, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred.
-</return>
-</function>
-
-<function name="gda_data_model_filter_sql_run">
-<description>
-Runs the query and fills in the #GdaDataModelFilterSQL object with the
-rows that matched the SQL command (which can be set with
-#gda_data_model_filter_sql_set_sql) associated with this #GdaDataModelFilterSQL
-object.
-
-After calling this function, if everything is successful,
-the #GdaDataModelFilterSQL object will contain the matched rows, which
-can then be accessed like a normal #GdaDataModel.
-
-
-</description>
-<parameters>
-<parameter name="sel">
-<parameter_description> a #GdaDataModelFilterSQL object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if successful, %FALSE if there was an error.
-</return>
-</function>
-
-<function name="gda_parameter_new_string">
-<description>
-Creates a new #GdaParameter object of type G_TYPE_STRING
-
-
-</description>
-<parameters>
-<parameter name="name">
-<parameter_description> the name of the parameter to create
-</parameter_description>
-</parameter>
-<parameter name="str">
-<parameter_description> the contents of the parameter to create
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GdaParameter object
-</return>
-</function>
-
-<function name="gda_data_proxy_get_sample_start">
-<description>
-Get the row number of the first row to be displayed.
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of the first row being displayed.
-</return>
-</function>
-
-<function name="gda_data_model_iter_move_prev">
-<description>
-Moves @iter one row before where it already is (synchronizes the values of the parameters in @iter 
-with the values at the new row).
-
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_string_to_blob">
-<description>
-Performs the reverse of gda_blob_to_string().
-
-
-</description>
-<parameters>
-<parameter name="str">
-<parameter_description> a string to convert
-</parameter_description>
-</parameter>
-<parameter name="blob">
-<parameter_description> a non filled @GdaBlob structure
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error were found in @str, or FALSE otherwise
-</return>
-</function>
-
-<function name="gda_query_order_fields_using_join_conds">
-<description>
-Re-orders the fields in @query using the joins&apos; conditions: for each join condition,
-the used query fields are grouped together near the 1st visible field.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_value_new_blob">
-<description>
-Makes a new #GValue of type #GDA_TYPE_BLOB with value @val.
-
-
-</description>
-<parameters>
-<parameter name="val">
-<parameter_description> value to set for the new #GValue.
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> the size of the memory pool pointer to by @val.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the newly created #GValue.
-</return>
-</function>
-
-<function name="gda_blob_op_read">
-<description>
-Reads a chunk of bytes from the BLOB into @blob.
-
-
-</description>
-<parameters>
-<parameter name="op">
-<parameter_description> a #GdaBlobOp
-</parameter_description>
-</parameter>
-<parameter name="blob">
-<parameter_description> a #GdaBlob to read data to
-</parameter_description>
-</parameter>
-<parameter name="offset">
-<parameter_description> offset to read from the start of the blob (starts at 0)
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> maximum number of bytes to read.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of bytes actually read. In case of error, -1 is returned and the
-provider should have added an error to the connection.
-</return>
-</function>
-
-<function name="gda_parameter_restrict_values">
-<description>
-Sets a limit on the possible values for the @param parameter: the value must be among the values
-contained in the @col column of the @model data model.
-
-
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object or NULL
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> the reference column in @model
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_client_prepare_create_database">
-<description>
-Creates a new #GdaServerOperation object which contains the specifications required
-to create a database. Once these specifications provided, use 
-gda_client_perform_create_database() to perform the database creation.
-
-If @db_name is left %NULL, then the name of the database to create will have to be set in the
-returned #GdaServerOperation using gda_server_operation_set_value_at().
-
-
-</description>
-<parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="db_name">
-<parameter_description> the name of the database to create, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="provider">
-<parameter_description> a provider
-</parameter_description>
-</parameter>
-</parameters>
-<return> new #GdaServerOperation object, or %NULL if the provider does not support database
-creation
-</return>
-</function>
-
-<function name="gda_connection_is_opened">
-<description>
-Checks whether a connection is open or not.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if the connection is open, %FALSE if it&apos;s not.
-</return>
-</function>
-
-<function name="gda_query_field_value_set_not_null">
-<description>
-Sets if a NULL value is acceptable for @field. If @not_null is TRUE, then @field
-can&apos;t have a NULL value.
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
-<parameter name="not_null">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_column_set_title">
-<description>
-Sets the column&apos;s title
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="title">
-<parameter_description> title name.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_dict_field_get_constraints">
-<description>
-Get all the constraints which impact the given field. Constraints are of several type:
-NOT NULL, primary key, foreign key, check constrains
-
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField  object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new list of #GdaDictConstraint objects
-</return>
-</function>
-
-<function name="gda_query_add_param_source">
-<description>
-Tells @query that @param_source is a query which potentially will constraint the possible values
-of one or more of @query&apos;s parameters. This implies that @query keeps a reference on @param_source.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="param_source">
-<parameter_description> a #GdaDataModel object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_g_type_to_string">
-<description>
-
-</description>
-<parameters>
-<parameter name="type">
-<parameter_description> Type to convert from.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the string representing the given #GType.
-</return>
-</function>
-
-<function name="gda_binary_free">
-<description>
-Deallocates all memory associated to the given #GdaBinary.
-
-</description>
-<parameters>
-<parameter name="boxed">
-<parameter_description> #GdaBinary to free.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_dict_get_handler">
-<description>
-Obtain a pointer to a #GdaDataHandler which can convert #GValue values of type @for_type.
-
-Unlike the gda_dict_get_default_handler() method, this method asks the provider (for
-the connection assigned to @dict using gda_dict_set_connection()) if there is any.
-
-It fallbacks to the same data handler as
-gda_dict_get_default_handler() if no connection has been assigned, or if the assigned&apos;d provider
-offers no data handler for that type.
-
-The returned pointer is %NULL if there is no data handler available for the @for_type type.
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="for_type">
-<parameter_description> a #GType type
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #GdaDataHandler
-</return>
-</function>
-
-<function name="gda_data_handler_get_sql_from_value">
-<description>
-Creates a new string which is an SQL representation of the given value. If the value is NULL or
-is of type GDA_TYPE_NULL, the returned string is NULL.
-
-
-</description>
-<parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value to be converted to a string
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new string.
-</return>
-</function>
-
-<function name="gda_data_access_wrapper_get_type">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return> the #GType of GdaDataAccessWrapper.
-</return>
-</function>
-
-<function name="gda_object_ref_set_ref_name">
-<description>
-Sets the type and XML Id of the object we want to reference. If any other object was already
-referenced @ref is first reinitialized
-
-Rem: the name format is dependant on the type of object which is requested
-
-</description>
-<parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
-</parameter_description>
-</parameter>
-<parameter name="ref_type">
-<parameter_description> the requested referenced object&apos;s data type, or 0 if not specified and @type = REFERENCE_BY_XML_ID
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> how to interpret the @name argument
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the requested object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_dict_database_get_type">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return> the type id
-</return>
-</function>
-
-<function name="gda_connection_set_dsn">
-<description>
-Sets the data source of the connection. If the connection is already opened,
-then no action is performed at all and FALSE is returned.
-
-If the requested datasource does not exist, then nothing is done and FALSE
-is returned.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-<parameter name="datasource">
-<parameter_description> a gda datasource
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE on success
-</return>
-</function>
-
-<function name="gda_parameter_get_bind_param">
-<description>
-Get the parameter which makes @param change its value when the param&apos;s value is changed.
-
-
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GdaParameter or %NULL
-</return>
-</function>
-
-<function name="gda_connection_event_get_gda_code">
-<description>
-Retreive the code associated to @event.
-
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GdaConnectionEventCode event&apos;s code
-</return>
-</function>
-
-<function name="gda_delimiter_parse_copy_statement">
-<description>
-makes a copy of @statement
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_get_condition">
-<description>
-Get the query&apos;s associated condition
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GdaQueryCondition object
-</return>
-</function>
-
-<function name="gda_query_join_get_condition">
-<description>
-Get the join&apos;s associated condition
-
-
-</description>
-<parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GdaQueryCondition object
-</return>
-</function>
-
-<function name="gda_threader_start_thread">
-<description>
-
-
-
-</description>
-<parameters>
-<parameter name="thread">
-<parameter_description> a #GdaThreader object
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to be called in the newly created thread
-</parameter_description>
-</parameter>
-<parameter name="func_arg">
-<parameter_description> @func&apos;s argument
-</parameter_description>
-</parameter>
-<parameter name="ok_callback">
-<parameter_description> callback called when @func terminates
-</parameter_description>
-</parameter>
-<parameter name="cancel_callback">
-<parameter_description> callback called when @func terminates and the job has been cancelled
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> place to store an error when creating the thread or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> the id of the new job executed in another thread.
-</return>
-</function>
-
-<function name="gda_connection_set_username">
-<description>
-Sets the user name for the connection. If the connection is already opened,
-then no action is performed at all and FALSE is returned.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE on success
-</return>
-</function>
-
-<function name="gda_value_set_time">
-<description>
-Stores @val into @value.
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_object_ref_get_ref_name">
-<description>
-Get the caracteristics of the requested object
-
-
-</description>
-<parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
-</parameter_description>
-</parameter>
-<parameter name="ref_type">
-<parameter_description> where to store the requested referenced object&apos;s data type, or NULL
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> where to store how to interpret the returned name, or NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> the name of the object (to be interpreted with @type)
-</return>
-</function>
-
-<function name="gda_quark_list_new">
-<description>
-Creates a new #GdaQuarkList, which is a set of key-&amp;gt;value pairs,
-very similar to GLib&apos;s GHashTable, but with the only purpose to
-make easier the parsing and creation of data source connection
-strings.
-
-
-</description>
-<parameters>
-</parameters>
-<return> the newly created #GdaQuarkList.
-</return>
-</function>
-
-<function name="gda_server_operation_save_data_to_xml">
-<description>
-Creates a new #xmlNodePtr tree which can be used to save the #op object. This
-XML structure can then be saved to disk if necessary. Use xmlFreeNode to free
-the associated memory when not needed anymore.
-
-
-</description>
-<parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #xmlNodePtr structure, or %NULL
-</return>
-</function>
-
-<function name="gda_data_model_index_set_table_name">
-<description>
-Sets the table name of @dmi to @table_name.
-
-</description>
-<parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the new name of @dmi.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_move_iter_at_row">
-<description>
-Sets @iter to represent the @row row. @iter must be a valid iterator object obtained
-using the gda_data_model_create_iter() method.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> row number.
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
-
-<function name="gda_column_get_unique_key">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-</parameters>
-<return> whether if the given column is an unique key (%TRUE or %FALSE).
-</return>
-</function>
-
-<function name="gda_dict_field_set_default_value">
-<description>
-Sets (or replace) the default value for the field. WARNING: the default value&apos;s data type can be
-different from the field&apos;s data type (this is the case for example if the default value is a 
-function like Postgres&apos;s default value for the SERIAL data type).
-
-</description>
-<parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a #GValue value or NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_model_get_value_at">
-<description>
-Retrieves the data stored in the given position (identified by
-the @col and @row parameters) on a data model.
-
-This is the main function for accessing data in a model.
-
-Note that the returned #GValue must not be modified directly (unexpected behaviours may
-occur if you do so). If you want to
-modify a value stored in a #GdaDataModel, use the gda_data_model_set_value() method.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> a valid column number.
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> a valid row number.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #GValue containing the value stored in the given
-position, or %NULL on error (out-of-bound position, etc).
-</return>
-</function>
-
-<function name="gda_data_model_describe_column">
-<description>
-Queries the underlying data model implementation for a description
-of a given column. That description is returned in the form of
-a #GdaColumn structure, which contains all the information
-about the given column in the data model.
-
-WARNING: the returned #GdaColumn object belongs to the @model model and
-and should not be destroyed; any modification will impact the whole data model.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> column number.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the description of the column.
-</return>
-</function>
-
-<function name="gda_sql_transaction_parse_with_error">
-<description>
-Generate in memory a structure of the @sqlquery in an easy
-to view way.  You can also modify the returned structure and
-regenerate the sql query using sql_stringify().  The structure
-contains information on what type of sql statement it is, what
-tables its getting from, what fields are selected, the where clause,
-joins etc.
-
-
-</description>
-<parameters>
-<parameter name="sqlquery">
-<parameter_description> A SQL query string. ie SELECT * FROM FOO
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place where to store an error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> A generated sql_statement or %NULL on error.
-</return>
-</function>
-
-<function name="gda_connection_event_get_event_type">
-<description>
-Get @event&apos;s severity (from a simple notice to a fatal event)
-
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the event type
-</return>
-</function>
-
-<function name="gda_data_proxy_get_proxied_model">
-<description>
-Fetch the #GdaDataModel which @proxy does proxy
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the proxied data model
-</return>
-</function>
-
-<function name="The">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="the">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_connection_get_cnc_string">
-<description>
-Gets the connection string used to open this connection.
-
-The connection string is the string sent over to the underlying
-database provider, which describes the parameters to be used
-to open a connection on the underlying data source.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the connection string used when opening the connection.
-</return>
-</function>
-
-<function name="gda_data_model_query_compute_modification_queries">
-<description>
-Try to compute the INSERT, DELETE and UPDATE queries; any previous modification query
-will be discarded.
-
-If specified, the table which will be updated is the one represented by the @target.
-
-If @target is %NULL, then an error will be returned if @model&apos;s SELECT query has more than
-one target.
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a GdaDataModelQuery object
-</parameter_description>
-</parameter>
-<parameter name="target">
-<parameter_description> the target table to modify, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> options to specify how the queries must be built in some special cases
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if the INSERT, DELETE and UPDATE queries have been computed.
-</return>
-</function>
-
-<function name="gda_graphviz_new">
-<description>
-Creates a new #GdaGraphviz object
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_dict_constraint_fkey_get_actions">
-<description>
-Get the actions undertaken by the DBMS when some actions occur on the referenced data
-
-</description>
-<parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-<parameter name="on_update">
-<parameter_description> an address to store the action undertaken when an UPDATE occurs
-</parameter_description>
-</parameter>
-<parameter name="on_delete">
-<parameter_description> an address to store the action undertaken when a DELETE occurs
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_field_new_copy">
-<description>
-This is a copy constructor
-
-
-</description>
-<parameters>
-<parameter name="orig">
-<parameter_description> a #GdaQueryField to copy
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_data_proxy_get_proxied_model_n_rows">
-<description>
-Get the number of rows in the proxied data model
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of rows, or -1 if the number of rows is not known
-</return>
-</function>
-
-<function name="gda_data_proxy_get_values">
-<description>
-Retreive a whole list of values from the @proxy store. This function calls gda_data_proxy_get_value()
-for each column index specified in @cols_index, and generates a #GSlist on the way.
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-<parameter name="proxy_row">
-<parameter_description> a proxy row
-</parameter_description>
-</parameter>
-<parameter name="cols_index">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="n_cols">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new list of values (the list must be freed, not the values), or %NULL if an error occurred
-</return>
-</function>
-
-<function name="gda_dict_constraint_new_with_db">
-<description>
-Creates a new #GdaDictConstraint object without specifying anything about the
-constraint except the database it is attached to. This is usefull only
-when the object is going to be loaded from an XML node.
-
-
-</description>
-<parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new uninitialized object
-</return>
-</function>
-
-<function name="gda_xml_storage_load_from_xml">
-<description>
-Updates the object with data stored in the XML node. The object MUST already
-exist and be of the correct type before calling this function. 
-This is a virtual function.
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaXmlStorage interface
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> an XML node from an XML structure
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred.
-</return>
-</function>
-
-<function name="gda_value_set_binary">
-<description>
-Stores @val into @value.
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="binary">
-<parameter_description> a #GdaBinary structure with the data and its size to be stored in @value.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_dict_constraint_pkey_get_fields">
-<description>
-Get the list of fields composing the primary key constraint which @cstr represents. The
-returned list is allocated and must be de-allocated by the caller.
-
-
-</description>
-<parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new list of fields
-</return>
-</function>
-
-<function name="gda_config_remove_data_source">
-<description>
-Removes the given data source from the GDA configuration.
-
-</description>
-<parameters>
-<parameter name="name">
-<parameter_description> name for the data source to be removed.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_execute_sql_command">
-<description>
-This is a convenient function to execute a SQL command over the opened connection.
-
-
-</description>
-<parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
-</parameter_description>
-</parameter>
-<parameter name="sql">
-<parameter_description> a query statament must begin with &quot;SELECT&quot;
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of rows impacted or -1.
-</return>
-</function>
-
-<function name="gda_connection_change_database">
-<description>
-Changes the current database for the given connection. This operation
-is not available in all providers.
-
-
-</description>
-<parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name of database to switch to.
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if successful, %FALSE otherwise.
-</return>
-</function>
-
-<function name="gda_column_get_default_value">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-</parameters>
-<return> @column&apos;s default value, as a #GValue object.
-</return>
-</function>
-
-<function name="gda_dict_database_stop_update_dbms_data">
-<description>
-When the database updates its internal lists of DBMS objects, a call to this function will 
-stop that update process. It has no effect when the database is not updating its DBMS data.
-
-</description>
-<parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_connection_get_type">
-<description>
-Registers the #GdaConnection class on the GLib type system.
-
-
-</description>
-<parameters>
-</parameters>
-<return> the GType identifying the class.
-</return>
-</function>
-
-<function name="gda_data_model_index_new">
-<description>
-
-</description>
-<parameters>
-</parameters>
-<return> a newly allocated #GdaDataModelIndex object.
-</return>
-</function>
-
-<function name="gda_open_connection">
-<description>
-Convenient function to open a connection to a Data Source, 
-see also gda_client_open_connection().
-
-
-</description>
-<parameters>
-<parameter name="dsn">
-<parameter_description> a data source name
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="password">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #GdaConnection object if the connection was sucessfully opened, %NULL otherwise
-</return>
-</function>
-
-<function name="gda_query_append_condition">
-<description>
-Appends the @cond object to @query&apos;s condition. If @query does not yet
-have any condition, then the result is the same as gda_query_set_condition();
-otherwise, @cond is added to @query&apos;s condition, using the AND operator
-if @append_as_and is TRUE, and an OR operator if @append_as_and is FALSE.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="cond">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="append_as_and">
-<parameter_description> mode of append if there is already a query condition
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_server_provider_get_version">
-<description>
-Get the version of the given provider.
-
-
-</description>
-<parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a string containing the version identification.
-</return>
-</function>
-
-<function name="gda_query_target_new">
-<description>
-Creates a new #GdaQueryTarget object, specifying the name of the table to reference.
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="table">
-<parameter_description> the name of the table to reference
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_dict_database_get_dict">
-<description>
-Fetch the GdaDict object to which the GdaDictDatabase belongs.
-
-
-</description>
-<parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the GdaDict object
-</return>
-</function>
-
-<function name="gda_entity_has_field">
-<description>
-Tells if @field belongs to the @iface entity
-
-
-</description>
-<parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> an object implementing the #GdaEntityField interface
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @field belongs to the @iface entity
-</return>
-</function>
-
-<function name="gda_quark_list_clear">
-<description>
-Removes all strings in the given #GdaQuarkList.
-
-</description>
-<parameters>
-<parameter name="qlist">
-<parameter_description> a #GdaQuarkList.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_data_proxy_get_n_new_rows">
-<description>
-Get the number of rows which have been added to @proxy and which are not part of
-the proxied data model.
-
-
-</description>
-<parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the number of new rows
-</return>
-</function>
-
-<function name="gda_query_field_get_parameters">
-<description>
-Get a list of all the parameters needed to @qfield to be
-rendered as a valid statement
-
-
-</description>
-<parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new list of parameters for @qfield
-</return>
-</function>
-
-<function name="gda_data_model_to_xml_node">
-<description>
-Converts a #GdaDataModel into a xmlNodePtr (as used in libxml).
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="cols">
-<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
-</parameter_description>
-</parameter>
-<parameter name="nb_cols">
-<parameter_description> the number of columns in @cols
-</parameter_description>
-</parameter>
-<parameter name="rows">
-<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
-</parameter_description>
-</parameter>
-<parameter name="nb_rows">
-<parameter_description> the number of rows in @rows
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> name to use for the XML resulting table.
-</parameter_description>
-</parameter>
-</parameters>
-<return> a xmlNodePtr representing the whole data model.
-</return>
-</function>
-
-<function name="gda_query_is_select_query">
-<description>
-Tells if @query is a SELECTION query (a simple SELECT, UNION, INTERSECT or EXCEPT);
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a # GdaQuery object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @query is a selection query
-</return>
-</function>
-
-<function name="gda_data_model_row_inserted">
-<description>
-Emits the &apos;row_inserted&apos; and &apos;changed&apos; signals on @model.
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> row number.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_handler_time_new_no_locale">
-<description>
-Creates a data handler for time values, but using the default C locale
-instead of the current user locale.
-
-
-</description>
-<parameters>
-</parameters>
-<return> the new object
-</return>
-</function>
-
-<function name="gda_server_provider_string_to_value">
-<description>
-Use @provider to create a new #GValue from a single string representation. 
-
-The @prefered_type can optionnaly ask @provider to return a #GValue of the requested type 
-(but if such a value can&apos;t be created from @string, then %NULL is returned); 
-pass G_TYPE_INVALID if any returned type is acceptable.
-
-The returned value is either a new #GValue or %NULL in the following cases:
-- @string cannot be converted to @prefered_type type
-- the provider does not handle @prefered_type
-- the provider could not make a #GValue from @string
-
-
-</description>
-<parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the SQL string to convert to a value
-</parameter_description>
-</parameter>
-<parameter name="prefered_type">
-<parameter_description> a #GType
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GValue, or %NULL
+<return> the name of @column.
 </return>
 </function>
 
-<function name="gda_server_provider_change_database">
+<function name="gda_connection_close_no_warning">
 <description>
-Proxy the call to the change_database method on the
- &quot; #GdaServerProvider class to the corresponding provider.
-
+Closes the connection to the underlying data source, without emiting any warning signal.
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
-</parameter_description>
-</parameter>
 <parameter name="cnc">
 <parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> database name.
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if successful, %FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_aggregate_get_ret_dict_type">
+<function name="gda_vconnection_hub_add">
 <description>
-To consult the return type of a aggregate.
+Make all the tables of @cnc appear as tables (of the same name) in the @hub connection.
+If the @ns is not %NULL, then within @hub, the tables will be accessible using the &apos;@ns  table_name&apos;
+notation.
+
+Within any instance of @hub, there can be only one added connection where @ns is %NULL.
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
+<parameter name="hub">
+<parameter_description> a #GdaVconnectionHub connection
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection
+</parameter_description>
+</parameter>
+<parameter name="ns">
+<parameter_description> a namespace, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDictType object.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_get_database">
+<function name="gda_sql_expr_free">
 <description>
-Fetch a pointer to the GdaDictDatabase used by the GdaDict object.
+Frees a #GdaSqlExpr structure and its members.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the GdaDictDatabase
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_is_updatable">
+<function name="gda_data_proxy_get_sample_size">
 <description>
-Tells if @model can be modified
+Get the size of each chunk of data displayed at a time.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @model can be modified
+<return> the chunk (or sample) size, or 0 if chunking is disabled.
 </return>
 </function>
 
-<function name="gda_connection_add_event_string">
+<function name="gda_value_set_timestamp">
 <description>
-Adds a new error to the given connection object. This is just a convenience
-function that simply creates a #GdaConnectionEvent and then calls
-#gda_server_connection_add_error.
-
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaServerConnection object.
-</parameter_description>
-</parameter>
-<parameter name="str">
-<parameter_description> a format string (see the printf(3) documentation).
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the arguments to insert in the error message.
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaConnectionEvent object, however the caller does not hold a reference to the returned
-object, and if need be the caller must call g_object_ref() on it.
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_declare_invalid">
+<function name="gda_get_default_handler">
 <description>
-Forces a parameter to be invalid; to set it valid again, a new value must be assigned
-to it using gda_parameter_set_value().
+Obtain a pointer to a #GdaDataHandler which can manage #GValue values of type @for_type. The returned
+data handler will be adapted to use the current locale information (for example dates will be formatted
+taking into accoutn the locale).
+
+The returned pointer is %NULL if there is no default data handler available for the @for_type data type
+
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="for_type">
+<parameter_description> a #GType type
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GdaDataHandler which must not be modified or destroyed.
+</return>
 </function>
 
-<function name="gda_query_del_param_source">
+<function name="gda_connection_add_event">
 <description>
-Tells @query that it should no longer take care of @param_source.
-The parameters which depend on @param_source will still depend on it, though.
+Adds an event to the given connection. This function is usually
+called by providers, to inform clients of events that happened
+during some operation.
+
+As soon as a provider (or a client, it does not matter) calls this
+function with an @event object which is an error,
+the connection object emits the &quot;error&quot; signal, to which clients can connect to be
+informed of events.
+
+WARNING: the reference to the @event object is stolen by this function!
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="param_source">
-<parameter_description> a #GdaDataModel object
+<parameter name="event">
+<parameter_description> is stored internally, so you don&apos;t need to unref it.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_client_open_connection">
+<function name="gda_xa_transaction_commit">
 <description>
-This function is the way of opening database connections with libgda.
-
-Establishes a connection to a data source. The connection will be opened
-if no identical connection is available in the #GdaClient connection pool,
-and re-used if available. If you dont want to share the connection,
-specify #GDA_CONNECTION_OPTIONS_DONT_SHARE as one of the flags in
-the @options parameter.
-
-The username and password used to actually open the connection are the first
-non-NULL string being chosen by order from
+Commits a distributed transaction (managed by @xa_trans). The commit is composed of two phases:
 &amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;the @username or @password&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;the username or password sprcified in the DSN definition&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;the USERNAME= and PASSWORD= parts of the connection string in the DSN definition&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a PREPARE phase where all the connections are required to store their transaction data to a 
+permanent place (to be able to complete the commit should a problem occur afterwards)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a COMMIT phase where the transaction data is actually written to the database&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
 &amp;lt;/itemizedlist&amp;gt;
 
+If the PREPARE phase fails for any of the connection registered with @xa_trans, then the distributed commit
+fails and FALSE is returned. During the COMMIT phase, some commit may actually fail but the transaction can
+still be completed because the PREPARE phase succeeded (through the recover method).
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
 </parameter_description>
 </parameter>
-<parameter name="dsn">
-<parameter_description> data source name.
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description> user name or %NULL
-</parameter_description>
-</parameter>
-<parameter name="password">
-<parameter_description> password for @username, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> options for the connection (see #GdaConnectionOptions).
+<parameter name="cnc_to_recover">
+<parameter_description> a place to store the list of connections for which the commit phase failed, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the opened connection if successful, %NULL if there is
-an error.
+<return> TRUE if no error occurred (there may be some connections to recover, though)
 </return>
 </function>
 
-<function name="gda_column_set_allow_null">
+<function name="gda_data_proxy_get_sample_start">
 <description>
-Sets the &apos;allow null&apos; flag of the given column.
+Get the row number of the first row to be displayed.
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="allow">
-<parameter_description> whether the given column should allows null values or not.
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of the first row being displayed.
+</return>
 </function>
 
-<function name="gda_connection_execute_command">
+<function name="gda_vconnection_hub_get_connection">
 <description>
-If you know what to expect from @command (ie if you know it contains a query which will return
-a data set or a query which will not return a data set) and if @command contains only one query,
-then you should use
-gda_connection_execute_select_command() and gda_connection_execute_non_select_command() which are easier
-to use.
-
-This function provides the way to send several commands
-at once to the data source being accessed by the given
-#GdaConnection object. The #GdaCommand specified can contain
-a list of commands in its &quot;text&quot; property (usually a set
-of SQL commands separated by &apos;;&apos;).
-
-The return value is a GList of #GdaDataModel&apos;s, and #GdaParameterList which you
-are responsible to free when not needed anymore (and unref the
-data models and parameter lists when they are not used anymore). See the documentation
-of gda_server_provider_execute_command() for more information about the returned list.
-
-The @params can contain the following parameters:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a &quot;ITER_MODEL_ONLY&quot; parameter of type #G_TYPE_BOOLEAN which, if set to TRUE
-will preferably return a data model which can be accessed only using an iterator.&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Find the #GdaConnection object in @hub associated to the @ns name space
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="hub">
+<parameter_description> a #GdaVconnectionHub connection
 </parameter_description>
 </parameter>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="ns">
+<parameter_description> a name space, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> parameter list for the commands
+</parameters>
+<return> the #GdaConnection, or %NULL if no connection is associated to @ns
+</return>
+</function>
+
+<function name="gda_string_to_blob">
+<description>
+Performs the reverse of gda_blob_to_string().
+
+
+</description>
+<parameters>
+<parameter name="str">
+<parameter_description> a string to convert
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="blob">
+<parameter_description> a non filled @GdaBlob structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of #GdaDataModel and #GdaParameterList or %NULL, as returned by the underlying
-provider, or %NULL if an error occurred.
+<return> TRUE if no error were found in @str, or FALSE otherwise
 </return>
 </function>
 
-<function name="gda_entity_field_get_g_type">
+<function name="gda_value_new_blob">
 <description>
-Get the gda type of the object implementing the #GdaEntityField interface
+Makes a new #GValue of type #GDA_TYPE_BLOB with value @val.
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaEntityField interface
+<parameter name="val">
+<parameter_description> value to set for the new #GValue.
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the size of the memory pool pointer to by @val.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the corresponding #GType or #G_TYPE_INVALID if the gda type is unknown
+<return> the newly created #GValue.
 </return>
 </function>
 
-<function name="gda_data_model_hash_get_type">
+<function name="gda_holder_get_not_null">
 <description>
+Get wether the holder can be NULL or not
+
 
 </description>
 <parameters>
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
+</parameter_description>
+</parameter>
 </parameters>
-<return> the #GType of GdaDataModelHash.
+<return> TRUE if the holder cannot be NULL
 </return>
 </function>
 
-<function name="gda_connection_execute_select_command">
+<function name="gda_blob_op_read">
 <description>
-Executes a selection command on the given connection.
-
-This function returns a #GdaDataModel resulting from the SELECT statement, or %NULL
-if an error occurred.
-
-Note that no check is made regarding the actual number of statements in @cmd or if it really contains a SELECT
-statement. This function is just a convenience function around the gda_connection_execute_command()
-function. If @cmd contains several statements, the last #GdaDataModel is returned.
-
-See the documentation of the gda_connection_execute_command() for information
-about the @params list of parameters.
+Reads a chunk of bytes from the BLOB into @blob.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="op">
+<parameter_description> a #GdaBlobOp
 </parameter_description>
 </parameter>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="blob">
+<parameter_description> a #GdaBlob to read data to
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> parameter list for the command
+<parameter name="offset">
+<parameter_description> offset to read from the start of the blob (starts at 0)
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="size">
+<parameter_description> maximum number of bytes to read.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDataModel containing the data returned by the
-data source, or %NULL if an error occurred
+<return> the number of bytes actually read. In case of error, -1 is returned and the
+provider should have added an error to the connection.
 </return>
 </function>
 
-<function name="gda_data_model_index_get_primary_key">
+<function name="gda_value_differ">
 <description>
+Tells if two values are equal or not, by comparing memory representations. Unlike gda_value_compare(),
+the returned value is boolean, and gives no idea about ordering.
+
+The two values must be of the same type, with the exception that a value of any type can be
+compared to a GDA_TYPE_NULL value, specifically:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 and @value2 are both GDA_TYPE_NULL values then the returned value is 0&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 is a GDA_TYPE_NULL value and @value2 is of another type then the returned value is 1&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 is of another type and @value2 is a GDA_TYPE_NULL value then the returned value is 1&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;in all other cases, @value1 and @value2 must be of the same type and their values are compared&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a @GdaDataModelIndex.
+<parameter name="value1">
+<parameter_description> a #GValue to compare.
+</parameter_description>
+</parameter>
+<parameter name="value2">
+<parameter_description> the other #GValue to be compared to @value1.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if primary key.
+<return> a non 0 value if @value1 and @value2 differ, and 0 if they are equal
 </return>
 </function>
 
-<function name="gda_command_get_command_type">
+<function name="gda_sql_table_copy">
 <description>
-Gets the command type of @cmd.
+Creates a new #GdaSqlTable structure initated with the values stored in @table.
 
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="table">
+<parameter_description> a #GdaSqlTable structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the command type of @cmd.
+<return> a new #GdaSqlTable structure.
 </return>
 </function>
 
-<function name="gda_parameter_list_new_inline">
+<function name="gda_connection_is_opened">
 <description>
-Creates a new #GdaParameterList containing parameters defined by each serie in @...
-For each triplet, the value must be of the correct type (gchar * if type is G_STRING, ...)
+Checks whether a connection is open or not.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a serie of a (const gchar*) name, (GType) type, and value, terminated by a %NULL
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaParameterList object
+<return> %TRUE if the connection is open, %FALSE if it&apos;s not.
 </return>
 </function>
 
-<function name="gda_query_field_value_get_parameter_index">
+<function name="gda_sqlite_handler_bin_new">
 <description>
-Get the index of @field in the query it belongs, among all the parameters.
+Creates a data handler for binary values
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
 </parameters>
-<return> the index (starting at 1), or -1 if @field is not a parameter field.
+<return> the new object
 </return>
 </function>
 
-<function name="gda_query_field_value_restrict">
+<function name="gda_set_remove_holder">
 <description>
-Restricts the possible values which @field can have among the calues stored in
- model at column @col.
-
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> a valid column in @model
+<parameter name="set">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="holder">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_column_get_table">
+<function name="gda_connection_get_transaction_status">
 <description>
+Get the status of @cnc regarding transactions. The returned object should not be modified
+or destroyed; however it may be modified or destroyed by the connection itself.
 
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the name of the table to which this column belongs.
-</return>
-</function>
-
-<function name="gda_dict_field_new">
-<description>
-Creates a new GdaDictField object
+If %NULL is returned, then no transaction has been associated with @cnc
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description>  a #GdaDictType object (the field&apos;s type)
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a #GdaTransactionStatus object, or %NULL
 </return>
 </function>
 
-<function name="gda_query_get_fields_by_target">
+<function name="gda_meta_struct_sort_db_objects">
 <description>
-Get a list of all the #GdaQueryField objects in @query which depent on the existance of 
- target 
+Reorders the list of database objects within @mstruct in a way specified by @sort_type.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object representing a target in @query
+<parameter name="sort_type">
+<parameter_description> the kind of sorting requested
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaQueryField objects
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_query_field_set_internal">
+<function name="gda_binary_free">
 <description>
-Sets weather @qfield is internal or not. Internal fields in a query are fields added
-or changed by libgnomedb itself, such fields may or may not be visible.
+Deallocates all memory associated to the given #GdaBinary.
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
-</parameter_description>
-</parameter>
-<parameter name="internal">
-<parameter_description>
+<parameter name="boxed">
+<parameter_description> #GdaBinary to free.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_database_get_all_fk_constraints">
+<function name="gda_sql_parser_parse_string_as_batch">
 <description>
-Get a list of all the constraints applied to the database which represent a foreign constrains. 
-Constraints are represented as #GdaDictConstraint objects.
+Parse @sql and creates a #GdaBatch object which contains all the #GdaStatement objects created while parsing (one object
+per SQL statement). Empty statements (composed of spaces only) do not appear in the resulting object.
+
+ sql is parsed and #GdaStatement objects are created as long as no error is found in @sql. If an error is found 
+at some point, then the parsing stops and @remain may contain a non %NULL pointer, @error may be set, and %NULL
+is returned.
+
+if @sql is %NULL, then the returned #GdaBatch object will contain no statement.
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
+</parameter_description>
+</parameter>
+<parameter name="sql">
+<parameter_description> the SQL string to parse
+</parameter_description>
+</parameter>
+<parameter name="remain">
+<parameter_description> location to store a pointer to remaining part of @sql in case an error occurred while parsing @sql, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of the constraints
+<return> a new #GdaBatch object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_column_index_set_defined_size">
+<function name="gda_data_handler_get_sql_from_value">
 <description>
-Sets the defined size of a #GdaColumnIndex.
+Creates a new string which is an SQL representation of the given value. If the value is NULL or
+is of type GDA_TYPE_NULL, the returned string is NULL.
+
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the defined size we want to set.
+<parameter name="value">
+<parameter_description> the value to be converted to a string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the new string.
+</return>
 </function>
 
-<function name="gda_object_set_owner">
+<function name="gda_connection_add_event_string">
 <description>
-Sets the owner of the GdaObject object. If the owner is changed, then the 
-&quot;owner_changed&quot; signal is emitted.
+Adds a new error to the given connection object. This is just a convenience
+function that simply creates a #GdaConnectionEvent and then calls
+#gda_server_connection_add_error.
 
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="owner">
-<parameter_description> 
+<parameter name="str">
+<parameter_description> a format string (see the printf(3) documentation).
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_query_get_sql_text">
-<description>
-Obtain a new string representing the SQL version of the query.
-
-WARNING: the returned SQL statement may contain some extensions which allow for the definition of
-variables (see the introduction to the #GdaQuery for more information). As such the returned SQL cannot
-be executed as it may provoque errors. To get an executable statement, use the #GdaRenderer interface&apos;s
-methods.
-
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="Varargs">
+<parameter_description> the arguments to insert in the error message.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new string
+<return> a new #GdaConnectionEvent object, however the caller does not hold a reference to the returned
+object, and if need be the caller must call g_object_ref() on it.
 </return>
 </function>
 
-<function name="gda_dict_database_get_all_constraints">
+<function name="gda_data_access_wrapper_get_type">
 <description>
-Get a list of all the constraints applied to the database. Constraints are represented
-as #GdaDictConstraint objects and represent any type of constraint.
-
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new list of the constraints
+<return> the #GType of GdaDataAccessWrapper.
 </return>
 </function>
 
-<function name="gda_config_get_type">
+<function name="gda_data_handler_get_g_type_index">
 <description>
-Gets a string representing the type of the value of the given key.
-The caller is responsible of freeing the returned value.
+Get the GType handled by the GdaDataHandler, at the given position (starting at zero).
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration key.
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
+</parameter_description>
+</parameter>
+<parameter name="index">
+<parameter_description> 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %NULL if not found. Otherwise: &quot;string&quot;, &quot;float&quot;, &quot;long&quot;, &quot;bool&quot;.
+<return> the GType
 </return>
 </function>
 
-<function name="gda_client_find_connection">
+<function name="gda_column_set_attribute">
 <description>
-Looks for an open connection given a data source name (per libgda
-configuration), a username and a password.
+Set the value associated to a named attribute.
 
-This function iterates over the list of open connections in the
-given #GdaClient and looks for one that matches the given data source
-name, username and password.
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
+If there is already an attribute named @attribute set, then its value is replaced with the new @value, 
+except if @value is %NULL, in which case the attribute is removed.
 
+Warning: @sttribute should be a static string (no copy of it is made), so the string should exist as long as the @column
+object exists.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="dsn">
-<parameter_description> data source name.
+<parameter name="column">
+<parameter_description> a #GdaColumn
 </parameter_description>
 </parameter>
-<parameter name="username">
-<parameter_description> user name.
+<parameter name="attribute">
+<parameter_description> attribute name as a static string
 </parameter_description>
 </parameter>
-<parameter name="password">
-<parameter_description> password for @username.
+<parameter name="value">
+<parameter_description> a #GValue, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the found connection, or %NULL if it could not
-be found.
-</return>
+<return></return>
 </function>
 
-<function name="gda_g_type_from_string">
+<function name="gda_lockable_lock">
 <description>
+Locks @lockable. If it is already locked by another thread, the current thread will block until it is unlocked 
+by the other thread.
 
-</description>
-<parameters>
-<parameter name="str">
-<parameter_description> the name of a #GType, as returned by gda_g_type_to_string().
-</parameter_description>
-</parameter>
-</parameters>
-<return> the #GType represented by the given @str.
-</return>
-</function>
-
-<function name="gda_query_get_targets">
-<description>
-Get a list of all the targets used in @query
+This function can be used even if g_thread_init() has not yet been called, and, in that case, will do nothing.
 
+Note: unlike g_mutex_lock(), this method recursive, which means a thread can lock @lockable several times 
+(and has to unlock it as many times to actually unlock it).
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="lockable">
+<parameter_description> a #GdaLockable object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of the targets
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_index_get_column_index_list">
+<function name="which">
 <description>
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
 </parameters>
-<return> @dmi&apos;s list of #GdaColumnIndex.
-</return>
+<return></return>
 </function>
 
-<function name="gda_column_index_equal">
+<function name="gda_rfc1738_decode">
 <description>
-Tests whether two field attributes are equal.
+Decodes @string using the RFC 1738 recommendations: the
+&amp;lt;constant&amp;gt;&amp;lt;&amp;gt;&amp;quot;#%{}|\^~[]&amp;apos;`;/?:@=&amp;amp;&amp;lt;/constant&amp;gt; and space characters are replaced by 
+&amp;lt;constant&amp;gt;&amp;quot;%%ab&amp;quot;&amp;lt;/constant&amp;gt; where
+&amp;lt;constant&amp;gt;ab&amp;lt;/constant&amp;gt; is the hexadecimal number corresponding to the character.
+
+ string should respect the RFC 1738 encoding. If this is not the case (for example if there
+is a &quot;%2z&quot; because 2z is not an hexadecimal value), then the part with the problem
+is not decoded, and the function returns FALSE.
+
+ string is decoded in place, no new string gets created.
 
 
 </description>
 <parameters>
-<parameter name="lhs">
-<parameter_description> a #GdaColumnIndex
-</parameter_description>
-</parameter>
-<parameter name="rhs">
-<parameter_description> another #GdaColumnIndex
+<parameter name="string">
+<parameter_description> a string to encode 
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the field attributes contain the same information.
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_query_field_func_get_ref_func">
+<function name="gda_data_select_get_connection">
 <description>
-Get the name of the function which @func represents
+Get a pointer to the #GdaConnection object which was used when @model was created
+(and which may be used internally by @model).
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaQueryFieldFunc object
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
 </parameter_description>
 </parameter>
 </parameters>
-<return> the function name
+<return> a pointer to the #GdaConnection, or %NULL
 </return>
 </function>
 
-<function name="gda_data_model_get_attributes_at">
+<function name="gda_statement_normalize">
 <description>
-Get the attributes of the value stored at (row, col) in @proxy, which
-is an ORed value of #GdaValueAttribute flags. As a special case, if
- row is -1, then the attributes returned correspond to a &quot;would be&quot; value
-if a row was added to @model.
+&quot;Normalizes&quot; some parts of @stmt, see gda_sql_statement_normalize() for more
+information.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
-<parameter name="col">
-<parameter_description> a valid column number
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> a valid row number, or -1
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the attributes as an ORed value of #GdaValueAttribute
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_server_provider_open_connection">
+<function name="gda_threader_start_thread">
 <description>
-Tries to open a new connection on the given #GdaServerProvider
-object.
+
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
+<parameter name="thread">
+<parameter_description> a #GdaThreader object
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="func">
+<parameter_description> the function to be called in the newly created thread
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description>
+<parameter name="func_arg">
+<parameter_description> @func&apos;s argument
+</parameter_description>
+</parameter>
+<parameter name="ok_callback">
+<parameter_description> callback called when @func terminates
 </parameter_description>
 </parameter>
-<parameter name="username">
-<parameter_description> user name for logging in.
+<parameter name="cancel_callback">
+<parameter_description> callback called when @func terminates and the job has been cancelled
 </parameter_description>
 </parameter>
-<parameter name="password">
-<parameter_description> password for authentication.
+<parameter name="error">
+<parameter_description> place to store an error when creating the thread or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly-allocated #GdaServerConnection object, or NULL
-if it fails.
+<return> the id of the new job executed in another thread.
 </return>
 </function>
 
-<function name="gda_connection_get_provider">
+<function name="gda_value_set_time">
 <description>
-Gets the provider id that this connection is connected to.
-
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the provider ID used to open this connection.
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_list_is_valid">
+<function name="gda_connection_get_events">
 <description>
-Tells if all the paramlist&apos;s parameters have valid data
+Retrieves a list of the last errors occurred during the connection. The returned list is
+chronologically ordered such as that the most recent event is the #GdaConnectionEvent of the first node.
+
+Warning: the @cnc object may change the list if connection events occur
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the paramlist is valid
+<return> a GList of #GdaConnectionEvent objects (the list should not be modified)
 </return>
 </function>
 
-<function name="gda_config_get_provider_model">
+<function name="gda_sql_identifier_remove_quotes">
 <description>
-Fills and returns a new #GdaDataModel object using information from all 
-providers which are currently installed in the system.
-
-Rows are separated in 3 columns: 
-&apos;Id&apos;, &apos;Location&apos; and &apos;Description&apos;. 
+Prepares @str to be compared:
+- if surrounded by double quotes, then just remove the quotes
+- otherwise convert to lower case
 
+WARNING: @str must NOT be a composed identifier (&amp;lt;part1&amp;gt;.&quot;&amp;lt;part2&amp;gt;&quot; for example)
 
-</description>
-<parameters>
-</parameters>
-<return> a new #GdaDataModel object. 
-</return>
-</function>
-
-<function name="gda_connection_event_set_sqlstate">
-<description>
-Sets @event&apos;s SQL state.
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
-</parameter_description>
-</parameter>
-<parameter name="sqlstate">
-<parameter_description> SQL state.
+<parameter name="str">
+<parameter_description> a quoted string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> @str
+</return>
 </function>
 
-<function name="gda_query_condition_set_cond_type">
+<function name="gda_batch_serialize">
 <description>
-Sets the kind of condition @condition represents. If @type implies a node condition and
- condition currently represents a leaf, or if @type implies a leaf condition and
- condition currently represents a node, then @condition is changed without any error.
+Creates a string representing the contents of @batch.
+
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description>
+<parameter name="batch">
+<parameter_description> a #GdaBatch object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a string containing the serialized version of @batch
+</return>
 </function>
 
-<function name="gda_client_rollback_transaction">
+<function name="gda_data_model_get_value_at">
 <description>
-Cancels a running transaction on all connections being managed by the given
-#GdaClient. It is important to note that this operates on all
-connections opened within a #GdaClient, which could not be what
-you&apos;re looking for.
+Retrieves the data stored in the given position (identified by
+the @col and @row parameters) on a data model.
+
+This is the main function for accessing data in a model which allow random access to its data.
+To access data in a data model using a cursor, use a #GdaDataModelIter object, obtained using
+gda_data_model_create_iter().
+
+Note1: the returned #GValue must not be modified directly (unexpected behaviours may
+occur if you do so).
+
+Note2: the returned value may become invalid as soon as any Libgda part is executed again,
+which means if you want to keep the value, a copy must be made, however it will remain valid
+as long as the only Libgda usage is calling gda_data_model_get_value_at() for different values
+of the same row.
 
-To execute a transaction on a unique connection, use
-#gda_connection_begin_transaction, #gda_connection_commit_transaction
-and #gda_connection_rollback_transaction.
+If you want to modify a value stored in a #GdaDataModel, use the gda_data_model_set_value_at() or 
+gda_data_model_set_values() methods.
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to rollback
+<parameter name="col">
+<parameter_description> a valid column number.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> a valid row number.
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -9553,360 +6159,354 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if all transactions could be cancelled successfully,
-or %FALSE if one of them fails.
+<return> a #GValue containing the value stored in the given
+position, or %NULL on error (out-of-bound position, etc).
 </return>
 </function>
 
-<function name="gda_connection_event_get_code">
+<function name="gda_data_model_describe_column">
 <description>
+Queries the underlying data model implementation for a description
+of a given column. That description is returned in the form of
+a #GdaColumn structure, which contains all the information
+about the given column in the data model.
+
+WARNING: the returned #GdaColumn object belongs to the @model model and
+and should not be destroyed; any modification will affect the whole data model.
+
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> column number.
 </parameter_description>
 </parameter>
 </parameters>
-<return> @event&apos;s code (the code is specific to the provider being used)
+<return> the description of the column.
 </return>
 </function>
 
-<function name="gda_parameter_bind_to_param">
+<function name="gda_connection_event_get_event_type">
 <description>
-Sets @param to change when @bind_to changes (and does not make @bind_to change when @param changes)
+Get @event&apos;s severity (from a simple notice to a fatal event)
+
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter
-</parameter_description>
-</parameter>
-<parameter name="bind_to">
-<parameter_description> a #GdaParameter or %NULL
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the event type
+</return>
 </function>
 
-<function name="gda_server_provider_test_schema_model">
+<function name="gda_data_proxy_get_proxied_model">
 <description>
-Test that the structure of @model is correct in regard with @schema
+Fetch the #GdaDataModel which @proxy does proxy
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel to test
-</parameter_description>
-</parameter>
-<parameter name="schema">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description>
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @model has the correct structure
+<return> the proxied data model
 </return>
 </function>
 
-<function name="gda_query_condition_get_children">
+<function name="The">
 <description>
-Get a list of #GdaQueryCondition objects which are children of @condition
-
+ param default_etc_dir  A default path which will used as fallback.
+ return A string containing the etc folder&apos;s path, which must be freed when
+no longer necessary. If BinReloc is not initialized, or if the initialization
+function failed, then a copy of default_etc_dir will be returned.
+If default_etc_dir is NULL, then NULL will be returned.
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new list of #GdaQueryCondition objects
-</return>
+<return></return>
 </function>
 
-<function name="gda_graph_add_item">
+<function name="gda_connection_get_cnc_string">
 <description>
-Adds @item to @graph.
+Gets the connection string used to open this connection.
+
+The connection string is the string sent over to the underlying
+database provider, which describes the parameters to be used
+to open a connection on the underlying data source.
+
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraph object
-</parameter_description>
-</parameter>
-<parameter name="item">
-<parameter_description> a #GdaGraphItem object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the connection string used when opening the connection.
+</return>
 </function>
 
-<function name="gda_connection_get_provider_obj">
+<function name="gda_sql_table_new">
 <description>
-Get a pointer to the #GdaServerProvider object used to access the database
+Creates a new #GdaSqlTable structure, using @parent as its parent part.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect, #GdaSqlStatementInsert, #GdaSqlStatementDelete, #GdaSqlStatementUpdate
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaServerProvider (NEVER NULL)
+<return> a new #GdaSqlTable structure.
 </return>
 </function>
 
-<function name="gda_query_join_new_with_xml_ids">
+<function name="gda_meta_struct_complement_depend">
 <description>
-Creates a new GdaQueryJoin object. Note: the #GdaQueryTarget ranks (1st and 2nd) does not matter, but
-is necessary since the join may not be symetrical (LEFT or RIGHT join). Also, the #GdaQueryJoin object
-may decide to swap the two if necessary.
+This method is similar to gda_meta_struct_complement() but creates #GdaMetaDbObject for all the dependencies
+of @dbo.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object in which the join will occur
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="target_1_xml_id">
-<parameter_description> the 1st #GdaQueryTarget object&apos;s XML id participating in the join
+<parameter name="dbo">
+<parameter_description> a #GdaMetaDbObject part of @mstruct
 </parameter_description>
 </parameter>
-<parameter name="target_2_xml_id">
-<parameter_description> the 2nd #GdaQueryTarget object&apos;s XML id participating in the join
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_entity_get_field_index">
+<function name="gda_lockable_unlock">
 <description>
-Get the position of the field in the given entity. Positions start at 0.
- field MUST be a visible field.
+Unlocks @lockable. This method should not be called if the current does not already holds a lock on @lockable (having
+used gda_lockable_lock() or gda_lockable_trylock()).
 
+This function can be used even if g_thread_init() has not yet been called, and, in that case, will do nothing.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> an object implementing the #GdaEntityField interface
+<parameter name="lockable">
+<parameter_description> a #GdaLockable object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position or -1 if the field is not in the entity or is not visible
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_get_query_type_string">
+<function name="gda_data_proxy_get_proxied_model_n_rows">
 <description>
-Get the type of a query as a human readable string
+Get the number of rows in the proxied data model
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string for the type of @query
+<return> the number of rows, or -1 if the number of rows is not known
 </return>
 </function>
 
-<function name="gda_query_target_get_query">
+<function name="gda_data_proxy_get_values">
 <description>
-Get the #GdaQuery in which @target is
+Retreive a whole list of values from the @proxy store. This function calls gda_data_proxy_get_value()
+for each column index specified in @cols_index, and generates a #GSlist on the way.
 
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
+<parameter name="proxy_row">
+<parameter_description> a proxy row
+</parameter_description>
+</parameter>
+<parameter name="cols_index">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="n_cols">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQuery object
+<return> a new list of values (the list must be freed, not the values), or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_row_get_value">
+<function name="gda_perform_create_table">
 <description>
-Gets a pointer to a #GValue stored in a #GdaRow.
-
-This is a pointer to the internal array of values. Don&apos;t try to free
-or modify it!
+Performs a prepared #GdaServerOperation to create a table. This could perform
+an operation created by #gda_prepare_create_table or any other using the
+the #GdaServerOperation API.
 
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow
+<parameter name="op">
+<parameter_description> a valid #GdaServerOperation
 </parameter_description>
 </parameter>
-<parameter name="num">
-<parameter_description> field index.
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the #GValue in the position @num of @row.
+<return> TRUE if the table was created; FALSE and set @error otherwise
 </return>
 </function>
 
-<function name="gda_query_field_get_dict_type">
+<function name="gda_perform_drop_table">
 <description>
-Get the #GdaDictType represented by the @qfield object: for a function it returns
-the return type, for a value, it returns its type, etc.
+This is just a convenient function to perform a drop a table operation.
 
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data type, or %NULL if @qfield does not have a data type.
+<return> TRUE if the table was dropped
 </return>
 </function>
 
-<function name="gda_object_ref_activate">
+<function name="gda_data_model_dir_get_errors">
 <description>
-Tries to &quot;activate&quot; a reference (to find the referenced object). Nothing happens if
-the object is already activated
+Get the list of errors which have occurred while using @model
 
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="model">
+<parameter_description> a #GdaDataModelDir object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE on success
+<return> a read-only list of #GError pointers, or %NULL if no error has occurred
 </return>
 </function>
 
-<function name="gda_data_proxy_apply_all_changes">
+<function name="gda_value_set_binary">
 <description>
-Apply all the changes stored in the proxy to the proxied data model. The changes are done row
-after row, and if an error
-occurs, then it is possible that not all the changes to all the rows have been applied.
-
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="binary">
+<parameter_description> a #GdaBinary structure with the data and its size to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_provider_supports_feature">
+<function name="gda_execute_sql_command">
 <description>
+This is a convenient function to execute a SQL command over the opened connection.
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description>
+<parameter name="cnc">
+<parameter_description> an opened connection
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description>
+<parameter name="sql">
+<parameter_description> a query statament must begin with &quot;SELECT&quot;
 </parameter_description>
 </parameter>
-<parameter name="feature">
-<parameter_description>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> the number of rows affected or -1.
 </return>
 </function>
 
-<function name="gda_utility_table_field_attrs_parse">
+<function name="gda_column_get_default_value">
 <description>
 
 </description>
 <parameters>
+<parameter name="column">
+<parameter_description> a #GdaColumn.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> @column&apos;s default value, as a #GValue object.
+</return>
 </function>
 
-<function name="gda_dict_function_get_ret_dict_type">
+<function name="gda_connection_get_type">
 <description>
-To consult the return type of a function.
+Registers the #GdaConnection class on the GLib type system.
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GdaDictType object.
+<return> the GType identifying the class.
 </return>
 </function>
 
-<function name="gda_connection_event_set_event_type">
+<function name="gda_sql_select_target_take_table_alias">
 <description>
-Sets @event&apos;s severity (from a simple notice to a fatal event)
+Sets the target alias (AS) to the string holded by @alias; after call
+this function @alias is freed.
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent object
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the severity of the event
+<parameter name="alias">
+<parameter_description> a #GValue holding the alias string to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_parameter_list_get_length">
-<description>
-Get the number of #GdaParameter objects in @paramlist
-
-
-</description>
-<parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-</parameters>
-<return>
-</return>
-</function>
-
-<function name="gda_server_provider_get_info">
+<function name="gda_server_provider_get_version">
 <description>
-Retreive some information specific to the provider. The returned #GdaServerProviderInfo
-structure must not be modified
+Get the version of the provider.
 
 
 </description>
@@ -9915,81 +6515,53 @@
 <parameter_description> a #GdaServerProvider object.
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GdaServerProviderInfo pointer or %NULL if an error occurred
+<return> a string containing the version identification.
 </return>
 </function>
 
-<function name="gda_dict_constraint_non_null_set_field">
+<function name="gda_connection_statement_prepare">
 <description>
+Ask the database accessed through the @cnc connection to prepare the usage of @stmt. This is only usefull
+if @stmt will be used more than once (however some database providers may always prepare stamements 
+before executing them).
 
-</description>
-<parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+This function is also usefull to make sure @stmt is fully understood by the database before actually executing it.
+
+Note however that it is also possible that gda_connection_statement_prepare() fails when
+gda_connection_statement_execute() does not fail (this will usually be the case with statements such as
+&amp;lt;![CDATA[&quot;SELECT * FROM ##tablename::string&quot;]]&amp;gt; because database usually don&apos;t allow variables to be used in place of a 
+table name).
 
-<function name="gda_graph_item_get_position">
-<description>
-Get @item&apos;s position.
 
 </description>
 <parameters>
-<parameter name="item">
-<parameter_description> a #GdaGraphItemItem object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> a place where to store the X part of the position, or %NULL
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> a place where to store the Y part of the position, or %NULL
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred.
+</return>
 </function>
 
-<function name="gda_data_model_query_set_modification_query">
+<function name="gda_statement_check_structure">
 <description>
-Sets the modification query to be used by @model to actually perform any change
-to the dataset in the database.
-
-The provided query (the @query SQL) must be either a INSERT, UPDATE or DELETE query. It can contain
-parameters, and the parameters named &apos;[+-]&amp;lt;num&amp;gt;&apos; will be replaced when the query is run:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a parameter named +&amp;lt;num&amp;gt; will take the new value set at the 
-&amp;lt;num&amp;gt;th column in @model&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a parameter named -&amp;lt;num&amp;gt; will take the old value set at the
-&amp;lt;num&amp;gt;th column in @model&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-Please note that the &quot;+0&quot; and &quot;-0&quot; parameters names are valid and will respectively 
-take the new and old values of the first column of @model.
-
-Examples of queries are: &quot;INSERT INTO orders (customer, creation_date, delivery_before, delivery_date) VALUES (## / *name:&apos;Customer&apos; type:integer* /, date(&apos;now&apos;), ## / *name:&quot;+2&quot; type:date nullok:TRUE * /, NULL)&quot;, &quot;DELETE FROM orders WHERE id = ## / *name:&quot;-0&quot; type:integer* /&quot; and &quot;UPDATE orders set id=## / *name:&quot;+0&quot; type:integer* /, delivery_before=## / *name:&quot;+2&quot; type:date nullok:TRUE* /, delivery_date=## / *name:&quot;+3&quot; type:date nullok:TRUE* / WHERE id=## / *name:&quot;-0&quot; type:integer* /&quot;
+Checks that @stmt&apos;s structure is correct.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelQuery data model
-</parameter_description>
-</parameter>
-<parameter name="query">
-<parameter_description> the SQL code for a query
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -9997,1177 +6569,1310 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred.
+<return> TRUE if @stmt&apos;s structure is correct
 </return>
 </function>
 
-<function name="gda_string_to_binary">
+<function name="gda_set_is_valid">
 <description>
-Performs the reverse of gda_binary_to_string().
-
+This method tells if all @set&apos;s #GdaHolder objects are valid, and if
+they represent a valid combination of values, as defined by rules
+external to Libgda: the &quot;validate-set&quot; signal is emitted and if none of the signal handlers return an
+error, then the returned value is TRUE, otherwise the return value is FALSE as soon as a signal handler
+Returns: TRUE if the set is valid
 
 </description>
 <parameters>
-<parameter name="str">
-<parameter_description> a string to convert
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="bin">
-<parameter_description> a non filled @GdaBinary structure
+<parameter name="error">
+<parameter_description> a place to store validation errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error were found in @str, or FALSE otherwise
+<return> TRUE if the set is valid
 </return>
 </function>
 
-<function name="gda_object_ref_get_ref_object_name">
+<function name="gda_data_proxy_get_n_new_rows">
 <description>
-Get the name (as returned by gda_object_get_name()) of the last object referenced
+Get the number of rows which have been added to @proxy and which are not part of
+the proxied data model.
 
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the object (to be interpreted with @type)
+<return> the number of new rows
 </return>
 </function>
 
-<function name="gda_dict_database_get_table_by_name">
+<function name="gda_data_model_to_xml_node">
 <description>
-Get a reference to a GdaDictTable using its name.
+Converts a #GdaDataModel into a xmlNodePtr (as used in libxml).
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="cols">
+<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
+</parameter_description>
+</parameter>
+<parameter name="nb_cols">
+<parameter_description> the number of columns in @cols
+</parameter_description>
+</parameter>
+<parameter name="rows">
+<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
+</parameter_description>
+</parameter>
+<parameter name="nb_rows">
+<parameter_description> the number of rows in @rows
 </parameter_description>
 </parameter>
 <parameter name="name">
-<parameter_description> the name of the requested table
+<parameter_description> name to use for the XML resulting table.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The GdaDictTable pointer or NULL if the requested table does not exist.
+<return> a xmlNodePtr representing the whole data model, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_xml_storage_save_to_xml">
+<function name="gda_data_model_row_inserted">
 <description>
-Creates a new xmlNodePtr structure and fills it with data representing the
-object given as argument.
+Emits the &apos;row_inserted&apos; and &apos;changed&apos; signals on @model. 
 
+This method should only be used by #GdaDataModel implementations to 
+signal that a row has been inserted.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaXmlStorage interface
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="row">
+<parameter_description> row number.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new XML node, or NULL if an error occurred.
+<return></return>
+</function>
+
+<function name="gda_handler_time_new_no_locale">
+<description>
+Creates a data handler for time values, but using the default C locale
+instead of the current user locale.
+
+
+</description>
+<parameters>
+</parameters>
+<return> the new object
 </return>
 </function>
 
-<function name="gda_parameter_get_alphanum_name">
+<function name="gda_server_provider_string_to_value">
 <description>
-Get a new string containing a &quot;clean&quot; version of @param&apos;s name: chars which
-are not among [0-9A-Za-z] are replaced with &apos;_&apos;.
+Use @provider to create a new #GValue from a single string representation. 
+
+The @prefered_type can optionally ask @provider to return a #GValue of the requested type 
+(but if such a value can&apos;t be created from @string, then %NULL is returned); 
+pass G_TYPE_INVALID if any returned type is acceptable.
+
+The returned value is either a new #GValue or %NULL in the following cases:
+- @string cannot be converted to @prefered_type type
+- the provider does not handle @prefered_type
+- the provider could not make a #GValue from @string
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="provider">
+<parameter_description> a server provider.
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="string">
+<parameter_description> the SQL string to convert to a value
+</parameter_description>
+</parameter>
+<parameter name="prefered_type">
+<parameter_description> a #GType, or G_TYPE_INVALID
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string
+<return> a new #GValue, or %NULL
 </return>
 </function>
 
-<function name="gda_query_declare_condition">
+<function name="gda_data_proxy_cancel_all_changes">
 <description>
-Declares the existence of a new condition to @query. All the #GdaQueryCondition objects MUST
-be declared to the corresponding #GdaQuery object for the library to work correctly.
-Once @cond has been declared, @query does not hold any reference to @cond.
+Cancel all the changes stored in the proxy (the @proxy will be reset to its state
+as it was just after creation).
 
-This functions is called automatically from each gda_query_condition_new* function, and it should not be necessary 
-to call it except for classes extending the #GdaQueryCondition class.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="cond">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_dict_field_get_scale">
+<function name="gda_sql_select_field_serialize">
 <description>
-Get the scale of a field.
+Creates a new string representing an expresion used as field in a SELECT statement
+before the FROM clausure.
 
 
 </description>
 <parameters>
 <parameter name="field">
-<parameter_description> a #GdaDictField  object
+<parameter_description> a #GdaSqlSelectField structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the corresponding data type has a fixed size, or -1
+<return> a new string with the description of the expression or &quot;null&quot; in case @field is invalid.
 </return>
 </function>
 
-<function name="gda_query_new_copy">
+<function name="gda_data_proxy_get_proxied_model_n_cols">
 <description>
-Copy constructor
+Get the number of columns in the proxied data model
 
 
 </description>
 <parameters>
-<parameter name="orig">
-<parameter_description> a #GdaQuery to make a copy of
-</parameter_description>
-</parameter>
-<parameter name="replacements">
-<parameter_description> a hash table to store replacements, or %NULL
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a the new copy of @orig
+<return> the number of columns, or -1 if an error occurred
 </return>
 </function>
 
-<function name="gda_query_field_set_visible">
+<function name="gda_column_set_allow_null">
 <description>
-Sets the visibility of @qfield. A visible field will appear in the query&apos;s 
-corresponding (virtual) entity, whereas a non visible one will be hidden (and
-possibly not taking part in the query).
+Sets the &apos;allow null&apos; flag of the given column.
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
-<parameter name="visible">
-<parameter_description>
+<parameter name="allow">
+<parameter_description> whether the given column should allows null values or not.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_get_n_columns">
+<function name="gda_batch_get_statements">
 <description>
+Get a list of the #GdaStatement objects contained in @batch
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="batch">
+<parameter_description> a #GdaBatch object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of columns in the given data model.
+<return> a list of #GdaStatement which should not be modified.
 </return>
 </function>
 
-<function name="gda_column_get_g_type">
+<function name="gda_sql_select_field_take_alias">
 <description>
+Sets the &apos;as&apos; field&apos;s string in the #GdaSqlSelectField structure. @alias is freed
+after call this function.
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
+</parameter_description>
+</parameter>
+<parameter name="alias">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of @column.
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_aggregate_get_dbms_id">
+<function name="gda_data_model_array_copy_model">
 <description>
-Get the DBMS identifier of the aggregate
+Makes a copy of @src into a new #GdaDataModelArray object
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
+<parameter name="src">
+<parameter_description> a #GdaDataModel to copy data from
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the aggregate&apos;s id
+<return> a new data model, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_dict_get_function_by_dbms_id">
+<function name="gda_data_proxy_apply_all_changes">
 <description>
-To find a DBMS functions which is uniquely identified by its name and the type
-of its argument.
+Apply all the changes stored in the proxy to the proxied data model. The changes are done row
+after row, and if an error
+occurs, then it is possible that not all the changes to all the rows have been applied.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="dbms_id">
-<parameter_description> 
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The function or NULL if not found
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_connection_event_list_free">
+<function name="gda_xa_transaction_unregister_connection">
 <description>
-Frees all event objects in the list and the list itself.
-After this function has been called, the @events parameter doesn&apos;t point
-to valid storage any more.
+Unregisters @cnc to be used by @xa_trans to create a distributed transaction. This is
+the opposite of gda_xa_transaction_register_connection().
 
 </description>
 <parameters>
-<parameter name="events">
-<parameter_description> a GList holding event objects.
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> the connection to add to @xa_trans
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_get_value_at_col_name">
+<function name="gda_connection_statement_execute_select">
 <description>
-Retrieves the data stored in the given position (identified by
-the @col_name column and @row parameters) on a data model.
+Executes a selection command on the given connection. The gda_execute_select_command() method can be easier
+to use if one prefers to use some SQL directly.
 
-See also gda_data_model_get_value_at().
+This function returns a #GdaDataModel resulting from the SELECT statement, or %NULL
+if an error occurred.
+
+This function is just a convenience function around the gda_connection_statement_execute()
+function.
+
+See the documentation of the gda_connection_statement_execute() for information
+about the @params list of parameters.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="column_name">
-<parameter_description> a valid column name.
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object.
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> a valid row number.
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GValue containing the value stored in the given
-position, or %NULL on error (out-of-bound position, etc).
+<return> a #GdaDataModel containing the data returned by the
+data source, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_query_get_param_sources">
+<function name="gda_text_to_alphanum">
 <description>
-Get a list of the parameter source queries that are references as such by @query.
+The &quot;encoding&quot; consists in replacing non
+alphanumeric character with the string &quot;__gdaXX&quot; where XX is the hex. representation
+of the non alphanumeric char.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="text">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> the list of #GdaQuery objects
+<return> a new string
 </return>
 </function>
 
-<function name="gda_dict_new">
+<function name="gda_sql_select_field_take_expr">
 <description>
-Create a new #GdaDict object.
-
+Sets the expression field in the #GdaSqlSelectField structure to point to @expr
+and modify it to sets its parent to @field.
 
 </description>
 <parameters>
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
+</parameter_description>
+</parameter>
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr to take from
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created object.
-</return>
+<return></return>
 </function>
 
-<function name="gda_object_get_description">
+<function name="_gda_meta_store_cancel_data_reset">
 <description>
-Fetch the description of the GdaObject object.
+Cancels any modification done since _gda_meta_store_begin_data_reset() was called.
 
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the object&apos;s description.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_value_compare">
+<function name="gda_config_get_type">
 <description>
-Compares two values of the same type.
+Registers the #GdaConfig class on the GLib type system.
 
 
 </description>
 <parameters>
-<parameter name="value1">
-<parameter_description> a #GValue to compare.
-</parameter_description>
-</parameter>
-<parameter name="value2">
-<parameter_description> the other #GValue to be compared to @value1.
-</parameter_description>
-</parameter>
 </parameters>
-<return> if both values have the same type, returns 0 if both contain
-the same value, an integer less than 0 if @value1 is less than @value2 or
-an integer greater than 0 if @value1 is greater than @value2.
+<return> the GType identifying the class.
 </return>
 </function>
 
-<function name="gda_object_ref_new_no_ref_count">
+<function name="gda_holder_force_invalid">
 <description>
-Creates a new GdaObjectRef object. This #GdaObjectRef object does not
-itself increase the reference count of the object it keeps a reference to,
-which means that if all the reference count holders call g_object_unref()
-on there referenced object, then that object will actually be destroyed
-and a &quot;ref_lost&quot; signal will be emitted. Use gda_object_ref_new() if you want to
-increase the count of the referenced object.
+Forces a holder to be invalid; to set it valid again, a new value must be assigned
+to it using gda_holder_set_value() or gda_holder_take_value().
 
+ holder&apos;s value is set to %NULL.
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_source_info_copy">
+<function name="gda_g_type_from_string">
 <description>
-Creates a new #GdaDataSourceInfo structure from an existing one.
-
 
 </description>
 <parameters>
-<parameter name="src">
-<parameter_description> data source information to get a copy from.
+<parameter name="str">
+<parameter_description> the name of a #GType, as returned by gda_g_type_to_string().
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaDataSourceInfo with contains a copy of 
-information in @src.
+<return> the #GType represented by the given @str.
 </return>
 </function>
 
-<function name="gda_blob_op_read_all">
+<function name="gda_connection_event_set_code">
 <description>
-Reads the whole contents of the blob manipulated by @op into @blob
+Sets @event&apos;s code: the code is specific to the provider being used.
+If you want to have a common understanding of the event codes, use
+gda_connection_event_get_gda_code() instead.
 
+This function should not be called directly
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaBlobOp
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
-<parameter name="blob">
-<parameter_description> a #GdaBlob to read data to
+<parameter name="code">
+<parameter_description> a code.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @blob-&amp;gt;data contains the whole BLOB manipulated by @op
-</return>
+<return></return>
 </function>
 
-<function name="gda_column_set_references">
+<function name="gda_data_model_get_attributes_at">
 <description>
-Sets @column&apos;s @references.
+Get the attributes of the value stored at (row, col) in @model, which
+is an ORed value of #GdaValueAttribute flags. As a special case, if
+ row is -1, then the attributes returned correspond to a &quot;would be&quot; value
+if a row was added to @model.
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="model">
+<parameter_description> a #GdaDataModel object
 </parameter_description>
 </parameter>
-<parameter name="ref">
-<parameter_description> references.
+<parameter name="col">
+<parameter_description> a valid column number
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> a valid row number, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the attributes as an ORed value of #GdaValueAttribute
+</return>
 </function>
 
-<function name="gda_query_target_get_represented_table_name">
+<function name="gda_set_get_source_for_model">
 <description>
-Get the table name represented by @target
+Finds the #GdaSetSource structure used in @set for which @model is a
+the data model, don&apos;t modify the returned structure
 
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="set">
+<parameter_description> a #GdaSet object
+</parameter_description>
+</parameter>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the table name or NULL if @target does not represent a database table
+<return> a #GdaSetSource pointer or %NULL.
 </return>
 </function>
 
-<function name="gda_dict_field_get_length">
+<function name="gda_connection_get_provider">
 <description>
-Get the length of a field.
+Get a pointer to the #GdaServerProvider object used to access the database
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField  object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the corresponding data type has a fixed size, or -1
+<return> the #GdaServerProvider (NEVER NULL)
 </return>
 </function>
 
-<function name="gda_query_condition_represents_join_strict">
+<function name="gda_data_proxy_is_read_only">
 <description>
-Tells if @condition represents a strict join condition: it is a join condition as defined for the 
-gda_query_condition_represents_join() method, but where the condition is either &quot;target1.field1=target2.field2&quot;
-or a list of such conditions conjuncted by the AND operator.
-
-If @condition is not a join condition, then @target1 and @target2 are left
-untouched.
-
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-<parameter name="target1">
-<parameter_description> place to store one of the targets, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="target2">
-<parameter_description> place to store the other target, or %NULL
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @condition is a strict join condition
+<return> TRUE if the proxied data model is itself read-only
 </return>
 </function>
 
-<function name="gda_client_notify_event">
+<function name="gda_connection_event_set_sqlstate">
 <description>
-Notifies an event to the given #GdaClient&apos;s listeners. The event can be
-anything (see #GdaClientEvent) ranging from a connection opening
-operation, to changes made to a table in an underlying database.
+Changes the SQLSTATE code of @event, this function should not be called directly
+
+Sets @event&apos;s SQL state.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object where the event has occurred.
-</parameter_description>
-</parameter>
 <parameter name="event">
-<parameter_description> event ID.
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> parameters associated with the event.
+<parameter name="sqlstate">
+<parameter_description> SQL state.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_get_target_by_xml_id">
+<function name="gda_binary_to_string">
 <description>
-Get a pointer to a #GdaQueryTarget (which must be within @query) using
-its XML Id
+Converts all the non printable characters of bin-&amp;gt;data into the \xxx representation
+where xxx is the octal representation of the byte, and the &apos;\&apos; (backslash) character
+is converted to &quot;\\&quot;.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="bin">
+<parameter_description> a correctly filled @GdaBinary structure
+</parameter_description>
+</parameter>
+<parameter name="maxlen">
+<parameter_description> a maximum len used to truncate, or 0 for no maximum length
 </parameter_description>
 </parameter>
-<parameter name="xml_id">
-<parameter_description> the XML Id of the requested #GdaQueryTarget object
+</parameters>
+<return> a new string from @bin
+</return>
+</function>
+
+<function name="gda_connection_event_get_code">
+<description>
+
+</description>
+<parameters>
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget object, or NULL if not found
+<return> @event&apos;s code (the code is specific to the provider being used)
 </return>
 </function>
 
-<function name="gda_object_block_changed">
+<function name="gda_connection_event_set_event_type">
 <description>
-No &quot;changed&quot; signal will be emitted.
+Sets @event&apos;s severity (from a simple notice to a fatal event)
+This function should not be called directly.
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent object
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the severity of the event
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_value_get_value">
+<function name="gda_holder_get_default_value">
 <description>
-Get the value stored by @field. If there is no value, but a default value exists, then the
-default value is returned.n it&apos;s up to the caller to test if there is a default value for @field.
-The default value can be of a different type than the one expected by @field.
+Get the default value held into the holder. WARNING: the default value does not need to be of 
+the same type as the one required by @holder.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value or NULL
+<return> the default value
 </return>
 </function>
 
-<function name="gda_server_provider_get_last_insert_id">
+<function name="gda_server_provider_test_schema_model">
 <description>
-Retrieve from the given #GdaServerProvider the ID of the last inserted row.
-A connection must be specified, and, optionally, a result set. If not NULL,
-the provider should try to get the last insert ID for the given result set.
+Test that the structure of @model is correct in regard with @schema
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
+<parameter name="model">
+<parameter_description> a #GdaDataModel to test
+</parameter_description>
+</parameter>
+<parameter name="schema">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description>
 </parameter_description>
 </parameter>
+</parameters>
+<return> TRUE if @model has the correct structure
+</return>
+</function>
+
+<function name="gda_connection_create_operation">
+<description>
+Creates a new #GdaServerOperation object which can be modified in order 
+to perform the type type of action. It is a wrapper around the gda_server_provider_create_operation()
+method.
+
+
+</description>
+<parameters>
 <parameter name="cnc">
-<parameter_description> connection to act upon.
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the type of operation requested
+</parameter_description>
+</parameter>
+<parameter name="options">
+<parameter_description> an optional list of parameters
 </parameter_description>
 </parameter>
-<parameter name="recset">
-<parameter_description> resultset to get the last insert ID from.
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string representing the ID of the last inserted row, or NULL
-if an error occurred or no row has been inserted. It is the caller&apos;s
-reponsibility to free the returned string.
+<return> a new #GdaServerOperation object, or %NULL in the connection&apos;s provider does not support the @type type
+of operation or if an error occurred
 </return>
 </function>
 
-<function name="gda_dict_table_new">
+<function name="gda_statement_get_parameters">
 <description>
-Creates a new GdaDictTable object
-
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-</parameters>
-<return> the new object
-</return>
-</function>
+Get a new #GdaSet object which groups all the execution parameters
+which @stmt needs. This new object is returned though @out_params.
 
-<function name="gda_server_provider_unescape_string">
-<description>
-Unescapes @str for use within an SQL command. This is the exact opposite of gda_server_provider_escape_string().
+Note that if @stmt does not need any parameter, then @out_params is set to %NULL.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
+<parameter name="out_params">
+<parameter_description> a place to store a new #GdaSet object, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description> a string to escape
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_config_get_provider_by_name">
+<function name="gda_quark_list_new">
 <description>
-Gets a #GdaProviderInfo structure from the provider list given its name,
-don&apos;t modify or free it.
+Creates a new #GdaQuarkList, which is a set of key-&amp;gt;value pairs,
+very similar to GLib&apos;s GHashTable, but with the only purpose to
+make easier the parsing and creation of data source connection
+strings.
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> name of the provider to search for.
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GdaProviderInfo structure, if found, or %NULL if not found.
+<return> the newly created #GdaQuarkList.
 </return>
 </function>
 
-<function name="gda_dict_assume_object_as">
+<function name="gda_attributes_manager_set_full">
 <description>
-Same as gda_dict_assume_object() but forces to use the @as_type type instead of
- object&apos;s realtype
+Does the same as gda_attributes_manager_set() except that @destroy is called when @att_name needs
+to be freed
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
+</parameter_description>
+</parameter>
+<parameter name="ptr">
+<parameter_description> a pointer to the ressources to which the attribute will apply
+</parameter_description>
+</parameter>
+<parameter name="att_name">
+<parameter_description> an attribute&apos;s name, as a *static* string
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
+<parameter name="value">
+<parameter_description> a #GValue, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="as_type">
-<parameter_description> parent type of @object to take into account
+<parameter name="destroy">
+<parameter_description> function called when @att_name is destroyed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="Get">
+<function name="gda_statement_is_useless">
 <description>
+Tells if @stmt is composed only of spaces (that is it has no real SQL code), and is completely
+useless as such.
+
 
 </description>
 <parameters>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
 </parameters>
-<return> a pointer to the requested query field, or %NULL if it was not found
+<return> TRUE if executing @stmt does nothing
 </return>
 </function>
 
-<function name="gda_client_notify_connection_closed_event">
+<function name="gda_set_merge_with_set">
 <description>
-Notifies the given #GdaClient of the #GDA_CLIENT_EVENT_CONNECTION_CLOSED 
-event.
+Add to @set all the holders of @set_to_merge. 
+Note1: only the #GdaHolder of @set_to_merge for which no holder in @set has the same ID are merged
+Note2: all the #GdaHolder merged in @set are still used by @set_to_merge.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="set_to_merge">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_function_set_dbms_id">
+<function name="gda_meta_table_column_set_attribute">
 <description>
-Set the DBMS identifier of the function
+Set the value associated to a named attribute.
+
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
+If there is already an attribute named @attribute set, then its value is replaced with the new @value, 
+except if @value is %NULL, in which case the attribute is removed.
+
+Warning: @sttribute should be a static string (no copy of it is made), so the string should exist as long as the @column
+object exists.
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="tcol">
+<parameter_description> a #GdaMetaTableColumn
 </parameter_description>
 </parameter>
-<parameter name="id">
-<parameter_description> the DBMS identifier
+<parameter name="attribute">
+<parameter_description> attribute name as a static string
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_server_operation_del_node_from_sequence">
+<function name="gda_xa_transaction_id_to_string">
 <description>
+Creates a string representation of @xid, in the format &amp;lt;gtrid&amp;gt;,&amp;lt;bqual&amp;gt;,&amp;lt;formatID&amp;gt; the 
+&amp;lt;gtrid&amp;gt; and &amp;lt;bqual&amp;gt; strings contain alphanumeric characters, and non alphanumeric characters
+are converted to &quot;%ab&quot; where ab is the hexadecimal representation of the character.
+
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="item_path">
-<parameter_description> the path to the sequence&apos;s item to remove (like &quot;/SEQ_NAME/5&quot; for instance)
+<parameter name="xid">
+<parameter_description> a #GdaXaTransactionId pointer
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the specified node has been removed from the sequence
+<return> a new string representation of @xid
 </return>
 </function>
 
-<function name="gda_dict_type_new">
+<function name="gda_connection_statement_execute_select_fullv">
 <description>
-Creates a new GdaDictType object which represent a data type defined in a data dictionary
+Executes a selection command on the given connection.
+
+This function returns a #GdaDataModel resulting from the SELECT statement, or %NULL
+if an error occurred.
+
+This function is just a convenience function around the gda_connection_statement_execute()
+function.
+
+See the documentation of the gda_connection_statement_execute() for information
+about the @params list of parameters.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object, or %NULL
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object.
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="model_usage">
+<parameter_description> specifies how the returned data model will be used as a #GdaStatementModelUsage enum
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a (-1 terminated) list of (column number, GType) specifying for each column mentionned the GType
+of the column in the returned #GdaDataModel.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a #GdaDataModel containing the data returned by the
+data source, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_quark_list_add_from_string">
+<function name="gda_data_select_get_type">
 <description>
-Adds new key-&amp;gt;value pairs from the given @string. If @cleanup is
-set to %TRUE, the previous contents will be discarded before adding
-the new pairs.
 
 </description>
 <parameters>
-<parameter name="qlist">
-<parameter_description> a #GdaQuarkList.
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> a connection string.
-</parameter_description>
-</parameter>
-<parameter name="cleanup">
-<parameter_description> whether to cleanup the previous content or not.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the #GType of GdaDataSelect.
+</return>
 </function>
 
-<function name="gda_delimiter_destroy">
+<function name="gda_init">
 <description>
-Free up a GdaDelimiterStatement.
+Initializes the GDA library, must be called prior to any Libgda usage. Note that unless the
+LIBGDA_NO_THREADS environment variable is set (to any value), the GLib thread system will
+be initialized as well if not yet initialized.
 
 </description>
 <parameters>
-<parameter name="statement">
-<parameter_description> Sql statement
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_client_perform_drop_database">
+<function name="gda_server_provider_supports_feature">
 <description>
-Destroys an existing database using the specifications in @op,  which must have been obtained using
-gda_client_prepare_drop_database ()
+Tests if a feature is supported
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
 </parameter_description>
 </parameter>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object obtained using gda_client_prepare_drop_database()
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store en error, or %NULL
+<parameter name="feature">
+<parameter_description> #GdaConnectionFeature feature to test
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred and the database has been destroyed
+<return> TRUE if @feature is supported
 </return>
 </function>
 
-<function name="gda_value_set_numeric">
+<function name="gda_sql_field_serialize">
 <description>
-Stores @val into @value.
+Creates a new string representing a field. You need to free the returned string
+using g_free();
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
+<parameter name="field">
+<parameter_description> a #GdaSqlField structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the name of the field or &quot;null&quot; in case @field is invalid.
+</return>
 </function>
 
-<function name="gda_server_provider_execute_query">
+<function name="_gda_meta_store_begin_data_reset">
 <description>
-Executes the @query query, and returns:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;A #GdaDataModel if the query was a SELECT statement and the statement was successufully executed&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;A #GdaParameterList if the query was not a SELECT 
-query and the query was successufully executed. In this case
-(if the provider supports it), then the #GdaParameterList may contain:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (gint) #GdaParameter named &quot;IMPACTED_ROWS&quot;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (GObject) #GdaParameter named &quot;EVENT&quot; which contains a GdaConnectionEvent&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;%NULL is in the list if the query could not be executed&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-
-The differences between this function and gda_server_provider_execute_command() are:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Only one query can be executed at a time&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the database provider supports it, prepared statements can be used&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Blobs are handled correctly (because blobs are usually not handled using SQL)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Sets @store in a mode where only the modifications completely overriding a table
+will be allowed, where no detailled modifications report is made and where the &quot;suggest-update&quot;
+signal is not emitted.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object using 
-</parameter_description>
-</parameter>
-<parameter name="query">
-<parameter_description> a #GdaQuery 
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> a #GdaParameterList object obtained using gda_query_get_parameter_list(@query)
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new (#GdaDataModel or #GdaParameterList) object, or %NULL
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_entity_field_get_entity">
+<function name="gda_row_get_value">
 <description>
-Get a reference to the object implementing the #GdaEntity interface to which
-the object implementing the #GdaEntityField is attached to.
+Gets a pointer to a #GValue stored in a #GdaRow.
+
+This is a pointer to the internal array of values. Don&apos;t try to free
+or modify it!
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaEntityField interface
+<parameter name="row">
+<parameter_description> a #GdaRow
+</parameter_description>
+</parameter>
+<parameter name="num">
+<parameter_description> field index.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the object implementing the #GdaEntity interface
+<return> a pointer to the #GValue in the position @num of @row.
 </return>
 </function>
 
-<function name="gda_dict_aggregate_get_sqlname">
+<function name="gda_server_provider_get_info">
 <description>
-Get the DBMS&apos;s name of a data type.
+Get the name (identifier) of the provider
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the data type
+<return> a string containing the provider&apos;s name
 </return>
 </function>
 
-<function name="gda_graphs_get_graph_for_object">
+<function name="gda_string_to_binary">
 <description>
-Find a #GdaGraph object guiven the object it is related to.
+Performs the reverse of gda_binary_to_string().
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="str">
+<parameter_description> a string to convert
 </parameter_description>
 </parameter>
-<parameter name="obj">
-<parameter_description> a #Gobject object
+<parameter name="bin">
+<parameter_description> a non filled @GdaBinary structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaGraph object, or NULL if not found
+<return> TRUE if no error were found in @str, or FALSE otherwise
 </return>
 </function>
 
-<function name="gda_query_field_value_get_g_type">
+<function name="gda_column_get_description">
 <description>
-Get the GDA type of value stored within @field
-
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type
+<return> the column&apos;s description, in any
 </return>
 </function>
 
-<function name="gda_config_get_float">
+<function name="gda_connection_create_parser">
 <description>
-Gets the value of the specified configuration entry as a float.
+Creates a new parser object able to parse the SQL dialect understood by @cnc. 
+If the #GdaServerProvider object internally used by @cnc does not have its own parser, 
+then %NULL is returned, and a general SQL parser can be obtained
+using gda_sql_parser_new().
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored at the given entry.
+<return> a new #GdaSqlParser object, or %NULL
 </return>
 </function>
 
-<function name="gda_object_ref_get_ref_type">
+<function name="gda_parse_iso8601_date">
 <description>
-Get the type of the referenced object by @ref (or the requested type if @ref is not active)
+Extracts date parts from @value, and sets @gdate&apos;s contents
+
+Accepted date format is &quot;YYYY-MM-DD&quot;.
 
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="gdate">
+<parameter_description> a pointer to a #GDate structure which will be filled
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_get_default_dict">
+<function name="gda_meta_store_schema_remove_custom_object">
 <description>
-Get the default dictionary.
+Removes the custom database object named @obj_name.
 
 
 </description>
 <parameters>
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="obj_name">
+<parameter_description> name of the custom object to remove
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> a not %NULL pointer to the default #GdaDict dictionary
+<return> TRUE if the custom object has sucessfully been removed
 </return>
 </function>
 
-<function name="gda_data_model_move_iter_next">
+<function name="gda_meta_struct_get_table_column">
 <description>
-Sets @iter to the next available row in @model. @iter must be a valid iterator object obtained
-using the gda_data_model_create_iter() method.
+Tries to find the #GdaMetaTableColumn representing the column named @col_name in @table.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="table">
+<parameter_description> the #GdaMetaTable structure to find the column for
+</parameter_description>
+</parameter>
+<parameter name="col_name">
+<parameter_description> the name of the column to find (as a G_TYPE_STRING GValue)
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> the #GdaMetaTableColumn or %NULL if not found
 </return>
 </function>
 
-<function name="gda_graph_get_item_from_obj">
+<function name="gda_data_model_get_n_columns">
 <description>
-Get a pointer to a #GdaGraphItem item from the object is represents.
-If the searched #GdaGraphItem is not found and @create_if_needed is TRUE, then a new
-#GdaGraphItem is created.
-
 
 </description>
 <parameters>
-<parameter name="graph">
-<parameter_description> a #GdaGraph object
-</parameter_description>
-</parameter>
-<parameter name="ref_obj">
-<parameter_description> the #GdaObject the returned item references
-</parameter_description>
-</parameter>
-<parameter name="create_if_needed">
-<parameter_description>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaGraphItem object, or %NULL if not found
+<return> the number of columns in the given data model.
 </return>
 </function>
 
-<function name="gda_value_set_blob">
+<function name="gda_column_get_g_type">
 <description>
-Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="blob">
-<parameter_description> a #GdaBlob structure with the data and its size to be stored in @value.
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the type of @column.
+</return>
 </function>
 
-<function name="gda_data_handler_get_descr">
+<function name="gda_default_unescape_string">
 <description>
-Get a short description of the GdaDataHandler
+Do the reverse of gda_default_escape_string(): transforms any &quot;\&apos;&quot; into &quot;&apos;&quot; and any
+&quot;\\&quot; into &quot;\&quot;. 
 
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
+<parameter name="string">
+<parameter_description> string to unescape
 </parameter_description>
 </parameter>
 </parameters>
-<return> the description
+<return> a new unescaped string, or %NULL in an error was found in @string
 </return>
 </function>
 
-<function name="gda_data_model_iter_get_row">
+<function name="gda_meta_store_new_with_file">
 <description>
-Get the row which @iter represents in the data model
+Create a new #GdaMetaStore object using @file_name as its internal
+database
 
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="file_name">
+<parameter_description> a file name
 </parameter_description>
 </parameter>
 </parameters>
-<return> the row number, or -1 if not available
+<return> the newly created object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_quark_list_find">
+<function name="gda_value_is_null">
 <description>
-Searches for the value identified by @name in the given #GdaQuarkList.
+Tests if a given @value is of type #GDA_TYPE_NULL.
 
 
 </description>
 <parameters>
-<parameter name="qlist">
-<parameter_description> a #GdaQuarkList.
+<parameter name="value">
+<parameter_description> value to test.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the value to search for.
+</parameters>
+<return> a boolean that says whether or not @value is of type
+#GDA_TYPE_NULL.
+</return>
+</function>
+
+<function name="gda_sql_table_free">
+<description>
+Frees a #GdaSqlTable structure and its members.
+
+</description>
+<parameters>
+<parameter name="table">
+<parameter_description> a #GdaSqlTable structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value associated with the given key if found, or %NULL
-if not found.
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_row_removed">
+<function name="gda_data_select_set_row_selection_condition">
 <description>
-Emits the &apos;row_removed&apos; and &apos;changed&apos; signal on @model.
+Offers the same features as gda_data_select_set_row_selection_condition_sql() but using a #GdaSqlExpr
+structure instead of an SQL syntax.
+
 
 </description>
 <parameters>
 <parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter_description> a #GdaDataSelect data model
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> row number.
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr expression
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_client_new">
+<function name="gda_blob_op_read_all">
 <description>
-Creates a new #GdaClient object, which is the entry point for libgda
-client applications. This object, once created, can be used for
-opening new database connections and activating other services
-available to GDA clients.
+Reads the whole contents of the blob manipulated by @op into @blob
 
 
 </description>
 <parameters>
+<parameter name="op">
+<parameter_description> a #GdaBlobOp
+</parameter_description>
+</parameter>
+<parameter name="blob">
+<parameter_description> a #GdaBlob to read data to
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created object.
+<return> TRUE if @blob-&amp;gt;data contains the whole BLOB manipulated by @op
 </return>
 </function>
 
-<function name="gda_connection_get_transaction_status">
+<function name="gda_statement_new">
 <description>
-Get the status of @cnc regarding transactions. The returned object should not be modified
-or destroyed; however it may be modified or destroyed by the connection itself.
-
-If %NULL is returned, then no transaction has been associated with @cnc
+Creates a new #GdaStatement object
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
-</parameter_description>
-</parameter>
 </parameters>
-<return> a #GdaTransactionStatus object, or %NULL
+<return> the new object
 </return>
 </function>
 
-<function name="gda_value_set_geometric_point">
+<function name="gda_value_set_list">
 <description>
 Stores @val into @value.
 
@@ -11185,157 +7890,162 @@
 <return></return>
 </function>
 
-<function name="gda_config_set_float">
+<function name="gda_holder_new_inline">
 <description>
-Sets the given configuration entry to contain a float.
+Creates a new #GdaHolder object named @name, of type @type, and containing the value passed
+as the last argument.
+
+Note that this function is a utility function and that anly a limited set of types are supported. Trying
+to use an unsupported type will result in a warning, and the returned value holder holding a safe default
+value.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="type">
+<parameter_description> a valid GLib type
 </parameter_description>
 </parameter>
-<parameter name="new_value">
-<parameter_description> new value.
+<parameter name="id">
+<parameter_description> the id of the holder to create, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> value to set
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a new #GdaHolder object
 </return>
 </function>
 
-<function name="gda_data_model_get_row_from_values">
+<function name="gda_server_provider_get_data_handler_g_type">
 <description>
-Returns: the requested row number, of -1 if not found
+Find a #GdaDataHandler object to manipulate data of type @for_type. The returned object must not be modified.
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="provider">
+<parameter_description> a server provider.
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a list of #GValue values
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="cols_index">
-<parameter_description> an array of #gint containing the column number to match each value of @values
+<parameter name="for_type">
+<parameter_description> a #GType
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested row number, of -1 if not found
+<return> a #GdaDataHandler, or %NULL if the provider does not support the requested @for_type data type 
 </return>
 </function>
 
-<function name="gda_column_index_set_column_name">
+<function name="gda_sql_parser_new">
 <description>
-Sets the name of @dmcia to @column_name.
+Creates a new #GdaSqlParser object
+
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
-</parameter_description>
-</parameter>
-<parameter name="column_name">
-<parameter_description> the new name of @dmcia.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the new object
+</return>
 </function>
 
-<function name="gda_column_index_copy">
+<function name="gda_quark_list_copy">
 <description>
-Creates a new #GdaColumnIndex object from an existing one.
+Creates a new #GdaQuarkList from an existing one.
+
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> attributes to get a copy from.
+<parameter name="qlist">
+<parameter_description> quark_list to get a copy from.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaColumnIndex with a copy of the data
-in @dmcia.
+<return> a newly allocated #GdaQuarkList with a copy of the data in @qlist.
 </return>
 </function>
 
-<function name="gda_parameter_get_exists_default_value">
+<function name="gda_config_get_dsn_info_index">
 <description>
+Get the index (starting at 0) of the DSN named @dsn_name
+
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="dsn_name">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @param has a default value (which may be unspecified)
+<return> the index or -1 if not found
 </return>
 </function>
 
-<function name="gda_server_provider_perform_operation">
+<function name="gda_server_provider_unescape_string">
 <description>
-Performs the operation described by @op.
+Unescapes @str for use within an SQL command. This is the exact opposite of gda_server_provider_escape_string().
 
 
 </description>
 <parameters>
 <parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter_description> a server provider.
 </parameter_description>
 </parameter>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object which will be used to perform an action
-</parameter_description>
-</parameter>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="str">
+<parameter_description> a string to escape
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a new string
 </return>
 </function>
 
-<function name="gda_data_access_wrapper_new">
+<function name="gda_server_operation_del_node_from_sequence">
 <description>
-Creates a new #GdaDataModel object which buffers the rows of @model. This object is usefull
-only if @model can only be accessed using cursor based method.
-
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="item_path">
+<parameter_description> the path to the sequence&apos;s item to remove (like &quot;/SEQ_NAME/5&quot; for instance)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the newly created #GdaDataModel.
+<return> TRUE if the specified node has been removed from the sequence
 </return>
 </function>
 
-<function name="gda_data_model_iter_set_at_row">
+<function name="gda_data_proxy_set_ordering_column">
 <description>
-Synchronizes the values of the parameters in @iter with the values at the @row row
-
-If @row &amp;lt; 0 then @iter is not bound to any row of the data model it iters through.
+Orders by the @col column
 
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> the row to set @iter to
+<parameter name="col">
+<parameter_description> the column number to order from
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
@@ -11343,501 +8053,527 @@
 </return>
 </function>
 
-<function name="gda_dict_database_new">
+<function name="gda_sql_operation_operator_to_string">
 <description>
-Creates a new GdaDictDatabase object
-
+Returns: a string with the operator&apos;s name or NULL in case @op is invalid.
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="op">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a string with the operator&apos;s name or NULL in case @op is invalid.
 </return>
 </function>
 
-<function name="gda_data_model_append_row">
+<function name="gda_config_can_modify_system_config">
 <description>
-Appends a row to the data model. 
+Tells if the global (system) configuration can be modified (considering
+system permissions and settings)
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> the number of the added row, or -1 if an error occurred
+<return> TRUE if system-wide configuration can be modified
 </return>
 </function>
 
-<function name="gda_graph_query_new">
+<function name="gda_completion_list_get">
 <description>
-Creates a new #GdaGraphQuery object. This graph object is a specialized #GdaGraph object
-in the way that it always make sure it &quot;contains&quot; #GdaGraphItem objects for each target
-in @query.
-
-However, when created, the new #GdaGraphItem object will not contain any graph item; 
-but can be brought in sync with the gda_graph_query_sync_targets() method.
+Creates an array of strings (terminated by a %NULL) corresponding to possible completions.
+If no completion is available, then the returned array contains just one NULL entry, and
+if it was not possible to try to compute a completions list, then %NULL is returned.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="sql">
+<parameter_description> a partial SQL statement which is the context of the completion proposal
+</parameter_description>
+</parameter>
+<parameter name="start">
+<parameter_description> starting position within @sql of the &quot;token&quot; to complete (starts at 0)
+</parameter_description>
+</parameter>
+<parameter name="end">
+<parameter_description> ending position within @sql of the &quot;token&quot; to complete
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object
+<return> a new array of strings, or %NULL (use g_strfreev() to free the returned array)
 </return>
 </function>
 
-<function name="gda_utility_data_model_dump_data_to_xml">
+<function name="gda_holder_set_not_null">
 <description>
-Dump the data in a #GdaDataModel into a xmlNodePtr (as used in libxml).
+Sets if the holder can have a NULL value. If @not_null is TRUE, then that won&apos;t be allowed
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> 
-</parameter_description>
-</parameter>
-<parameter name="cols">
-<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="nb_cols">
-<parameter_description> the number of columns in @cols
-</parameter_description>
-</parameter>
-<parameter name="rows">
-<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
+<parameter name="not_null">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="nb_rows">
-<parameter_description> the number of rows in @rows
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_value_set_numeric">
+<description>
+Stores @val into @value.
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name to use for the XML resulting table.
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_graph_item_new">
+<function name="GdaHolder">
 <description>
-Creates a new #GdaGraphItem object
+Gets emitted when @holder is going to change its value. One can connect to
+this signal to control which values @holder can have (for example to implement some business rules)
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="holder">
+<parameter_description> the object which received the signal
 </parameter_description>
 </parameter>
-<parameter name="ref_obj">
-<parameter_description> a #GdaObject object which the new item will reference, or %NULL.
+<parameter name="new_value">
+<parameter_description> the proposed new value for @holder
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object
+<return> NULL if @holder is allowed to change its value to @new_value, or a #GError
+otherwise.
 </return>
 </function>
 
-<function name="gda_dict_load_xml_file">
+<function name="gda_data_model_set_value_at">
 <description>
-Loads an XML file which respects the Libgda DTD, and creates all the necessary
-objects that are defined within the XML file. During the creation of the other
-objects, all the normal signals are emitted.
-
-If the GdaDict object already has some contents, then it is first of all
-destroyed (to return its state as when it was first created).
-
-If an error occurs during loading then the GdaDict object is left as empty
-as when it is first created.
+Modifies a value in @model, at (@col, @row).
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> column number.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> row number.
 </parameter_description>
 </parameter>
-<parameter name="xmlfile">
-<parameter_description> the name of the file to which the XML will be written to
+<parameter name="value">
+<parameter_description> a #GValue (not %NULL)
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if loading was successfull and FALSE otherwise.
+<return> TRUE if the value in the data model has been updated and no error occurred
 </return>
 </function>
 
-<function name="gda_data_model_get_access_flags">
+<function name="gda_data_comparator_get_n_diffs">
 <description>
-Get the attributes of @model such as how to access the data it contains if it&apos;s modifiable, etc.
+Get the number of differences as computed by the last time gda_data_comparator_compute_diff() was called.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="comp">
+<parameter_description> a #GdaDataComparator object
 </parameter_description>
 </parameter>
 </parameters>
-<return> an ORed value of #GdaDataModelAccessFlags flags
+<return> the number of computed differences
 </return>
 </function>
 
-<function name="gda_dict_type_set_sqlname">
+<function name="gda_sql_operation_copy">
 <description>
-Set the SQL name of the data type.
+Creates a new #GdaSqlOperation structure initated with the values stored in @operation.
+
 
 </description>
 <parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
-</parameter_description>
-</parameter>
-<parameter name="sqlname">
-<parameter_description> 
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlOperation structure.
+</return>
 </function>
 
-<function name="gda_default_unescape_string">
+<function name="gda_data_model_iter_move_at_row_default">
 <description>
-Do the reverse of gda_default_escape_string(): transforms any &quot;\&apos;&quot; into &quot;&apos;&quot; and any
-&quot;\\&quot; into &quot;\&quot;. 
-
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> string to unescape
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new unescaped string, or %NULL in an error was found in @string
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_iter_new">
+<function name="gda_value_set_blob">
 <description>
-Creates a new GdaDataModelIter object which represents a value or a parameter.
-
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> Model used to create the #GdaDataModelIter
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
+</parameter_description>
+</parameter>
+<parameter name="blob">
+<parameter_description> a #GdaBlob structure with the data and its size to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
-</return>
+<return></return>
 </function>
 
-<function name="gda_file_save">
+<function name="gda_data_handler_get_descr">
 <description>
-Saves a chunk of data into a file.
+Get a short description of the GdaDataHandler
 
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> path for the file to be saved.
-</parameter_description>
-</parameter>
-<parameter name="buffer">
-<parameter_description> contents of the file.
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
 </parameter_description>
 </parameter>
-<parameter name="len">
-<parameter_description> size of @buffer.
+</parameters>
+<return> the description
+</return>
+</function>
+
+<function name="gda_data_model_iter_get_row">
+<description>
+Get the row which @iter represents in the data model
+
+
+</description>
+<parameters>
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful, %FALSE on error.
+<return> the row number, or -1 if @iter is invalid
 </return>
 </function>
 
-<function name="gda_handler_bin_new">
+<function name="gda_statement_serialize">
 <description>
-Creates a data handler for binary values
+Creates a string representing the contents of @stmt.
 
 
 </description>
 <parameters>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
 </parameters>
-<return> the new object
+<return> a string containing the serialized version of @stmt
 </return>
 </function>
 
-<function name="gda_dict_update_dbms_meta_data">
+<function name="gda_data_handler_get_value_from_str">
 <description>
-Updates the list of data types, functions, tables, etc from the database,
-which means that the @dict object uses an opened connection to the DBMS.
-Use gda_dict_set_connection() to set a #GdaConnection to @dict.
+Creates a new GValue which represents the STR value given as argument. This is
+the opposite of the function gda_data_handler_get_str_from_value(). The type argument
+is used to determine the real data type requested for the returned value.
+
+If the str string is NULL, then the returned GValue is of type GDA_TYPE_NULL;
+if the str string does not correspond to a valid STR string for the requested type, then
+NULL is returned.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="limit_to_type">
-<parameter_description> limit the DBMS update to this type, or 0 for no limit
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
 </parameter_description>
 </parameter>
-<parameter name="limit_obj_name">
-<parameter_description> limit the DBMS update to objects of this name, or %NULL for no limit
+<parameter name="str">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="type">
+<parameter_description> 
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error
+<return> the new GValue or NULL on error
 </return>
 </function>
 
-<function name="gda_row_get_model">
+<function name="gda_data_model_iter_get_value_for_field">
 <description>
-Gets the #GdaDataModel the given #GdaRow belongs to.
+Get the value stored at the column @field_name in @iter
 
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow.
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
+</parameter_description>
+</parameter>
+<parameter name="field_name">
+<parameter_description> the requested column name
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDataModel.
+<return> the #GValue, or %NULL
 </return>
 </function>
 
-<function name="gda_value_new_from_string">
+<function name="gda_g_type_to_string">
 <description>
-Makes a new #GValue of type @type from its string representation.
-
 
 </description>
 <parameters>
-<parameter name="as_string">
-<parameter_description> stringified representation of the value.
-</parameter_description>
-</parameter>
 <parameter name="type">
-<parameter_description> the new value type.
+<parameter_description> Type to convert from.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GValue or %NULL if the string representation
-cannot be converted to the specified @type.
+<return> the string representing the given #GType.
 </return>
 </function>
 
-<function name="gda_default_escape_string">
+<function name="gda_value_set_geometric_point">
 <description>
-Escapes @string to make it understandable by a DBMS. The escape method is very common and replaces any
-occurence of &quot;&apos;&quot; with &quot;\&apos;&quot; and &quot;\&quot; with &quot;\\&quot;.
+Stores @val into @value.
 
 </description>
 <parameters>
-<parameter name="string">
-<parameter_description> string to escape
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
+</parameter_description>
+</parameter>
+<parameter name="val">
+<parameter_description> value to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_handler_time_set_sql_spec">
+<function name="gda_set_new_from_spec_string">
 <description>
-Specifies the SQL output style of the @dh data handler. The general format is &quot;FIRSTsSECsTHIRD&quot;
-where FIRST, SEC and THIRD are specified by @first, @sec and @trird and &apos;s&apos; is the separator,
-specified by @separator.
+Creates a new #GdaSet object from the @xml_spec
+specifications
 
-The default implementation is FIRST=G_DATE_MONTH, SEC=G_DATE_DAY and THIRD=G_DATE_YEAR (the year is
-rendered on 4 digits) and the separator is &apos;-&apos;
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> a #GdaHandlerTime object
-</parameter_description>
-</parameter>
-<parameter name="first">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="sec">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="third">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="separator">
-<parameter_description>
+<parameter name="xml_spec">
+<parameter_description> a string
 </parameter_description>
 </parameter>
-<parameter name="twodigits_years">
-<parameter_description> TRUE if year part of date must be rendered on 2 digits
+<parameter name="error">
+<parameter_description> a place to store the error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
+<return> a new object, or %NULL if an error occurred
+</return>
+</function>
+
+<function name="gda_threader_cancel">
+<description>
+
+</description>
+<parameters>
+</parameters>
 <return></return>
 </function>
 
-<function name="gda_column_get_position">
+<function name="gda_holder_get_bind">
 <description>
+Get the holder which makes @holder change its value when the holder&apos;s value is changed.
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="holder">
+<parameter_description> a #GdaHolder
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the column refer to in the
-containing data model.
+<return> the #GdaHolder or %NULL
 </return>
 </function>
 
-<function name="gda_blob_op_get_length">
+<function name="gda_server_provider_perform_operation">
 <description>
-Opens an existing BLOB. The BLOB must be initialized by
-#gda_connection_create_blob or obtained from a #GValue.
-FIXME: gda_connection_create_blob() no longer exists.
+Performs the operation described by @op. Note that @op is not destroyed by this method
+and can be reused.
 
 
 </description>
 <parameters>
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object which will be used to perform the action, or %NULL
+</parameter_description>
+</parameter>
 <parameter name="op">
-<parameter_description> an existing #GdaBlobOp
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the length of the blob in bytes. In case of error, -1 is returned and the
-provider should have added an error (a #GdaConnectionEvent) to the connection.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_query_field_func_set_args">
+<function name="gda_data_access_wrapper_new">
 <description>
-Sets the argument(s) of @func. If @args is %NULL, then
-all the arguments (if there was any) are removed.
-
-If @func is not active, then no check on the provided args
-is performed.
+Creates a new #GdaDataModel object which buffers the rows of @model. This object is usefull
+only if @model can only be accessed using cursor based method.
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaQueryFieldFunc object
-</parameter_description>
-</parameter>
-<parameter name="args">
-<parameter_description> a list of #GdaQueryField objects
+<parameter name="model">
+<parameter_description> a #GdaDataModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a pointer to the newly created #GdaDataModel.
 </return>
 </function>
 
-<function name="gda_main_quit">
+<function name="gda_vconnection_hub_foreach">
 <description>
-Exits the main loop.
+Call @func for each #GdaConnection represented in @hub.
 
 </description>
 <parameters>
+<parameter name="hub">
+<parameter_description> a #GdaVconnectionHub connection
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GdaVConnectionDataModelFunc function pointer
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to @cunc calls
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_query_get_type">
+<function name="gda_data_model_append_row">
 <description>
+Appends a row to the data model (the new row will possibliy have NULL values for all columns,
+or some other values depending on the data model implementation)
+
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> the #GType of GdaDataModelQuery.
+<return> the number of the added row, or -1 if an error occurred
 </return>
 </function>
 
-<function name="gda_threader_new">
+<function name="gda_value_copy">
 <description>
-Creates a new GdaThreader object. This object class is normally not instantiated
-directly but through child classes objects&apos; intantiation
+Creates a new #GValue from an existing one.
 
 
 </description>
 <parameters>
+<parameter name="value">
+<parameter_description> value to get a copy from.
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created object
+<return> a newly allocated #GValue with a copy of the data in @value.
 </return>
 </function>
 
-<function name="gda_update_value_in_table">
+<function name="gda_utility_data_model_dump_data_to_xml">
 <description>
-This is just a convenient function to update values in a table on a given column where
-the row is fitting the given condition.
-
-The SQL command is like: UPDATE INTO table_name SET column_name = new_value WHERE search_for_column = condition
+Dump the data in a #GdaDataModel into a xmlNodePtr (as used in libxml).
 
 
 </description>
 <parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
+<parameter name="model">
+<parameter_description> a #GdaDataModel
 </parameter_description>
 </parameter>
-<parameter name="table_name">
-<parameter_description>
+<parameter name="parent">
+<parameter_description> the parent XML node
 </parameter_description>
 </parameter>
-<parameter name="search_for_column">
-<parameter_description> the name of the column to used in the WHERE condition clause
+<parameter name="cols">
+<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
 </parameter_description>
 </parameter>
-<parameter name="condition">
-<parameter_description> a GValue to used to find the value to be updated; it must correspond with the GType
-of the column used to search
+<parameter name="nb_cols">
+<parameter_description> the number of columns in @cols
 </parameter_description>
 </parameter>
-<parameter name="column_name">
-<parameter_description> the column containing the value to be updated
+<parameter name="rows">
+<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
 </parameter_description>
 </parameter>
-<parameter name="new_value">
-<parameter_description> the new value to update to; the @GValue must correspond with the GType of the column to update
+<parameter name="nb_rows">
+<parameter_description> the number of rows in @rows
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="use_col_ids">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
@@ -11845,385 +8581,456 @@
 </return>
 </function>
 
-<function name="gda_parameter_list_is_coherent">
+<function name="gda_data_model_get_access_flags">
 <description>
-Checks that @paramlist has a coherent public data structure
+Get the attributes of @model such as how to access the data it contains if it&apos;s modifiable, etc.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @paramlist is coherent
+<return> an ORed value of #GdaDataModelAccessFlags flags
 </return>
 </function>
 
-<function name="gda_dict_field_get_default_value">
+<function name="gda_handler_bin_new">
 <description>
-Get the default value for the field if ne exists
+Creates a data handler for binary values
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
-</parameter_description>
-</parameter>
 </parameters>
-<return> the default value
+<return> the new object
 </return>
 </function>
 
-<function name="gda_data_proxy_has_changed">
+<function name="gda_meta_table_column_get_attribute">
 <description>
-Tells if @proxy contains any modifications not applied to the proxied data model.
+Get the value associated to a named attribute.
+
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="tcol">
+<parameter_description> a #GdaMetaTableColumn
+</parameter_description>
+</parameter>
+<parameter name="attribute">
+<parameter_description> attribute name as a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if there are some modifications in @proxy
+<return> a read-only #GValue, or %NULL if not attribute named @attribute has been set for @column
 </return>
 </function>
 
-<function name="gda_dict_get_connection">
+<function name="gda_parse_iso8601_timestamp">
 <description>
-Fetch a pointer to the GdaConnection used by the GdaDict object.
+Extracts date and time parts from @value, and sets @timestamp&apos;s contents
+
+Accepted date format is &quot;YYYY-MM-DD HH:MM:SS[.ms][TZ]&quot; where TZ is +hour or -hour
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="timestamp">
+<parameter_description> a pointer to a #GdaTimeStamp structure which will be filled
 </parameter_description>
 </parameter>
-</parameters>
-<return> a pointer to the GdaConnection, if one has been assigned to @dict
-</return>
-</function>
-
-<function name="gda_column_get_scale">
-<description>
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="value">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of decimals of @column.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_config_get_int">
+<function name="gda_set_new_inline">
 <description>
-Gets the value of the specified configuration entry as an integer.
+Creates a new #GdaSet containing holders defined by each triplet in ...
+For each triplet (id, Glib type and value), 
+the value must be of the correct type (gchar * if type is G_STRING, ...)
+
+Note that this function is a utility function and that anly a limited set of types are supported. Trying
+to use an unsupported type will result in a warning, and the returned value holder holding a safe default
+value.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="nb">
+<parameter_description> the number of value holders which will be contained in the new #GdaSet
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a serie of a (const gchar*) id, (GType) type, and value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored at the given entry.
+<return> a new #GdaSet object
 </return>
 </function>
 
-<function name="gda_utility_build_encoded_id">
+<function name="gda_value_new_from_string">
 <description>
-Creates a BASE64 kind encoded string. It&apos;s not really a BASE64 because:
-- the characters + and / of BASE64 are replaced with - and _
-- no padding is done using the = character
+Makes a new #GValue of type @type from its string representation. 
+
+For more information
+about the string format, see the gda_value_set_from_string() function.
+This function is typically used when reading configuration files or other non-user input that should be locale 
+independent.
 
-The created string is a valid NCName XML token.
 
 </description>
 <parameters>
+<parameter name="as_string">
+<parameter_description> stringified representation of the value.
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the new value type.
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the newly created #GValue or %NULL if the string representation
+cannot be converted to the specified @type.
+</return>
 </function>
 
-<function name="gda_object_ref_replace_ref_object">
+<function name="gda_virtual_connection_internal_set_provider_data">
 <description>
-Changes the referenced object with a new one: it looks into @replacements and if the
-currently referenced object appears there as a key, then the reference is replaced with
-the corresponding value.
-
-Nothing happens if @ref is not active, or if the referenced object is not found in @replacaments.
+Note: calling this function more than once will not make it call @destroy_func on any previously
+set opaque @data, you&apos;ll have to do it yourself.
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="vcnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> an opaque structure, known only to the provider for which @vcnc is opened
 </parameter_description>
 </parameter>
-<parameter name="replacements">
-<parameter_description> a #GHashTable
+<parameter name="destroy_func">
+<parameter_description> function to call when the connection closes and @data needs to be destroyed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_value_is_null">
+<function name="gda_sql_operator_from_string">
 <description>
-Tests if a given @value is of type #GDA_TYPE_NULL.
-
+Returns: #GdaSqlOperatorType
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> value to test.
+<parameter name="op">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a boolean that says whether or not @value is of type
-#GDA_TYPE_NULL.
+<return> #GdaSqlOperatorType
 </return>
 </function>
 
-<function name="gda_server_provider_get_database">
+<function name="gda_sql_select_join_copy">
 <description>
-Proxy the call to the get_database method on the
-#GdaServerProvider class to the corresponding provider.
+Creates a new #GdaSqlSelectJoin structure initated with the values stored in @join.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object.
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the current database.
+<return> a new #GdaSqlSelectJoin structure.
 </return>
 </function>
 
-<function name="gda_query_get_join_by_targets">
+<function name="gda_value_take_binary">
 <description>
-Find a join in @query which joins the @target1 and @target2 targets
-
+Stores @val into @value, but on the contrary to gda_value_set_binary(), the @binary
+argument is not copied, but used as-is and it should be considered owned by @value.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="target1">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="value">
+<parameter_description> a #GValue that will store @val.
 </parameter_description>
 </parameter>
-<parameter name="target2">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="binary">
+<parameter_description> a #GdaBinary structure with the data and its size to be stored in @value.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryJoin object, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_model_index_get_unique_key">
+<function name="gda_sql_identifier_needs_quotes">
 <description>
+Tells if @str needs to be quoted before using it in an SQL statement. To actually add quotes,
+use gda_sql_identifier_add_quotes().
+
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a @GdaDataModelIndex.
+<parameter name="str">
+<parameter_description> an SQL identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if unique key.
+<return> TRUE if @str needs some quotes
 </return>
 </function>
 
-<function name="gda_dict_declare_object_string_id_change">
+<function name="gda_handler_time_set_sql_spec">
 <description>
-Internal function, not to be used directly.
+Specifies the SQL output style of the @dh data handler. The general format is &quot;FIRSTsSECsTHIRD&quot;
+where FIRST, SEC and THIRD are specified by @first, @sec and @trird and &apos;s&apos; is the separator,
+specified by @separator.
+
+The default implementation is FIRST=G_DATE_MONTH, SEC=G_DATE_DAY and THIRD=G_DATE_YEAR (the year is
+rendered on 4 digits) and the separator is &apos;-&apos;
 
 </description>
 <parameters>
-<parameter name="dict">
+<parameter name="dh">
+<parameter_description> a #GdaHandlerTime object
+</parameter_description>
+</parameter>
+<parameter name="first">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="sec">
 <parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="obj">
+<parameter name="third">
 <parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="oldid">
+<parameter name="separator">
 <parameter_description>
 </parameter_description>
 </parameter>
+<parameter name="twodigits_years">
+<parameter_description> TRUE if year part of date must be rendered on 2 digits
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_proxy_get_sample_end">
+<function name="gda_column_get_position">
 <description>
-Get the row number of the last row to be displayed.
-
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of the last row being displayed.
+<return> the position of the column refer to in the
+containing data model.
 </return>
 </function>
 
-<function name="gda_server_provider_add_savepoint">
+<function name="gda_blob_op_get_length">
 <description>
+Opens an existing BLOB. The BLOB must be initialized by
+#gda_connection_create_blob or obtained from a #GValue.
+FIXME: gda_connection_create_blob() no longer exists.
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter name="op">
+<parameter_description> an existing #GdaBlobOp
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
+</parameters>
+<return> the length of the blob in bytes. In case of error, -1 is returned and the
+provider should have added an error (a #GdaConnectionEvent) to the connection.
+</return>
+</function>
+
+<function name="gda_data_comparator_set_key_columns">
+<description>
+Defines the columns which will be used as a key when searching data. This is not mandatory but
+will speed things up as less data will be processed.
+
+</description>
+<parameters>
+<parameter name="comp">
+<parameter_description> a #GdaDataComparator object
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name of the savepoint to add
+<parameter name="nb_cols">
+<parameter_description> the size of the @col_numbers array
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter name="col_numbers">
+<parameter_description> a array of @nb_cols values
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_field_func_new">
+<function name="gda_sql_expr_take_select">
 <description>
-Creates a new GdaQueryFieldFunc object which represents the @func_name function
+Sets the expression&apos;s parent to the #GdaSqlStatementSelect holded by @stmt. After
+calling this function @stmt is freed.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery in which the new object will be
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
-<parameter name="func_name">
-<parameter_description> the name of the function to use
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement holding the #GdaSqlStatementSelect to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_save">
+<function name="gda_data_proxy_row_has_changed">
 <description>
-Saves the contents of a GdaDict object to a file which is specified using the
-gda_dict_set_xml_filename() method.
+Tells if the row number @proxy_row has changed
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="proxy_row">
+<parameter_description> A proxy row number
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if saving was successfull and FALSE otherwise.
+<return>
 </return>
 </function>
 
-<function name="gda_query_target_get_alias">
+<function name="gda_update_value_in_table">
 <description>
-Get @target&apos;s alias
+This is just a convenient function to update values in a table on a given column where
+the row is fitting the given condition.
+
+The SQL command is like: UPDATE INTO table_name SET column_name = new_value WHERE search_for_column = condition
 
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="cnc">
+<parameter_description> an opened connection
+</parameter_description>
+</parameter>
+<parameter name="table_name">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="search_for_column">
+<parameter_description> the name of the column to used in the WHERE condition clause
+</parameter_description>
+</parameter>
+<parameter name="condition">
+<parameter_description> a GValue to used to find the value to be updated; it must correspond with the GType
+of the column used to search
+</parameter_description>
+</parameter>
+<parameter name="column_name">
+<parameter_description> the column containing the value to be updated
+</parameter_description>
+</parameter>
+<parameter name="new_value">
+<parameter_description> the new value to update to; the @GValue must correspond with the GType of the column to update
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the alias
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_function_get_sqlname">
+<function name="gda_data_proxy_has_changed">
 <description>
-Get the DBMS&apos;s name of a data type.
+Tells if @proxy contains any modifications not applied to the proxied data model.
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the data type
+<return> TRUE if there are some modifications in @proxy
 </return>
 </function>
 
-<function name="gda_provider_info_copy">
+<function name="gda_connection_perform_operation">
 <description>
-Creates a new #GdaProviderInfo structure from an existing one.
+Performs the operation described by @op (which should have been created using
+gda_connection_create_operation()). It is a wrapper around the gda_server_provider_perform_operation()
+method.
 
 
 </description>
 <parameters>
-<parameter name="src">
-<parameter_description> provider information to get a copy from.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaProviderInfo with contains a copy of 
-information in @src.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_server_provider_commit_transaction">
+<function name="gda_connection_commit_transaction">
 <description>
+Commits the given transaction to the backend database. You need to call
+gda_connection_begin_transaction() first.
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description>
-</parameter_description>
-</parameter>
 <parameter name="cnc">
-<parameter_description>
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 <parameter name="name">
-<parameter_description> the name of the transation to commit
+<parameter_description> the name of the transation to commit, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -12231,134 +9038,134 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> %TRUE if the transaction was finished successfully,
+%FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_server_operation_new">
+<function name="gda_data_model_bdb_clean_errors">
 <description>
-Creates a new #GdaServerOperation object from the @xml_file specifications
-
-The @xml_file must respect the DTD described in the &quot;libgda-server-operation.dtd&quot; file: its top
-node must be a &amp;lt;serv_op&amp;gt; tag.
-
+Reset the list of errors which have occurred while using @model
 
 </description>
 <parameters>
-<parameter name="xml_file">
-<parameter_description> a file which has the specifications for the GdaServerOperation object to create
+<parameter name="model">
+<parameter_description> a #GdaDataModelBdb object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaServerOperation object
-</return>
+<return></return>
 </function>
 
-<function name="gda_config_remove_section">
+<function name="gda_data_select_get_stored_row">
 <description>
-Removes the given section from the configuration database.
+Get the #GdaRow object stored within @model at row @rownum (without taking care of removed rows)
+
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration section.
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
+</parameter_description>
+</parameter>
+<parameter name="rownum">
+<parameter_description> &quot;external&quot; advertized row number
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the requested #GdaRow, or %NULL if not found
+</return>
 </function>
 
-<function name="gda_data_proxy_delete">
+<function name="gda_handler_time_get_no_locale_str_from_value">
 <description>
-Marks the row @proxy_row to be deleted
+Retunrs: a new string representing @value without taking the current
+locele into account
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="hdl">
+<parameter_description> a #GdaHandlerTime object
 </parameter_description>
 </parameter>
-<parameter name="proxy_row">
-<parameter_description> A proxy row number
+<parameter name="value">
+<parameter_description> a GValue value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_connection_add_event">
+<function name="gda_meta_store_get_version">
 <description>
-Adds an event to the given connection. This function is usually
-called by providers, to inform clients of events that happened
-during some operation.
-
-As soon as a provider (or a client, it does not matter) calls this
-function with an @event object which is an error,
-the connection object (and the associated #GdaClient object)
-emits the &quot;error&quot; signal, to which clients can connect to be
-informed of events.
+Get @store&apos;s internal schema&apos;s version
 
-WARNING: the reference to the @event object is stolen by this function!
+Retunrs: the version (1 at the moment)
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
-</parameter_description>
-</parameter>
-<parameter name="event">
-<parameter_description> is stored internally, so you don&apos;t need to unref it.
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_database_get_tables_fk_constraints">
+<function name="gda_server_operation_new">
 <description>
-Get a list of all the constraints applied to the database which represent a foreign key constrains, between
- table1 and @table2. If @table1 or @table2 are %NULL, then the returned foreign key constraints are the ones
-between any table and @table1 or @table2.
+IMPORTANT NOTE: Using this funtion is not the recommended way of creating a #GdaServerOperation object, the
+correct way is to use gda_server_provider_create_operation(); this method is reserved for internal implementation.
+
+Creates a new #GdaServerOperation object from the @xml_file specifications
 
-Constraints are represented as #GdaDictConstraint objects.
+The @xml_file must respect the DTD described in the &quot;libgda-server-operation.dtd&quot; file: its top
+node must be a &amp;lt;serv_op&amp;gt; tag.
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-<parameter name="table1">
-<parameter_description> a #GdaDictTable, or %NULL
+<parameter name="xml_file">
+<parameter_description> a file which has the specifications for the GdaServerOperation object to create
 </parameter_description>
 </parameter>
-<parameter name="table2">
-<parameter_description> a #GdaDictTable, or %NULL
+</parameters>
+<return> a new #GdaServerOperation object
+</return>
+</function>
+
+<function name="gda_data_proxy_delete">
+<description>
+Marks the row @proxy_row to be deleted
+
+</description>
+<parameters>
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="table1_has_fk">
-<parameter_description> TRUE if the returned constraints are the one for which @table1 contains the foreign key
+<parameter name="proxy_row">
+<parameter_description> A proxy row number
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of the constraints
-</return>
+<return></return>
 </function>
 
-<function name="gda_dict_table_is_view">
+<function name="gda_sql_select_target_new">
 <description>
-Does the object represent a view rather than a table?
+Creates a new #GdaSqlSelectTarget structure and sets its parent to @parent. A
+#GdaSqlSelectTarget is the table in a SELECT statement.
 
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
+<parameter name="parent">
+<parameter_description> a #GdaSqlSelectFrom
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if it is a view
+<return> a new #GdaSqlSelectTarget structure.
 </return>
 </function>
 
@@ -12396,27 +9203,32 @@
 <return></return>
 </function>
 
-<function name="gda_server_provider_close_connection">
+<function name="gda_set_get_holder">
 <description>
+Finds a #GdaHolder using its ID
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description>
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description>
+<parameter name="holder_id">
+<parameter_description> the ID of the requested value holder
 </parameter_description>
 </parameter>
 </parameters>
-<return>
-
+<return> a #GdaHolder or %NULL
 </return>
 </function>
 
 <function name="gda_connection_event_get_sqlstate">
 <description>
+Get the SQLSTATE value of @event. Even though the SQLSTATE values are specified by ANSI SQL and ODBC,
+consult each DBMS for the possible values. However, the &quot;00000&quot; (success) value means that there is no error,
+and the &quot;HY000&quot; (general error) value means an error but no better error code available.
+
 
 </description>
 <parameters>
@@ -12429,91 +9241,87 @@
 </return>
 </function>
 
-<function name="gda_delimiter_parse">
+<function name="gda_holder_set_bind">
 <description>
-Generate #GdaDelimiterStatement which is an in memory a structure of the 
- sqlquery in an easy to use way. It basically makes chuncks of string and
-identifies required parameters.
+Sets @holder to change when @bind_to changes (and does not make @bind_to change when @holder changes).
 
+If @bind_to is %NULL, then @holder will not be bound anymore.
 
 </description>
 <parameters>
-<parameter name="sqlquery">
-<parameter_description> A SQL query string. ie SELECT * FROM FOO
+<parameter name="holder">
+<parameter_description> a #GdaHolder
+</parameter_description>
+</parameter>
+<parameter name="bind_to">
+<parameter_description> a #GdaHolder or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> A generated GdaDelimiterStatement or %NULL on error.
-</return>
-</function>
-
-<function name="tranerror">
-<description>
-Internal function for displaying error messages used by the lexer parser.
-
-</description>
-<parameters>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_get_xml_filename">
+<function name="gda_sql_function_new">
 <description>
-Get the filename @dict will use when gda_dict_save_xml() and gda_dict_load_xml() are called.
+Creates a new #GdaSqlFunction structure initated.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the filename, or %NULL if none have been set.
+<return> a new #GdaSqlFunction structure.
 </return>
 </function>
 
-<function name="gda_query_field_new_from_sql">
+<function name="gda_xa_transaction_rollback">
 <description>
-Creates a new #GdaQueryField from its SQL representation
+Cancels a distributed transaction (managed by @xa_trans). 
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="sqlfield">
-<parameter_description> a SQL statement representing a query field
+<parameter name="xa_trans">
+<parameter_description> a #GdaXaTransaction object
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaQueryField object, or %NULL if an error occurred
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_data_handler_get_g_type_index">
+<function name="gda_server_provider_get_default_dbms_type">
 <description>
-Get the GType handled by the GdaDataHandler, at the given position (starting at zero).
+Get the name of the most common data type which has @type type.
+
+The returned value may be %NULL either if the provider does not implement that method, or if
+there is no DBMS data type which could contain data of the @g_type type (for example %NULL may be
+returned if a DBMS has integers only up to 4 bytes and a G_TYPE_INT64 is requested).
 
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
+<parameter name="provider">
+<parameter_description> a server provider.
 </parameter_description>
 </parameter>
-<parameter name="index">
-<parameter_description> 
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object or %NULL
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> a #GType value type
 </parameter_description>
 </parameter>
 </parameters>
-<return> the GType
+<return> the name of the DBMS type, or %NULL
 </return>
 </function>
 
@@ -12533,41 +9341,25 @@
 </return>
 </function>
 
-<function name="gda_config_set_string">
+<function name="gda_value_stringify">
 <description>
-Sets the given configuration entry to contain a string.
-
-
-</description>
-<parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
-</parameter_description>
-</parameter>
-<parameter name="new_value">
-<parameter_description> new value.
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error occurred
-</return>
-</function>
+Converts a GValue to its string representation which is a human readable value. Note that the
+returned string does not take into account the current locale of the user (on the contrary to the
+#GdaDataHandler objects). Using this function should be limited to debugging and values serialization
+purposes.
 
-<function name="gda_connection_get_events">
-<description>
-Retrieves a list of the last errors occurred during the connection.
-You can make a copy of the list using #gda_connection_event_list_copy.
+Dates are converted in a YYYY-MM-DD format.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection.
+<parameter name="value">
+<parameter_description> a #GValue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a GList of #GdaConnectionEvent.
-
+<return> a new string, or %NULL if the conversion cannot be done. Free the value with a g_free() when you&apos;ve finished
+using it. 
 </return>
 </function>
 
@@ -12588,24 +9380,6 @@
 </return>
 </function>
 
-<function name="gda_dict_type_add_synonym">
-<description>
-Sets a new synonym to the @dt data type.
-
-</description>
-<parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
-</parameter_description>
-</parameter>
-<parameter name="synonym">
-<parameter_description>
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gda_data_proxy_undelete">
 <description>
 Remove the &quot;to be deleted&quot; mark at the row @proxy_row, if it existed.
@@ -12640,24 +9414,6 @@
 </return>
 </function>
 
-<function name="gda_query_condition_get_ref_objects_all">
-<description>
-Get a complete list of the objects referenced by @cond, 
-including its descendants (unlike the gda_referer_get_ref_objects()
-function applied to @cond).
-
-
-</description>
-<parameters>
-<parameter name="cond">
-<parameter_description> a #GdaQueryCondition object
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new list of referenced objects
-</return>
-</function>
-
 <function name="gda_data_handler_get_nb_g_types">
 <description>
 Get the number of GType types the GdaDataHandler can handle correctly
@@ -12674,17 +9430,16 @@
 </return>
 </function>
 
-<function name="gda_data_proxy_is_read_only">
+<function name="gda_vprovider_hub_new">
 <description>
+Creates a new GdaVirtualProvider object which allows one to 
+add and remove GdaDataModel objects as tables within a connection
+
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
 </parameters>
-<return> TRUE if the proxied data model is itself read-only
+<return> a new #GdaVirtualProvider object.
 </return>
 </function>
 
@@ -12730,29 +9485,6 @@
 </return>
 </function>
 
-<function name="gda_delimiter_parse_with_error">
-<description>
-Generates a list of #GdaDelimiterStatement which is an in memory a structure of the 
- sqlquery in an easy to use way. It basically makes chuncks of string and
-identifies required parameters. There is one #GdaDelimiterStatement for every
-chunck of string separated by a semicolon.
-
-
-</description>
-<parameters>
-<parameter name="sqlquery">
-<parameter_description> A SQL query string. ie SELECT * FROM FOO
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place where to store an error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> A list of generated GdaDelimiterStatement or %NULL on error.
-</return>
-</function>
-
 <function name="gda_column_get_auto_increment">
 <description>
 
@@ -12775,6 +9507,10 @@
 &amp;lt;itemizedlist&amp;gt;
 &amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;SEPARATOR&quot;: a string value of which the first character is used as a separator in case of CSV export
 &amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;QUOTE&quot;: a string value of which the first character is used as a quote character in case of CSV export
+&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;FIELD_QUOTE&quot;: a boolean value which can be set to FALSE if no quote around the individual fields 
+is requeted, in case of CSV export&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
 &amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;NAME&quot;: a string value used to name the exported data if the export format is XML&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
 &amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;OVERWRITE&quot;: a boolean value which tells if the file must be over-written if it already exists.
 &amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
@@ -12824,24 +9560,6 @@
 </return>
 </function>
 
-<function name="gda_value_set_list">
-<description>
-Stores @val into @value.
-
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue that will store @val.
-</parameter_description>
-</parameter>
-<parameter name="val">
-<parameter_description> value to be stored in @value.
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gda_server_operation_get_value_at">
 <description>
 Get the value for the node at the path formed using @path_format and ... (the rules are the same as
@@ -12868,58 +9586,54 @@
 </return>
 </function>
 
-<function name="gda_dict_constraint_get_table">
+<function name="gda_get_application_exec_path">
 <description>
-Get the table to which the constraint is attached
+Find the path to the application identified by @app_name. For example if the application
+is &quot;gda-sql&quot;, then calling this function will return
+&quot;/your/prefix/bin/gda-sql-4.0&quot; if Libgda is installed in
+the &quot;/your/prefix&quot; prefix (which would usually be &quot;/usr&quot;), and for the ABI version 4.0.
 
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="app_name">
+<parameter_description> the name of the application to find
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDictTable
+<return> the path as a new string, or %NULL if the application cannot be found
 </return>
 </function>
 
-<function name="gda_dict_assume_object">
+<function name="gda_identifier_hash">
 <description>
-Declares the existence of a new object to @dict, and force @dict to hold a reference to @object so it is not
-destroyed.
+computes a hash string from @id, to be used in hash tables as a #GHashFunc
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
+<parameter name="id">
+<parameter_description> an identifier string
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new hash
+</return>
 </function>
 
-<function name="gda_parameter_list_find_node_for_param">
+<function name="gda_holder_set_value_to_default">
 <description>
-Finds a #GdaParameterListNode holding information for @param, don&apos;t modify the returned structure
+Set @holder&apos;s value to its default value.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaParameterListNode or %NULL
+<return> TRUE if @holder has got a default value
 </return>
 </function>
 
@@ -12943,39 +9657,55 @@
 </return>
 </function>
 
-<function name="gda_data_model_index_set_unique_key">
+<function name="gda_connection_event_get_gda_code">
 <description>
-Sets if a #GdaDataModelIndex is a unique key.
+Retreive the code associated to @event.
+
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="uk">
-<parameter_description> the new primary key setting of @dmi.
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GdaConnectionEventCode event&apos;s code
+</return>
 </function>
 
-<function name="input">
+<function name="gda_sql_select_order_new">
 <description>
- see tran_switch_to_buffer
+Creates a new #GdaSqlSelectOrder structure and sets its parent to @parent.
+
 
 </description>
 <parameters>
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlSelectOrder structure
+</return>
 </function>
 
-<function name="gda_utility_table_field_attrs_stringify">
+<function name="gda_data_model_row_removed">
 <description>
+Emits the &apos;row_removed&apos; and &apos;changed&apos; signal on @model.
+
+This method should only be used by #GdaDataModel implementations to 
+signal that a row has been removed
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> row number.
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
@@ -13000,22 +9730,67 @@
 </return>
 </function>
 
-<function name="gda_config_can_modify_global_config">
+<function name="gda_data_proxy_append">
 <description>
-Tells if the calling program can modify the global configured
-data sources.
+Appends a new row to the proxy. The operation can fail if either:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;The INSERT operation is not accepted by the proxied data model&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;There is an unknown number of rows in the proxy&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
 </parameters>
-<return> TRUE if modifications are possible
+<return> the proxy row number of the new row, or -1 if the row could not be appended
 </return>
 </function>
 
-<function name="gda_data_proxy_append">
+<function name="gda_server_provider_create_parser">
+<description>
+Creates a new #GdaSqlParser object which is adapted to @provider (and possibly depending on
+ cnc for the actual database version).
+
+If @prov does not have its own parser, then %NULL is returned, and a general SQL parser can be obtained
+using gda_sql_parser_new().
+
+
+</description>
+<parameters>
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider provider object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GdaSqlParser object, or %NULL.
+</return>
+</function>
+
+<function name="gda_sql_select_target_free">
+<description>
+Frees a #GdaSqlSelectTarget structure and its members.
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure to be freed
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_data_proxy_apply_row_changes">
 <description>
-Appends a new row to the proxy
+Commits the modified data in the proxy back into the #GdaDataModel.
 
 
 </description>
@@ -13024,469 +9799,640 @@
 <parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
+<parameter name="proxy_row">
+<parameter_description> the row number to commit
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> place to store the error, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> TRUE if no error occurred.
+</return>
+</function>
+
+<function name="gda_data_model_bdb_new">
+<description>
+Creates a new #GdaDataModel object to access the contents of the Berkeley DB file @file,
+for the database @db_name if not %NULL
+
+
+</description>
+<parameters>
+<parameter name="filename">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="db_name">
+<parameter_description> the name of the database within @filename, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GdaDataModel
+</return>
+</function>
+
+<function name="gda_meta_store_schema_add_custom_object">
+<description>
+The internal database used by @store can be &apos;augmented&apos; with some user-defined database objects
+(such as tables or views). This method allows one to add a new database object.
+
+If the internal database already contains the object, then:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the object is equal to the provided description then TRUE is returned&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the object exists but differs from the provided description, then FALSE is returned,
+with the GDA_META_STORE_SCHEMA_OBJECT_CONFLICT_ERROR error code&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
+The @xml_description defines the table of view&apos;s definition, for example:
+&amp;lt;programlisting&amp;gt;&amp;lt;![CDATA[&amp;lt;table name=&quot;mytable&quot;&amp;gt;
+    &amp;lt;column name=&quot;id&quot; pkey=&quot;TRUE&quot;/&amp;gt;
+    &amp;lt;column name=&quot;value&quot;/&amp;gt;
+&amp;lt;/table&amp;gt;]]&amp;gt;&amp;lt;/programlisting&amp;gt;
+
+The partial DTD for this XML description of the object to add is the following (the top node must be
+a &amp;lt;table&amp;gt; or a &amp;lt;view&amp;gt;):
+&amp;lt;programlisting&amp;gt;&amp;lt;![CDATA[&amp;lt;!ELEMENT table (column*,check*,fkey*,unique*)&amp;gt;
+&amp;lt;!ATTLIST table
+          name NMTOKEN #REQUIRED&amp;gt;
+
+&amp;lt;!ELEMENT column EMPTY&amp;gt;
+&amp;lt;!ATTLIST column
+          name NMTOKEN #REQUIRED
+          type CDATA #IMPLIED
+          pkey (TRUE|FALSE) #IMPLIED
+          autoinc (TRUE|FALSE) #IMPLIED
+          nullok (TRUE|FALSE) #IMPLIED&amp;gt;
+
+&amp;lt;!ELEMENT check (#PCDATA)&amp;gt;
+
+&amp;lt;!ELEMENT fkey (part+)&amp;gt;
+&amp;lt;!ATTLIST fkey
+          ref_table NMTOKEN #REQUIRED&amp;gt;
+
+&amp;lt;!ELEMENT part EMPTY&amp;gt;
+&amp;lt;!ATTLIST part
+          column NMTOKEN #IMPLIED
+          ref_column NMTOKEN #IMPLIED&amp;gt;
+
+&amp;lt;!ELEMENT unique (column*)&amp;gt;
+
+&amp;lt;!ELEMENT view (definition)&amp;gt;
+&amp;lt;!ATTLIST view
+          name NMTOKEN #REQUIRED
+          descr CDATA #IMPLIED&amp;gt;
+
+&amp;lt;!ELEMENT definition (#PCDATA)&amp;gt;]]&amp;gt;&amp;lt;/programlisting&amp;gt;
+
+
+</description>
+<parameters>
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
+</parameter_description>
+</parameter>
+<parameter name="xml_description">
+<parameter_description> an XML description of the table or view to add to @store
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> the proxy row number of the new row
+<return> TRUE if the new object has sucessfully been added
 </return>
 </function>
 
-<function name="gda_query_target_set_alias">
+<function name="gda_connection_add_prepared_statement">
 <description>
-Sets @target&apos;s alias to @alias
+Declares that @prepared_stmt is a prepared statement object associated to @gda_stmt within the connection
+(meaning the connection increments the reference counter of @prepared_stmt).
+
+If @gda_stmt changes or is destroyed, the the association will be lost and the connection will lose the
+reference it has on @prepared_stmt.
 
 </description>
 <parameters>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="alias">
-<parameter_description> the alias
+<parameter name="gda_stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
+<parameter name="prepared_stmt">
+<parameter_description> a prepared statement object (as a #GdaPStmt object, or more likely a descendant)
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_get_field_by_sql_naming">
+<function name="gda_value_get_time">
 <description>
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="sql_name">
-<parameter_description> the SQL naming for the requested field
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> the value stored in @value.
 </return>
 </function>
 
-<function name="gda_command_get_text">
+<function name="gda_lockable_trylock">
 <description>
-Gets the command text held by @cmd.
+Tries to lock @lockable. If it is already locked by another thread, then it immediately returns FALSE, otherwise
+it locks @lockable.
+
+This function can be used even if g_thread_init() has not yet been called, and, in that case, will do nothing.
+
+Note: unlike g_mutex_lock(), this method recursive, which means a thread can lock @lockable several times 
+(and has to unlock it as many times to actually unlock it).
 
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="lockable">
+<parameter_description> a #GdaLockable object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the command string of @cmd.
+<return> TRUE if the object has successfully been locked.
 </return>
 </function>
 
-<function name="gda_data_proxy_apply_row_changes">
+<function name="gda_server_operation_get_sequence_max_size">
 <description>
-Commits the modified data in the proxy back into the #GdaDataModel.
-
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-<parameter name="proxy_row">
-<parameter_description> the row number to commit
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> place to store the error, or %NULL
+<parameter name="path">
+<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred.
+<return> the maximum number of items in the sequence at @path, or 0 if @path is not a sequence node
 </return>
 </function>
 
-<function name="gda_log_enable">
+<function name="gda_server_operation_get_sequence_size">
 <description>
-Enables GDA logs.
 
 </description>
 <parameters>
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the number of items in the sequence at @path, or 0 if @path is not a sequence node
+</return>
 </function>
 
-<function name="gda_data_model_signal_emit_changed">
+<function name="gda_quark_list_free">
 <description>
-Notifies listeners of the given data model object of changes
-in the underlying data. Listeners usually will connect
-themselves to the &quot;changed&quot; signal in the #GdaDataModel
-class, thus being notified of any new data being appended
-or removed from the data model.
+Releases all memory occupied by the given #GdaQuarkList.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="qlist">
+<parameter_description> a #GdaQuarkList.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_config_set_boolean">
+<function name="gda_server_operation_add_node_to_sequence">
 <description>
-Sets the given configuration entry to contain a boolean.
-
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="new_value">
-<parameter_description> new value.
+<parameter name="seq_path">
+<parameter_description> the path to the sequence to which an item must be added (like &quot;/SEQ_NAME&quot; for instance)
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> the index of the new entry in the sequence (like 5 for example if a 6th item has
+been added to the sequence.
 </return>
 </function>
 
-<function name="gda_query_join_new_copy">
+<function name="gda_virtual_connection_open">
 <description>
-Copy constructor
+Creates and opens a new virtual connection using the @virtual_provider provider
 
 
 </description>
 <parameters>
-<parameter name="orig">
-<parameter_description> a #GdaQueryJoin to make a copy of
+<parameter name="virtual_provider">
+<parameter_description> a #GdaVirtualProvider object
 </parameter_description>
 </parameter>
-<parameter name="replacements">
-<parameter_description> a hash table to store replacements, or %NULL
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a the new copy of @orig
+<return> a new #GdaConnection object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_query_condition_leaf_set_left_op">
+<function name="gda_connection_statement_execute_non_select">
 <description>
-Sets one of @condition&apos;s operators
+Executes a non-selection statement on the given connection. The gda_execute_non_select_command() method can be easier
+to use if one prefers to use some SQL directly.
+
+This function returns the number of rows affected by the execution of @stmt, or -1
+if an error occurred, or -2 if the connection&apos;s provider does not return the number of rows affected.
+
+This function is just a convenience function around the gda_connection_statement_execute()
+function. 
+See the documentation of the gda_connection_statement_execute() for information
+about the @params list of parameters.
+
+See gda_connection_statement_execute() form more information about @last_insert_row.
+
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="op">
-<parameter_description> which oparetor is concerned
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object.
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> a # GdaQueryField object
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="last_insert_row">
+<parameter_description> a place to store a new #GdaSet object which contains the values of the last inserted row, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of rows affected (&amp;gt;=0) or -1 or -2 
+</return>
 </function>
 
-<function name="gda_value_get_time">
+<function name="gda_sql_identifier_add_quotes">
 <description>
+Add double quotes around the @str identifier. Use the gda_sql_identifier_needs_quotes()
+function to tell if an identifier needs to be quoted.
+
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
+<parameter name="str">
+<parameter_description> an SQL identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored in @value.
+<return> a new string
 </return>
 </function>
 
-<function name="gda_server_operation_get_sequence_max_size">
+<function name="gda_data_proxy_new">
 <description>
+Creates a new proxy for @model
+
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
+<parameter name="model">
+<parameter_description> Data model to be proxied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the maximum number of items in the sequence at @path, or 0 if @path is not a sequence node
+<return> a new #GdaDataProxy object
 </return>
 </function>
 
-<function name="gda_server_operation_get_sequence_size">
+<function name="gda_data_proxy_cancel_row_changes">
 <description>
+Resets data at the corresponding row and column. If @proxy_row corresponds to a new row, then
+that new row is deleted from @proxy.
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
+<parameter name="proxy_row">
+<parameter_description> the row to cancel changes
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> the column to cancel changes, or less than 0 to cancel any change on the @row row
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of items in the sequence at @path, or 0 if @path is not a sequence node
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_field_value_set_dict_type">
+<function name="gda_data_model_row_updated">
 <description>
-Set the #GdaDictType type of @field
+Emits the &apos;row_updated&apos; and &apos;changed&apos; signals on @model.
+
+This method should only be used by #GdaDataModel implementations to 
+signal that a row has been updated.
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #GdaDictType object, or %NULL
+<parameter name="row">
+<parameter_description> row number.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_field_new">
+<function name="gda_holder_set_default_value">
 <description>
-Creates a new #GdaQueryFieldField object which represents a given field.
- field can be among the following forms:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;field_name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;table_name.field_name&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Sets the default value within the holder. If @value is %NULL then @holder won&apos;t have a
+default value anymore. To set a default value to %NULL, then pass a #GValue created using
+gda_value_new_null().
 
+NOTE: the default value does not need to be of the same type as the one required by @holder.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery in which the new object will be
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> the name of the field to represent
+<parameter name="value">
+<parameter_description> a value to set the holder&apos;s default value, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
-</return>
+<return></return>
 </function>
 
-<function name="gda_quark_list_free">
+<function name="gda_data_model_iter_get_value_at">
 <description>
-Releases all memory occupied by the given #GdaQuarkList.
+Get the value stored at the column @col in @iter. The returned value must not be modified.
+
 
 </description>
 <parameters>
-<parameter name="qlist">
-<parameter_description> a #GdaQuarkList.
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
+</parameter_description>
+</parameter>
+<parameter name="col">
+<parameter_description> the requested column
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GValue, or %NULL if the value could not be fetched
+</return>
 </function>
 
-<function name="gda_server_operation_add_node_to_sequence">
+<function name="gda_meta_store_set_attribute_value">
 <description>
+Set the value of the attribute named @att_name to @att_value; see gda_meta_store_get_attribute_value() for
+more information.
+
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="seq_path">
-<parameter_description> the path to the sequence to which an item must be added (like &quot;/SEQ_NAME&quot; for instance)
+<parameter name="att_name">
+<parameter_description> name of the attribute to set
+</parameter_description>
+</parameter>
+<parameter name="att_value">
+<parameter_description> value of the attribute to set, or %NULL to unset the attribute
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the index of the new entry in the sequence (like 5 for example if a 6th item has
-been added to the sequence.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_object_set_description">
+<function name="Find">
 <description>
-Sets the description of the GdaObject object. If the description is changed, then the 
-&quot;descr_changed&quot; signal is emitted.
-
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-<parameter name="descr">
-<parameter_description> 
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_proxy_new">
+<function name="gda_data_model_get_n_rows">
 <description>
-Creates a new proxy for @model
-
 
 </description>
 <parameters>
 <parameter name="model">
-<parameter_description> Data model to be proxied
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaDataProxy object
+<return> the number of rows in the given data model, or -1 if the number of rows is not known
 </return>
 </function>
 
-<function name="gda_column_get_caption">
+<function name="gda_mutex_trylock">
 <description>
+Returns: TRUE, if @m could be locked.
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="m">
+<parameter_description> a #GdaMutex
 </parameter_description>
 </parameter>
 </parameters>
-<return> @column&apos;s caption.
+<return> TRUE, if @m could be locked.
 </return>
 </function>
 
-<function name="gda_server_provider_get_schema">
+<function name="gda_pstmt_get_type">
 <description>
-Get a #GdaDataModel containing the requested information. See &amp;lt;link linkend=&quot;libgda-provider-get-schema&quot;&amp;gt;this section&amp;lt;/link&amp;gt; for more 
-information on the columns of the returned #GdaDataModel depending on requested @schema, and for the possible
-parameters of @params, see the
-&amp;lt;link linkend=&quot;libgda-provider-get-schema&quot;&amp;gt;get_schema() virtual method for providers&amp;lt;/link&amp;gt; for more details.
+
+</description>
+<parameters>
+</parameters>
+<return> the #GType of GdaPStmt.
+</return>
+</function>
+
+<function name="gda_set_add_holder">
+<description>
+Adds @holder to the list of holders managed within @set.
+
+NOTE: if @set already has a #GdaHolder with the same ID as @holder, then @holder
+will not be added to the set (even if @holder&apos;s type or value is not the same as the
+one already in @set).
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="schema">
-<parameter_description> the requested kind of information
+</parameters>
+<return> TRUE if @holder has been added to @set (and FALSE if it has not been added because there is another #GdaHolder
+with the same ID)
+</return>
+</function>
+
+<function name="gda_data_model_reset">
+<description>
+Emits the &apos;reset&apos; and &apos;changed&apos; signal on @model.
+
+</description>
+<parameters>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> optional parameters
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_binary_copy">
+<description>
+Creates a new #GdaBinary structure from an existing one.
+
+
+</description>
+<parameters>
+<parameter name="boxed">
+<parameter_description> source to get a copy from.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaDataModel, or %NULL if an error occurred.
+<return> a newly allocated #GdaBinary which contains a copy of
+information in @boxed.
 </return>
 </function>
 
-<function name="gda_data_model_row_updated">
+<function name="gda_column_set_description">
 <description>
-Emits the &apos;row_updated&apos; and &apos;changed&apos; signals on @model.
+Sets the column&apos;s description
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> row number.
+<parameter name="title">
+<parameter_description> title name.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_index_get_table_name">
+<function name="gda_server_provider_render_operation">
 <description>
+Creates an SQL statement (possibly using some specific extensions of the DBMS) corresponding to the
+ op operation. Note that the returned string may actually contain more than one SQL statement.
+
+This function&apos;s purpose is mainly informative to get the actual SQL code which would be executed to perform
+the operation; to actually perform the operation, use gda_server_provider_perform_operation().
+
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object which will be used to render the action, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the table name of @dmi.
+<return> a new string, or %NULL if an error occurred or operation cannot be rendered as SQL.
 </return>
 </function>
 
-<function name="gda_dict_function_get_arg_dict_types">
+<function name="gda_server_provider_get_server_version">
 <description>
-To consult the list of arguments types (and number) of a function.
+Get the version of the database to which the connection is opened.
 
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a #GdaDictFunction object
+<parameter name="provider">
+<parameter_description> a #GdaServerProvider object.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a list of #GdaDictType objects, the list MUST NOT be modified.
-</return>
-</function>
-
-<function name="gda_data_model_get_n_rows">
-<description>
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of rows in the given data model, or -1 if the number of rows is not known
+<return> a (read only) string, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_client_begin_transaction">
+<function name="gda_data_model_array_get_row">
 <description>
-Starts a transaction on all connections being managed by the given
-#GdaClient. It is important to note that this operates on all
-connections opened within a #GdaClient, which could not be what
-you&apos;re looking for.
-
-To execute a transaction on a unique connection, use
-#gda_connection_begin_transaction, #gda_connection_commit_transaction
-and #gda_connection_rollback_transaction.
+Get a pointer to a row in @model
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to start
+<parameter name="model">
+<parameter_description> a #GdaDataModelArray object
 </parameter_description>
 </parameter>
-<parameter name="level">
+<parameter name="row">
 <parameter_description>
 </parameter_description>
 </parameter>
@@ -13495,737 +10441,848 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if all transactions could be started successfully,
-or %FALSE if one of them fails.
+<return> the #GdaRow, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_parameter_list_find_source">
+<function name="gda_data_comparator_compute_diff">
 <description>
-Finds the #GdaParameterListSource structure used in @paramlist for which @model is a
-the data model, don&apos;t modify the returned structure
+Actually computes the differences bewteen the data models for which @comp is defined. 
+
+For each difference computed, stored in a #GdaDiff structure, the &quot;diff-computed&quot; signal is emitted.
+If one connects to this signal and returns FALSE in the signal handler, then computing differences will be
+stopped and an error will be returned.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="comp">
+<parameter_description> a #GdaDataComparator object
 </parameter_description>
 </parameter>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaParameterListSource pointer or %NULL.
+<return> TRUE if all the differences have been sucessfully computed, and FALSE if an error occurred
 </return>
 </function>
 
-<function name="gda_parameter_list_get_param_default_value">
+<function name="gda_connection_open_from_string">
 <description>
-Retreives a prefered default value to be used by @paramlist&apos;s users when necessary.
-The usage of such values is decided by @paramlist&apos;s users.
+Opens a connection given a provider ID and a connection string. This
+allows applications to open connections without having to create
+a data source (DSN) in the configuration. The format of @cnc_string is
+similar to PostgreSQL and MySQL connection strings. It is a semicolumn-separated
+series of &amp;lt;key&amp;gt;=&amp;lt;value&amp;gt; pairs, where each key and value are encoded as per RFC 1738, 
+see gda_rfc1738_encode() for more information.
+
+The possible keys depend on the provider, the &quot;gda-sql-4.0 -L&quot; command
+can be used to list the actual keys for each installed database provider.
+
+For example the connection string to open an SQLite connection to a database
+file named &quot;my_data.db&quot; in the current directory would be &amp;lt;constant&amp;gt;&quot;DB_DIR=.;DB_NAME=my_data&quot;&amp;lt;/constant&amp;gt;.
 
- paramlist only offers to store the value
-using gda_parameter_list_set_param_default_value() or to store a #GdaParameter reference from which to get
-a value using gda_parameter_list_set_param_default_alias().
+The @cnc_string string must have the following format: 
+&quot;[&amp;lt;provider&amp;gt;://][&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;connection_params&amp;gt;&quot;
+(if &amp;lt;username&amp;gt; and/or &amp;lt;password&amp;gt; are provided, and @auth_string is %NULL, then these username
+and passwords will be used, and if &amp;lt;provider&amp;gt; is provided and @provider_name is %NULL then this
+provider will be used). Note that if provided, &amp;lt;username&amp;gt;, &amp;lt;password&amp;gt; and  &amp;lt;provider&amp;gt;
+must be encoded as per RFC 1738, see gda_rfc1738_encode() for more information.
+
+The @auth_string must contain the authentication information for the server
+to accept the connection. It is a string containing semi-colon seperated named values, usually 
+like &quot;USERNAME=...;PASSWORD=...&quot; where the ... are replaced by actual values. Note that each
+name and value must be encoded as per RFC 1738, see gda_rfc1738_encode() for more information.
+
+The actual named parameters required depend on the provider being used, and that list is available
+as the &amp;lt;parameter&amp;gt;auth_params&amp;lt;/parameter&amp;gt; member of the #GdaProviderInfo structure for each installed
+provider (use gda_config_get_provider_info() to get it). Similarly to the format of the connection
+string, use the &quot;gda-sql-4.0 -L&quot; command to list the possible named parameters.
+
+Additionally, it is possible to have the connection string
+respect the &quot;&amp;lt;provider_name&amp;gt;://&amp;lt;real cnc string&amp;gt;&quot; format, in which case the provider name
+and the real connection string will be extracted from that string (note that if @provider_name
+is not %NULL then it will still be used as the provider ID).
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="provider_name">
+<parameter_description> provider ID to connect to, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="param">
-<parameter_description> a #GdaParameter object, managed by @paramlist
+<parameter name="cnc_string">
+<parameter_description> connection string.
+</parameter_description>
+</parameter>
+<parameter name="auth_string">
+<parameter_description> authentication string, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="options">
+<parameter_description> options for the connection (see #GdaConnectionOptions).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GValue, or %NULL.
+<return> a new #GdaConnection if connection opening was sucessfull or %NULL if there was an error.
 </return>
 </function>
 
-<function name="gda_data_model_index_set_column_index_list">
+<function name="gda_value_get_timestamp">
 <description>
-Sets @dmi&apos;s list of column index attributes by
-copying @col_idx_list to its internal representation.
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> a #GdaDataModelIndex.
-</parameter_description>
-</parameter>
-<parameter name="col_idx_list">
-<parameter_description> list of #GdaColumnIndex.
+<parameter name="value">
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value stored in @value.
+</return>
 </function>
 
-<function name="gda_data_model_index_copy">
+<function name="gda_sql_case_free">
 <description>
-Creates a new #GdaDataModelIndex object from an existing one.
+Frees a #GdaSqlCase structure and its members.
 
 </description>
 <parameters>
-<parameter name="dmi">
-<parameter_description> attributes to get a copy from.
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaDataModelIndex with a copy of the data
-in @dmi.
-</return>
+<return></return>
 </function>
 
-<function name="gda_quark_list_copy">
+<function name="gda_data_handler_get_value_from_sql">
 <description>
-Creates a new #GdaQuarkList from an existing one.
+Creates a new GValue which represents the SQL value given as argument. This is
+the opposite of the function gda_data_handler_get_sql_from_value(). The type argument
+is used to determine the real data type requested for the returned value.
+
+If the sql string is NULL, then the returned GValue is of type GDA_TYPE_NULL;
+if the sql string does not correspond to a valid SQL string for the requested type, then
+NULL is returned.
 
 
 </description>
 <parameters>
-<parameter name="qlist">
-<parameter_description> quark_list to get a copy from.
+<parameter name="dh">
+<parameter_description> an object which implements the #GdaDataHandler interface
+</parameter_description>
+</parameter>
+<parameter name="sql">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> 
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaQuarkList with a copy of the data in @qlist.
+<return> the new GValue or NULL on error
 </return>
 </function>
 
-<function name="gda_value_stringify">
+<function name="gda_value_get_blob">
 <description>
-Converts a GValue to its string representation which is a human readable value. Note that the
-returned string does not take into account the current locale of the user (on the contrary to the
-#GdaDataHandler objects). Using this function should be limited to debugging and values serialization
-purposes.
-
-Dates are converted in a YYYY-MM-DD format.
-
 
 </description>
 <parameters>
 <parameter name="value">
-<parameter_description> a #GValue.
+<parameter_description> a #GValue whose value we want to get.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string, or %NULL if the conversion cannot be done. Free the value with a g_free() when you&apos;ve finished
-using it. 
+<return> the value stored in @value.
 </return>
 </function>
 
-<function name="gda_entity_remove_field">
+<function name="gda_data_model_import_clean_errors">
 <description>
+Clears the history of errors @model has to report
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> an object implementing the #GdaEntityField interface to remove
+<parameter name="model">
+<parameter_description> a #GdaDataModelImport object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_constraint_pkey_set_fields">
+<function name="gda_select_alter_select_for_empty">
+<description>
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GdaStatement
+</return>
+</function>
+
+<function name="gda_meta_store_create_modify_data_model">
 <description>
-Sets the fields which make the primary key represented by @cstr. All the fields
-must belong to the same #GdaDictTable to which the constraint is attached
+Creates a new #GdaDataModelArray data model which can be used, after being correctly filled,
+with the gda_meta_store_modify*() methods.*
+
+To be used by provider&apos;s implementation
+
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="fields">
-<parameter_description> a list of #GdaDictField objects
+<parameter name="table_name">
+<parameter_description> the name of a table present in @store
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaDataModel
+</return>
 </function>
 
-<function name="gda_query_field_agg_new">
+<function name="gda_connection_open">
 <description>
-Creates a new GdaQueryFieldAgg object which represents the @agg aggregate
+Tries to open the connection.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery in which the new object will be
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="agg_name">
-<parameter_description> the name of an aggregate to represent
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> TRUE if the connection is opened, and FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_config_free_data_source_list">
+<function name="gda_connection_rollback_transaction">
 <description>
-Frees a list of #GdaDataSourceInfo structures.
+Rollbacks the given transaction. This means that all changes
+made to the underlying data source since the last call to
+#gda_connection_begin_transaction() or #gda_connection_commit_transaction()
+will be discarded.
+
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> the list to be freed.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the transation to commit, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the operation was successful, %FALSE otherwise.
+</return>
 </function>
 
-<function name="gda_dict_table_get_constraints">
+<function name="gda_meta_store_get_internal_connection">
 <description>
-Get all the constraints which apply to the given table (each constraint
-can represent a NOT NULL, a primary key or foreign key or a check constraint.
+Get a pointer to the #GdaConnection object internally used by @store to store
+its contents.
+
+The returned connection can be used to access some other data than the one managed by @store
+itself. The returned object is not owned by the caller (if you need to keep it, then use g_object_ref()).
+Do not close the connection.
 
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaDictConstraint objects
+<return> a #GdaConnection, or %NULL
 </return>
 </function>
 
-<function name="gda_data_model_iter_get_param_for_column">
+<function name="gda_sql_select_from_new">
 <description>
-Fetch a pointer to the #GdaParameter object which is synchronized with data at 
-column @col
+Creates a new #GdaSqlSelectFrom structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
-</parameter_description>
-</parameter>
-<parameter name="col">
-<parameter_description> the requested column
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaParameter, or %NULL if an error occurred
+<return> a new #GdaSqlSelectFrom structure
 </return>
 </function>
 
-<function name="gda_server_provider_render_operation">
+<function name="gda_connection_begin_transaction">
 <description>
-Creates an SQL statement (possibly using some specific extensions of the DBMS) corresponding to the
- op operation.
+Starts a transaction on the data source, identified by the
+ name parameter.
+
+Before starting a transaction, you can check whether the underlying
+provider does support transactions or not by using the
+gda_connection_supports_feature() function.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object which will be used to perform an action
+<parameter name="name">
+<parameter_description> the name of the transation to start, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="level">
+<parameter_description>
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string, or %NULL if an error occurred or operation cannot be rendered as SQL.
+<return> %TRUE if the transaction was started successfully, %FALSE
+otherwise.
 </return>
 </function>
 
-<function name="gda_server_provider_get_server_version">
+<function name="gda_sql_field_new">
 <description>
+Creates a new #GdaSqlField structure, using @parent as its parent part.
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description>
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect, #GdaSqlStatementInsert, #GdaSqlStatementDelete, #GdaSqlStatementUpdate
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> a new #GdaSqlField structure.
 </return>
 </function>
 
-<function name="gda_config_save_data_source">
+<function name="gda_data_model_iter_move_next">
 <description>
-Adds a new data source (or update an existing one) to the GDA
-configuration, based on the parameters given.
+Moves @iter one row further than where it already is 
+(synchronizes the values of the parameters in @iter with the values at the new row).
+
+If the iterator was on the data model&apos;s last row, then it can&apos;t be moved forward
+anymore, and the returned value is FALSE; nore also that the &quot;current-row&quot; property
+is set to -1 (which means that gda_data_model_iter_is_valid() would return FALSE)
+
+If any other error occurred then the returned value is FALSE, but the &quot;current-row&quot;
+property is set to the new current row (one row more than it was before the call).
 
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> name for the data source to be saved.
-</parameter_description>
-</parameter>
-<parameter name="provider">
-<parameter_description> provider ID for the new data source.
-</parameter_description>
-</parameter>
-<parameter name="cnc_string">
-<parameter_description> connection string for the new data source.
-</parameter_description>
-</parameter>
-<parameter name="description">
-<parameter_description> description for the new data source.
-</parameter_description>
-</parameter>
-<parameter name="username">
-<parameter_description> user name for the new data source.
-</parameter_description>
-</parameter>
-<parameter name="password">
-<parameter_description> password to use when authenticating @username.
-</parameter_description>
-</parameter>
-<parameter name="is_global">
-<parameter_description> TRUE if the data source is system-wide
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> TRUE if the iterator is now at the next row
 </return>
 </function>
 
-<function name="gda_config_get_data_source_model">
+<function name="gda_batch_copy">
 <description>
-Fills and returns a new #GdaDataModel object using information from all 
-data sources which are currently configured in the system.
-
-Rows are separated in 6 columns: 
-&apos;Name&apos;, &apos;Provider&apos;, &apos;Connection string&apos;, &apos;Description&apos;, &apos;Username&apos; and &apos;Global&apos;.
+Copy constructor
 
 
 </description>
 <parameters>
+<parameter name="orig">
+<parameter_description> a #GdaBatch to make a copy of
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GdaDataModel object. 
+<return> a the new copy of @orig
 </return>
 </function>
 
-<function name="gda_dict_set_xml_filename">
+<function name="gda_data_model_array_set_n_columns">
 <description>
-Sets the filename @dict will use when gda_dict_save_xml() and gda_dict_load_xml() are called.
+Sets the number of columns for rows inserted in this model. 
+ cols must be greated than or equal to 0.
+
+Also clears @model&apos;s contents.
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="model">
+<parameter_description> the #GdaDataModelArray.
 </parameter_description>
 </parameter>
-<parameter name="xmlfile">
-<parameter_description> a file name
+<parameter name="cols">
+<parameter_description> number of columns for rows this data model should use.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_constraint_new">
+<function name="gda_meta_store_schema_get_structure">
 <description>
-Creates a new GdaDictConstraint object
+Creates a new #GdaMetaStruct object representing @store&apos;s interal database structure.
 
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> the #GdaDictTable to which the constraint is attached
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the type of constraint
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a new #GdaMetaStruct object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_parameter_is_valid">
+<function name="gda_data_select_set_modification_statement">
 <description>
-Get the validity of @param (that is, of the value held by @param)
-
+Informs @model that it should allow modifications to the data in some columns and some rows
+using @mod_stmt to propagate those modifications into the database.
 
-</description>
-<parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if @param&apos;s value can safely be used
-</return>
-</function>
+If @mod_stmt is:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;an UPDATE statement, then all the rows in @model will be modifyable&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a DELETE statement, then it will be possible to delete rows in @model&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;in INSERT statement, then it will be possible to add some rows to @model&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;any other statement, then this method will return an error&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
-<function name="gda_value_get_timestamp">
-<description>
+This method can be called several times to specify different types of modification.
 
-</description>
-<parameters>
-<parameter name="value">
-<parameter_description> a #GValue whose value we want to get.
-</parameter_description>
-</parameter>
-</parameters>
-<return> the value stored in @value.
-</return>
-</function>
+If @mod_stmt is an UPDATE or DELETE statement then it should have a WHERE part which identifies
+a unique row in @model (please note that this property can&apos;t be checked but may result
+in @model behaving in an unpredictable way).
 
-<function name="gda_parameter_get_param_users">
-<description>
-Get the #GdaEntityField objects which created @param (and which will use its value)
+NOTE1: However, if the gda_data_select_set_row_selection_condition()
+or gda_data_select_set_row_selection_condition_sql() have been successfully be called before, the WHERE
+part of @mod_stmt &amp;lt;emphasis&amp;gt;WILL&amp;lt;/emphasis&amp;gt; be modified to use the row selection condition specified through one of
+these methods (please not that it is then possible to avoid specifying a WHERE part in @mod_stmt then).
+
+NOTE2: if gda_data_select_set_row_selection_condition()
+or gda_data_select_set_row_selection_condition_sql() have not yet been successfully be called before, then
+the WHERE part of @mod_stmt will be used as if one of these functions had been called.
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
+</parameter_description>
+</parameter>
+<parameter name="mod_stmt">
+<parameter_description> a #GdaStatement (INSERT, UPDATE or DELETE)
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the list of #GdaEntityField object; it must not be changed or free&apos;d
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_aggregates_get_by_dbms_id">
+<function name="gda_execute_select_command">
 <description>
-To find a DBMS functions which is uniquely identified by its name and the type
-of its argument.
+Execute a SQL SELECT command over an opened connection.
 
+Return: a new #GdaDataModel if succesfull, NULL otherwise
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="cnc">
+<parameter_description> an opened connection
 </parameter_description>
 </parameter>
-<parameter name="dbms_id">
-<parameter_description> 
+<parameter name="sql">
+<parameter_description> a query statament must begin with &quot;SELECT&quot;
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The aggregate or NULL if not found
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_proxy_cancel_row_changes">
+<function name="gda_holder_set_attribute">
 <description>
-Resets data at the corresponding row and column.
+Set the value associated to a named attribute.
+
+Attributes can have any name, but Libgda proposes some default names, see &amp;lt;link linkend=&quot;libgda-40-Attributes-manager.synopsis&quot;&amp;gt;this section&amp;lt;/link&amp;gt;.
+If there is already an attribute named @attribute set, then its value is replaced with the new @value, 
+except if @value is %NULL, in which case the attribute is removed.
+
+Warning: @sttribute should be a static string (no copy of it is made), so the string should exist as long as the @holder
+object exists.
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="holder">
+<parameter_description> a #GdaHolder
 </parameter_description>
 </parameter>
-<parameter name="proxy_row">
-<parameter_description> the row to cancel changes
+<parameter name="attribute">
+<parameter_description> attribute name as a static string
 </parameter_description>
 </parameter>
-<parameter name="col">
-<parameter_description> the column to cancel changes, or less than 0 to cancel any change on the @row row
+<parameter name="value">
+<parameter_description> a #GValue, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_config_get_string">
+<function name="GdaMetaStore">
 <description>
-Gets the value of the specified configuration entry as a string. You
-are then responsible to free the returned string.
+This signal is emitted when the contents of a table should be updated (data updated or inserted; 
+deleting data is done automatically).
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="store">
+<parameter_description> the #GdaMetaStore instance that emitted the signal
+</parameter_description>
+</parameter>
+<parameter name="suggest">
+<parameter_description> the suggested update, as a #GdaMetaContext structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored at the given entry.
+<return> a new #GError error structure if there was an error when processing the
+signal, or %NULL if signal propagation should continue
 </return>
 </function>
 
-<function name="gda_object_signal_emit_changed">
+<function name="gda_statement_to_sql_extended">
 <description>
-Force emission of the &quot;changed&quot; signal, except if gda_object_block_changed() has
-been called.
+Renders @stmt as an SQL statement, with some control on how it is rendered.
+
+If @cnc is not %NULL, then the rendered SQL will better be suited to be used by @cnc (in particular
+it may include some SQL tweaks and/or proprietary extensions specific to the database engine used by @cnc).
+
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> parameters contained in a single #GdaSet object
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> a set of flags to control the rendering
+</parameter_description>
+</parameter>
+<parameter name="params_used">
+<parameter_description> a place to store the list of actual #GdaHolder objects in @params used to do the rendering, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string if no error occurred
+</return>
 </function>
 
-<function name="gda_data_handler_get_value_from_sql">
+<function name="gda_holder_set_source_model">
 <description>
-Creates a new GValue which represents the SQL value given as argument. This is
-the opposite of the function gda_data_handler_get_sql_from_value(). The type argument
-is used to determine the real data type requested for the returned value.
-
-If the sql string is NULL, then the returned GValue is of type GDA_TYPE_NULL;
-if the sql string does not correspond to a valid SQL string for the requested type, then
-NULL is returned.
+Sets a limit on the possible values for the @holder holder: the value must be among the values
+contained in the @col column of the @model data model.
 
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="sql">
-<parameter_description>
+<parameter name="model">
+<parameter_description> a #GdaDataModel object or NULL
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> 
+<parameter name="col">
+<parameter_description> the reference column in @model
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new GValue or NULL on error
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_query_target_new_copy">
+<function name="gda_server_operation_get_node_info">
 <description>
-Makes a copy of an existing object (copy constructor)
+Get information about the node identified by @path. The returned #GdaServerOperationNode structure can be 
+copied but not modified; it may change or cease to exist if @op changes
 
 
 </description>
 <parameters>
-<parameter name="orig">
-<parameter_description> a #GdaQueryTarget object to copy
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="path_format">
+<parameter_description> a complete path to a node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a #GdaServerOperationNode structure, or %NULL if the node was not found
 </return>
 </function>
 
-<function name="gda_query_field_is_visible">
+<function name="gda_data_select_set_modification_statement_sql">
 <description>
+Offers the same feature as gda_data_select_set_modification_statement() but using an SQL statement
+
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
+</parameter_description>
+</parameter>
+<parameter name="sql">
+<parameter_description> an SQL text
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @field is visible
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_data_model_import_clean_errors">
+<function name="gda_value_compare">
 <description>
-Clears the history of errors @model has to report
+Compares two values of the same type, with the exception that a value of any type can be
+compared to a GDA_TYPE_NULL value, specifically:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 and @value2 are both GDA_TYPE_NULL values then the returned value is 0&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 is a GDA_TYPE_NULL value and @value2 is of another type then the returned value is -1&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if @value1 is of another type and @value2 is a GDA_TYPE_NULL value then the returned value is 1&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;in all other cases, @value1 and @value2 must be of the same type and their values are compared&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelImport object
+<parameter name="value1">
+<parameter_description> a #GValue to compare (not %NULL)
+</parameter_description>
+</parameter>
+<parameter name="value2">
+<parameter_description> the other #GValue to be compared to @value1 (not %NULL)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> if both values have the same type, returns 0 if both contain
+the same value, an integer less than 0 if @value1 is less than @value2 or
+an integer greater than 0 if @value1 is greater than @value2.
+</return>
 </function>
 
-<function name="gda_dict_compute_xml_filename">
+<function name="gda_connection_delete_savepoint">
 <description>
-Get the prefered filename which represents the data dictionary associated to the @datasource data source.
-Using the returned value in conjunction with gda_dict_load_xml_file() and gda_dict_save_xml_file() has
-the advantage of letting the library handle file naming onventions.
-
-if @datasource is %NULL, and a #GdaConnection object has been assigned to @dict, then the returned
-string will take into account the data source used by that connection.
-
-The @app_id argument allows to give an extra identification to the request, when some special features
-must be saved but not interfere with the default dictionary.
+Delete the SAVEPOINT named @name when not used anymore.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="datasource">
-<parameter_description> a data source, or %NULL
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
 </parameter_description>
 </parameter>
-<parameter name="app_id">
-<parameter_description> an extra identification, or %NULL
+<parameter name="name">
+<parameter_description> name of the savepoint to delete
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter_description> a place to store errors or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_parameter_declare_param_user">
+<function name="gda_sql_statement_check_clean">
 <description>
-Tells that @user is potentially using @param.
+Cleans any data set by a previous call to gda_sql_statement_check_validity().
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-<parameter name="user">
-<parameter_description> the #GdaObject object using that parameter for
+<parameter name="stmt">
+<parameter_description> a pinter to a #GdaSqlStatement structure
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_model_array_copy_model">
+<function name="gda_handler_numerical_new">
 <description>
-Makes a copy of @src into a new #GdaDataModelArray object
+Creates a data handler for numerical values
 
 
 </description>
 <parameters>
-<parameter name="src">
-<parameter_description> a #GdaDataModel to copy data from
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> a new data model, or %NULL if an error occurred
+<return> the new object
 </return>
 </function>
 
-<function name="gda_dict_table_get_pk_constraint">
+<function name="gda_pstmt_copy_contents">
 <description>
-Get the primary key constraint of @table, if there is any. If several
-#GdaDictConstraint represent a primary key constraint for @table, then
-the first one in the list of constraints is returned.
-
+Copies @src&apos;s data to @dest 
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
+<parameter name="src">
+<parameter_description> a #GdaPStmt object
+</parameter_description>
+</parameter>
+<parameter name="dest">
+<parameter_description> a #GdaPStmt object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDictConstraint object or %NULL.
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_set_not_null">
+<function name="gda_column_set_name">
 <description>
-Sets if the parameter can have a NULL value. If @not_null is TRUE, then that won&apos;t be allowed
+Sets the name of @column to @name.
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="column">
+<parameter_description> a #GdaColumn.
 </parameter_description>
 </parameter>
-<parameter name="not_null">
-<parameter_description>
+<parameter name="name">
+<parameter_description> the new name of @column.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_command_copy">
+<function name="gda_sql_select_field_copy">
 <description>
-Creates a new #GdaCommand from an existing one.
+Creates a new #GdaSqlSelectField structure initated with the values stored in @field.
 
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> command to get a copy from.
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaCommand with a copy of the data in @cmd.
+<return> a new #GdaSqlSelectField structure.
 </return>
 </function>
 
-<function name="gda_connection_open">
+<function name="gda_data_proxy_row_is_inserted">
 <description>
-Tries to open the connection.
+Tells if the row number @proxy_row is a row which has been inserted in @proxy
+(and is thus not in the proxied data model).
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="proxy_row">
+<parameter_description> A proxy row number
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the connection is opened, and FALSE otherwise.
+<return> TRUE if the row is an inserted row
 </return>
 </function>
 
-<function name="gda_connection_rollback_transaction">
+<function name="gda_delete_row_from_table">
 <description>
-Rollbacks the given transaction. This means that all changes
-made to the underlying data source since the last call to
-#gda_connection_begin_transaction() or #gda_connection_commit_transaction()
-will be discarded.
+This is just a convenient function to delete the row fitting the given condition
+from the given table.
+
+ condition must be a valid GValue and must correspond with the GType of the column to use
+in the WHERE clause.
+
+The SQL command is like: DELETE FROM table_name WHERE contition_column_name = condition
 
 
 </description>
 <parameters>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter_description> an opened connection
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to commit
+<parameter name="table_name">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="condition_column_name">
+<parameter_description> the name of the column to used in the WHERE condition clause
+</parameter_description>
+</parameter>
+<parameter name="condition">
+<parameter_description> a GValue to used to find the row to be deleted 
 </parameter_description>
 </parameter>
 <parameter name="error">
@@ -14233,811 +11290,950 @@
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation was successful, %FALSE otherwise.
+<return> TRUE if no error occurred, and FALSE and set error otherwise
 </return>
 </function>
 
-<function name="gda_query_field_is_list">
+<function name="gda_vconnection_hub_remove">
 <description>
-Tells if @qfield can potentially represent a list of values.
+Remove all the tables in @hub representing @cnc&apos;s tables.
 
 
 </description>
 <parameters>
-<parameter name="qfield">
-<parameter_description> a #GdaQueryField object
+<parameter name="hub">
+<parameter_description> a #GdaVconnectionHub connection
+</parameter_description>
+</parameter>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @field can be a list of values
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_constraint_fkey_get_fields">
+<function name="gda_data_model_remove_row">
 <description>
-Get the list of field pairs composing the foreign key constraint which @cstr represents. In the returned
-list, each pair item is allocated and it&apos;s up to the caller to free the list and each pair, and the
-reference count for each pointer to GObjects in each pair is NOT INCREASED, which means the caller of this
-function DOES NOT hold any reference on the mentionned GObjects (if he needs to, it has to call g_object_ref())
+Removes a row from the data model.
 
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> the row number to be removed.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaDictConstraintFkeyPair pairs
+<return> %TRUE if successful, %FALSE otherwise.
 </return>
 </function>
 
-<function name="gda_command_set_text">
+<function name="gda_connection_statement_execute">
 <description>
-Sets the command text of @cmd.
+Executes @stmt. 
+
+As @stmt can, by desing (and if not abused), contain only one SQL statement, the
+return object will either be:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a #GdaDataSelect object (which is also a #GdaDataModel) if @stmt is a SELECT statement 
+(usually a GDA_SQL_STATEMENT_SELECT, see #GdaSqlStatementType)
+containing the results of the SELECT. The resulting data model is by default read only, but
+modifications can be enabled, see the #GdaDataSelect&apos;s documentation for more information.&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a #GdaSet for any other SQL statement which correctly executed. In this case
+(if the provider supports it), then the #GdaSet may contain value holders named:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (gint) #GdaHolder named &quot;IMPACTED_ROWS&quot;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (GObject) #GdaHolder named &quot;EVENT&quot; which contains a #GdaConnectionEvent&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
+If @last_insert_row is not %NULL and @stmt is an INSERT statement, then it will contain (if the
+provider used by @cnc supports it) a new #GdaSet object composed of value holders named &quot;+&amp;lt;column number&amp;gt;&quot;
+starting at column 0 which contain the actual inserted values. For example if a table is composed of an &apos;id&apos; column
+which is auto incremented and a &apos;name&apos; column then the execution of a &quot;INSERT INTO mytable (name) VALUES (&apos;joe&apos;)&quot;
+query will return a #GdaSet with two holders:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;one with the &apos;+0&apos; ID which may for example contain 1 (note that its &quot;name&quot; property should be &quot;id&quot;)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;one with the &apos;+1&apos; ID which will contain &apos;joe&apos; (note that its &quot;name&quot; property should be &quot;name&quot;)&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+
+Note1: If @stmt is a SELECT statement which has some parameters and  if @params is %NULL, then the statement can&apos;t
+be executed and this method will return %NULL.
+
+Note2: If @stmt is a SELECT statement which has some parameters and  if @params is not %NULL but contains some
+invalid parameters, then the statement can&apos;t be executed and this method will return %NULL, unless the
+ model_usage has the GDA_STATEMENT_MODEL_ALLOW_NOPARAM flag.
+
+Note3: If @stmt is a SELECT statement which has some parameters and  if @params is not %NULL but contains some
+invalid parameters and if @model_usage has the GDA_STATEMENT_MODEL_ALLOW_NOPARAM flag, then the returned
+data model will contain no row but will have all the correct columns (even though some of the columns might
+report as GDA_TYPE_NULL). In this case, if (after this method call) any of @params&apos; parameters change
+then the resulting data model will re-run itself, see the GdaDataSelect&apos;s 
+&amp;lt;link linkend=&quot;GdaDataSelect--auto-reset&quot;&amp;gt;auto-reset&amp;lt;/link&amp;gt; property for more information.
+
+Note4: if @model_usage does not contain the GDA_STATEMENT_MODEL_RANDOM_ACCESS or GDA_STATEMENT_MODEL_CURSOR_FORWARD
+flags, then the default will be to return a random access data model
+
+Also see the &amp;lt;link linkend=&quot;limitations&quot;&amp;gt;provider&apos;s limitations&amp;lt;/link&amp;gt;, and the
+&amp;lt;link linkend=&quot;data-select&quot;&amp;gt;Advanced GdaDataSelect usage&amp;lt;/link&amp;gt; sections.
+
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand
+<parameter name="cnc">
+<parameter_description> a #GdaConnection
+</parameter_description>
+</parameter>
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> a #GdaSet object (which can be obtained using gda_statement_get_parameters()), or %NULL
+</parameter_description>
+</parameter>
+<parameter name="model_usage">
+<parameter_description> in the case where @stmt is a SELECT statement, specifies how the returned data model will be used
+</parameter_description>
+</parameter>
+<parameter name="last_insert_row">
+<parameter_description> a place to store a new #GdaSet object which contains the values of the last inserted row, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="text">
-<parameter_description> the command text.
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #GObject, or %NULL if an error occurred 
+</return>
 </function>
 
-<function name="gda_file_load">
+<function name="gda_connection_get_authentication">
 <description>
-Loads a file, specified by the given @uri, and returns the file
-contents as a string.
-
-It is the caller&apos;s responsibility to free the returned value.
+Gets the user name used to open this connection.
 
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> path for the file to be loaded.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the file contents as a newly-allocated string, or %NULL
-if there is an error.
+<return> the user name.
 </return>
 </function>
 
-<function name="gda_config_set_int">
+<function name="gda_transaction_status_new">
 <description>
-Sets the given configuration entry to contain an integer.
+Creates a new #GdaTransactionStatus object, which allows a fine-tune and
+full control of transactions to be used with providers.
 
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
-</parameter_description>
-</parameter>
-<parameter name="new_value">
-<parameter_description> new value.
+<parameter name="name">
+<parameter_description> name for the transaction
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> the newly created object.
 </return>
 </function>
 
-<function name="gda_query_del_sub_query">
+<function name="gda_sql_case_serialize">
 <description>
-Removes @sub_query from @query. @sub_query MUST be present within @query.
-
-</description>
-<parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="sub_query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Creates a new string representing a CASE clausure. You need to free the returned string
+using g_free();
 
-<function name="gda_query_del_join">
-<description>
-Removes @join from @query. @join MUST be present within @query.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the description of the CASE clausure or &quot;null&quot; in case @sc is invalid.
+</return>
 </function>
 
-<function name="gda_column_index_set_sorting">
+<function name="gda_blob_free">
 <description>
-Sets the sorting of a #GdaColumnIndex.
+Deallocates all memory associated to the given #GdaBlob.
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
-</parameter_description>
-</parameter>
-<parameter name="sorting">
-<parameter_description> the new sorting of @dmcia.
+<parameter name="boxed">
+<parameter_description> #GdaBlob to free.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_column_index_get_references">
+<function name="gda_sql_select_from_serialize">
 <description>
+Creates a new string description of the FROM clausure used in a SELECT statement.
+
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> @dmcia&apos;s references.
+<return> a new string with the description of the FROM or &quot;null&quot; in case @from is invalid.
 </return>
 </function>
 
-<function name="gda_query_join_get_target_2">
+<function name="gda_holder_new">
 <description>
-Get the 2nd #GdaQueryTarget participating in the join
+Creates a new holder of type @type
 
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="type">
+<parameter_description> the #GType requested
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget
+<return> a new #GdaHolder object
 </return>
 </function>
 
-<function name="gda_connection_begin_transaction">
+<function name="gda_server_operation_set_value_at">
 <description>
-Starts a transaction on the data source, identified by the
- xaction parameter.
+Set the value for the node at the path formed using @path_format and @... the rules are the same as
+for g_strdup_printf()). 
 
-Before starting a transaction, you can check whether the underlying
-provider does support transactions or not by using the
-#gda_connection_supports_feature() function.
+Note that trying to set a value for a path which is not used by the current
+provider (such as &quot;/TABLE_OPTIONS_P/TABLE_ENGINE&quot; for a PostgreSQL connection), will &amp;lt;emphasis&amp;gt;not&amp;lt;/emphasis&amp;gt; generate
+any error; this allows one to set all the possible parameters and use the same code for several providers.
+
+Here are the possible formats of @path_format:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a #GdaHolder, then the parameter is set to @value&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a sequence item like for example &quot;/SEQUENCE_NAME/5/NAME&quot; for
+the &quot;NAME&quot; value of the 6th item of the &quot;SEQUENCE_NAME&quot; sequence then:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the sequence already has 6 or more items, then the value is just set to the corresponding 
+value in the 6th item of the sequence&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the sequence has less then 6 items, then items are added up to the 6th one before setting
+the value to the corresponding in the 6th item of the sequence&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a #GdaDataModel, like for example &quot;/ARRAY/@@COLUMN/5&quot; for the value at the
+6th row of the &quot;COLUMN&quot; column of the &quot;ARRAY&quot; data model, then:
+&amp;lt;itemizedlist&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the data model already contains 6 or more rows, then the value is just set&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the data model has less than 6 rows, then rows are added up to the 6th one before setting
+the value&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
+&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
+&amp;lt;/itemizedlist&amp;gt;
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to start
+<parameter name="value">
+<parameter_description> a string
 </parameter_description>
 </parameter>
-<parameter name="level">
-<parameter_description>
+<parameter name="error">
+<parameter_description> a place to store errors or %NULL
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="path_format">
+<parameter_description> a complete path to a node (starting with &quot;/&quot;)
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments to use with @path_format to make a complete path
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the transaction was started successfully, %FALSE
-otherwise.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_data_model_iter_move_next">
+<function name="gda_log_error">
 <description>
-Moves @iter one row further than where it already is (synchronizes the values of the parameters in @iter 
-with the values at the new row).
-
+Logs the given error in the GDA log file.
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="format">
+<parameter_description> format string (see the printf(3) documentation).
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments to insert in the error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_provider_get_data_handler_dbms">
+<function name="gda_data_select_take_row">
 <description>
-Find a #GdaDataHandler object to manipulate data of type @for_type.
-
+Stores @row into @model, externally advertized at row number @rownum (if no row has been removed). 
+The reference to @row is stolen.
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
 </parameter_description>
 </parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object, or %NULL
+<parameter name="row">
+<parameter_description> a #GdaRow row
 </parameter_description>
 </parameter>
-<parameter name="for_type">
-<parameter_description> a DBMS type definition
+<parameter name="rownum">
+<parameter_description> &quot;external&quot; advertized row number
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDataHandler, or %NULL if the provider does not know about the @for_type type
-</return>
+<return></return>
 </function>
 
-<function name="gda_row_get_number">
+<function name="gda_attributes_manager_get">
 <description>
-Gets the number of the given row, that is, its position in its containing
-data model.
+Retreives the value of an attribute previously set using gda_attributes_manager_set().
 
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow.
+<parameter name="mgr">
+<parameter_description> a #GdaAttributesManager
+</parameter_description>
+</parameter>
+<parameter name="ptr">
+<parameter_description> a pointer to the ressources to which the attribute will apply
+</parameter_description>
+</parameter>
+<parameter name="att_name">
+<parameter_description> an attribute&apos;s name, as a *static* string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the row number, or -1 if there was an error.
+<return> the attribute&apos;s value, or %NULL if the attribute is not set.
 </return>
 </function>
 
-<function name="gda_data_model_array_set_n_columns">
+<function name="gda_pstmt_get_gda_statement">
 <description>
-Sets the number of columns for rows inserted in this model. 
- cols must be greated than or equal to 0.
+Get a pointer to the #GdaStatement which led to the creation of this prepared statement.
+
+Note: if that statement has been modified since the creation of @pstmt, then this method
+will return %NULL
 
-Also clears @model&apos;s contents.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> the #GdaDataModelArray.
-</parameter_description>
-</parameter>
-<parameter name="cols">
-<parameter_description> number of columns for rows this data model should use.
+<parameter name="pstmt">
+<parameter_description> a #GdaPStmt object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #GdaStatement
+</return>
 </function>
 
-<function name="gda_object_unblock_changed">
+<function name="gda_sql_field_free">
 <description>
-The &quot;changed&quot; signal will again be emitted.
+Frees a #GdaSqlField structure and its members.
+
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="field">
+<parameter_description> a #GdaSqlField to be freed.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_dict_field_is_fkey_alone">
+<function name="gda_server_operation_get_node_parent">
 <description>
-Get @field&apos;s extra attributes. The @attributes is an OR&apos;ed value of all the possible
-values in #GdaDictFieldAttribute.
+Get the complete path to the parent of the node defined by @path
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> a complete path to a node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new attributes value
+<return> a new string or %NULL if the node does not have any parent or does not exist.
 </return>
 </function>
 
-<function name="gda_server_provider_rollback_transaction">
+<function name="gda_connection_get_meta_store_data_v">
 <description>
+see #gda_connection_get_meta_store_data
+
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description>
-</parameter_description>
-</parameter>
 <parameter name="cnc">
-<parameter_description>
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to commit
+<parameter name="meta_type">
+<parameter_description> describes which data to get.
 </parameter_description>
 </parameter>
 <parameter name="error">
 <parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
+<parameter name="filters">
+<parameter_description> a GList of GdaHolders
+</parameter_description>
+</parameter>
 </parameters>
-<return>
+<return> a #GdaDataModel containing the data required. The caller is responsible
+for freeing the returned model using g_object_unref().
 </return>
 </function>
 
-<function name="gda_execute_select_command">
+<function name="gda_server_operation_get_sequence_name">
 <description>
-Execute a SQL SELECT command over an opened connection.
-
-Return: a new #GdaDataModel if succesfull, NULL otherwise
 
 </description>
 <parameters>
-<parameter name="cnn">
-<parameter_description> an opened connection
-</parameter_description>
-</parameter>
-<parameter name="sql">
-<parameter_description> a query statament must begin with &quot;SELECT&quot;
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="path">
+<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the sequence at @path
+</return>
 </function>
 
-<function name="gda_data_model_index_equal">
+<function name="gda_connection_open_from_dsn">
 <description>
-Tests whether two field attributes are equal.
+This function is the way of opening database connections with libgda, using a pre-defined data source (DSN),
+see gda_config_define_dsn() for more information about how to define a DSN. If you don&apos;t want to define
+a DSN, it is possible to use gda_connection_open_from_string() instead of this method.
+
+The @dsn string must have the following format: &quot;[&amp;lt;username&amp;gt;[:&amp;lt;password&amp;gt;] ]&amp;lt;DSN&amp;gt;&quot; 
+(if &amp;lt;username&amp;gt; and/or &amp;lt;password&amp;gt; are provided, and @auth_string is %NULL, then these username
+and passwords will be used). Note that if provided, &amp;lt;username&amp;gt; and &amp;lt;password&amp;gt; 
+must be encoded as per RFC 1738, see gda_rfc1738_encode() for more information.
+
+The @auth_string can contain the authentication information for the server
+to accept the connection. It is a string containing semi-colon seperated named value, usually 
+like &quot;USERNAME=...;PASSWORD=...&quot; where the ... are replaced by actual values. Note that each
+name and value must be encoded as per RFC 1738, see gda_rfc1738_encode() for more information.
+
+The actual named parameters required depend on the provider being used, and that list is available
+as the &amp;lt;parameter&amp;gt;auth_params&amp;lt;/parameter&amp;gt; member of the #GdaProviderInfo structure for each installed
+provider (use gda_config_get_provider_info() to get it). Also one can use the &quot;gda-sql-4.0 -L&quot; command to 
+list the possible named parameters.
 
 
 </description>
 <parameters>
-<parameter name="lhs">
-<parameter_description> a #GdaDataModelIndex
+<parameter name="dsn">
+<parameter_description> data source name.
 </parameter_description>
 </parameter>
-<parameter name="rhs">
-<parameter_description> another #GdaDataModelIndex
+<parameter name="auth_string">
+<parameter_description> authentication string, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="options">
+<parameter_description> options for the connection (see #GdaConnectionOptions).
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store an error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the field attributes contain the same information.
+<return> a new #GdaConnection if connection opening was sucessfull or %NULL if there was an error.
 </return>
 </function>
 
-<function name="gda_dict_constraint_fkey_get_ref_table">
+<function name="gda_meta_struct_complement_schema">
 <description>
-Get the #GdaDictTable at the other end of the foreign key relation represented by this
-constraint
+This method is similar to gda_meta_struct_complement() but creates #GdaMetaDbObject for all the
+database object which are in the @schema schema (and in the @catalog catalog).
+If @catalog is %NULL, then any catalog will be used, and
+if @schema is %NULL then any schema will be used (if @schema is %NULL then catalog must also be %NULL).
 
 
 </description>
 <parameters>
-<parameter name="cstr">
-<parameter_description> a #GdaDictConstraint object
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
+</parameter_description>
+</parameter>
+<parameter name="catalog">
+<parameter_description> name of a catalog, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="schema">
+<parameter_description> name of a schema, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDictTable
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_data_model_row_get_row">
+<function name="gda_meta_struct_new">
 <description>
-Finds the #GdaRow object corresponding to the @row row number.
+Creates a new #GdaMetaStruct object. The @features specifies the extra features which will also be computed:
+the more features, the more time it takes to run. Features such as table&apos;s columns, each column&apos;s attributes, etc
+are not optional and will always be computed.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelRow object
+<parameter name="store">
+<parameter_description> a #GdaMetaStore from which the new #GdaMetaStruct object will fetch information
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> the row number to fetch
+<parameter name="features">
+<parameter_description> the kind of extra information the new #GdaMetaStruct object will compute
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaRow, or %NULL if not found.
+<return> the newly created #GdaMetaStruct object
 </return>
 </function>
 
-<function name="gda_dict_declare_object_as">
+<function name="gda_config_define_dsn">
 <description>
-Same as gda_dict_declare_object() but forces to use the @as_type type instead of
- object&apos;s realtype
+Add or update a DSN from the definition in @info
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GdaObject object
+<parameter name="info">
+<parameter_description> a pointer to a filled GdaDsnInfo structure
 </parameter_description>
 </parameter>
-<parameter name="as_type">
-<parameter_description> type parent type of @object to take into account
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_blob_to_string">
+<function name="gda_meta_store_schema_get_all_tables">
 <description>
-Converts all the non printable characters of blob-&amp;gt;data into the \xxx representation
-where xxx is the octal representation of the byte, and the &apos;\&apos; (backslash) character
-is converted to &quot;\\&quot;.
+Get an ordered list of the tables @store knows about. The tables are ordered in a way that tables dependencies
+are respected: if table B has a foreign key on table A, then table A will be listed before table B in the returned
+list.
 
 
 </description>
 <parameters>
-<parameter name="blob">
-<parameter_description> a correctly filled @GdaBlob structure
-</parameter_description>
-</parameter>
-<parameter name="maxlen">
-<parameter_description> a maximum len used to truncate, or 0 for no maximum length
+<parameter name="store">
+<parameter_description> a #GdaMetaStore object
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string from @blob
+<return> a new list of tables names (as gchar*), the list must be freed when no longer needed, 
+but the strings present in the list must not be modified.
 </return>
 </function>
 
-<function name="gda_dict_database_update_dbms_data">
+<function name="gda_connection_get_meta_store_data">
 <description>
-Synchronises the database representation with the database structure which is stored in
-the DBMS. For this operation to succeed, the connection to the DBMS server MUST be opened
-(using the corresponding #GdaConnection object).
+Retreives data stored in @cnc&apos;s associated #GdaMetaStore object. This method is usefull
+to easily get some information about the meta-data associated to @cnc, such as the list of
+tables, views, and other database objects.
+
+Note: it&apos;s up to the caller to make sure the information contained within @cnc&apos;s associated #GdaMetaStore
+is up to date using gda_connection_update_meta_store() (it can become outdated if the database&apos;s schema
+is accessed from outside of Libgda).
+
+For more information about the returned data model&apos;s attributes, or about the @meta_type and @... filter arguments,
+see &amp;lt;link linkend=&quot;GdaConnectionMetaTypeHead&quot;&amp;gt;this description&amp;lt;/link&amp;gt;.
 
 
 </description>
 <parameters>
-<parameter name="db">
-<parameter_description> a #GdaDictDatabase object
-</parameter_description>
-</parameter>
-<parameter name="limit_to_type">
-<parameter_description> limit the DBMS update to this type, or 0 for no limit
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="limit_obj_name">
-<parameter_description> limit the DBMS update to objects of this name, or %NULL for no limit
+<parameter name="meta_type">
+<parameter_description> describes which data to get.
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
-</parameters>
-<return> TRUE if no error
-</return>
-</function>
-
-<function name="gda_data_model_import_get_errors">
-<description>
-Get the list of errors which @model has to report. The returned list is a list of
-#GError structures, and must not be modified
-
-
-</description>
-<parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModelImport object
+<parameter_description> a place to store errors, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="nb_filters">
+<parameter_description> the number of filters in the @... argument
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of (filter name (gchar *), filter value (GValue*)) pairs specifying
+the filter to apply to the returned data model&apos;s contents (there must be @nb_filters pairs)
 </parameter_description>
 </parameter>
 </parameters>
-<return> the list of errors (which must not be modified), or %NULL
+<return> a #GdaDataModel containing the data required. The caller is responsible
+for freeing the returned model using g_object_unref().
 </return>
 </function>
 
-<function name="gda_graph_new">
+<function name="gda_server_operation_save_data_to_xml">
 <description>
-Creates a new #GdaGraph object. The graph type is used only to be able to sort out the
-different types of graphs. It brings no special functionnality.
+Creates a new #xmlNodePtr tree which can be used to save the #op object. This
+XML structure can then be saved to disk if necessary. Use xmlFreeNode to free
+the associated memory when not needed anymore.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the graph type (one of #GdaGraphType)
+<parameter name="error">
+<parameter_description> a place to store errors or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object
+<return> a new #xmlNodePtr structure, or %NULL
 </return>
 </function>
 
-<function name="gda_dict_function_new">
+<function name="gda_server_provider_init_schema_model">
 <description>
-Creates a new GdaDictFunction object which rrpresents a function in the dictionary
+Sets the column attributes of @model for the requested schema
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="model">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="schema">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> TRUE if there was no error
 </return>
 </function>
 
-<function name="gda_server_operation_get_node_info">
+<function name="gda_holder_set_value_str">
 <description>
-Get information about the node identified by @path. The returned #GdaServerOperationNode structure can be 
-copied but not modified; it may change or cease to exist if @op changes
+Same functionality as gda_holder_set_value() except that it uses a string representation
+of the value to set, which will be converted into a GValue first (using default data handler if
+ dh is %NULL).
+
+Note1: if @value is %NULL or is the &quot;NULL&quot; string, then @holder&apos;s value is set to %NULL.
+Note2: if @holder can&apos;t accept the @value value, then this method returns FALSE, and @holder will be left
+in an invalid state.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="holder">
+<parameter_description> a #GdaHolder object
 </parameter_description>
 </parameter>
-<parameter name="path_format">
-<parameter_description> a complete path to a node (starting with &quot;/&quot;)
+<parameter name="dh">
+<parameter_description> a #GdaDataHandler to use, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #GdaServerOperationNode structure, or %NULL if the node was not found
-</return>
-</function>
-
-<function name="gda_dict_get_objects">
-<description>
-
-</description>
-<parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="value">
+<parameter_description> a value to set the holder to, as a string
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> a #Gtype type of object
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of all the objects of type @type managed by @dict.
+<return> TRUE if value has been set
 </return>
 </function>
 
-<function name="gda_data_model_get_column_index_by_name">
+<function name="gda_data_model_array_clear">
 <description>
-Get the index of the column named @name in @model
-
+Frees all the rows in @model.
 
 </description>
 <parameters>
 <parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> a column name
+<parameter_description> the model to clear.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the column index, or -1 if no column named @name was found
-</return>
+<return></return>
 </function>
 
-<function name="gda_provider_info_free">
+<function name="gda_sql_select_order_free">
 <description>
-Deallocates all memory associated to the given #GdaProviderInfo.
+Frees a #GdaSqlSelectOrder structure and its members.
 
 </description>
 <parameters>
-<parameter name="provider_info">
-<parameter_description> provider information to free.
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_connection_delete_savepoint">
+<function name="gda_data_model_get_typed_value_at">
 <description>
-Delete the SAVEPOINT named @name when not used anymore.
+This method is similar to gda_data_model_get_value_at(), except that it also allows one to specify the expected
+#GType of the value to get: if the data model returned a #GValue of a type different than the expected one, then
+this method returns %NULL and an error code.
+
+Note: the same limitations and usage instructions apply as for gda_data_model_get_value_at().
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object
+<parameter name="model">
+<parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> name of the savepoint to delete
+<parameter name="col">
+<parameter_description> a valid column number.
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> a valid row number.
+</parameter_description>
+</parameter>
+<parameter name="expected_type">
+<parameter_description> the expected data type of the returned value
+</parameter_description>
+</parameter>
+<parameter name="nullok">
+<parameter_description> if TRUE, then NULL values (value of type %GDA_TYPE_NULL) will not generate any error
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> a place to store errors or %NULL
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a #GValue containing the value stored in the given
+position, or %NULL on error (out-of-bound position, wrong data type, etc).
 </return>
 </function>
 
-<function name="gda_handler_numerical_new">
+<function name="gda_sql_function_copy">
 <description>
-Creates a data handler for numerical values
+Creates a new #GdaSqlFunction structure initated with the values stored in @function.
 
 
 </description>
 <parameters>
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure to be copied
+</parameter_description>
+</parameter>
 </parameters>
-<return> the new object
+<return> a new #GdaSqlFunction structure.
 </return>
 </function>
 
-<function name="gda_client_commit_transaction">
+<function name="gda_set_copy">
 <description>
-Commits a running transaction on all connections being managed by the given
-#GdaClient. It is important to note that this operates on all
-connections opened within a #GdaClient, which could not be what
-you&apos;re looking for.
-
-To execute a transaction on a unique connection, use
-#gda_connection_begin_transaction, #gda_connection_commit_transaction
-and #gda_connection_rollback_transaction.
+Creates a new #GdaSet object, opy of @set
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the transation to commit
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if all transactions could be committed successfully,
-or %FALSE if one of them fails.
+<return> a new #GdaSet object
 </return>
 </function>
 
-<function name="gda_server_provider_execute_command">
+<function name="gda_server_provider_get_data_handler_default">
 <description>
-Executes one or more SQL statements stored in @command, and returns a list of
-#GdaDataModel and/or #GdaParameterList (or %NULL) objects for each SQL statement
-in @command following the rule (the number and order of items contained in the returned list is the 
-same as the number and order of SQL queries in @command if there is no error, 
-otherwise it depends on the execution options in @params):
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;A #GdaDataModel is in the list if the statement was a SELECT statement and the statement was successufully executed&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;A #GdaParameterList is in the list if the statement was not a SELECT 
-statement and the statement was successufully executed. In this case
-(if the provider supports it), then the #GdaParameterList may contain:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (gint) #GdaParameter named &quot;IMPACTED_ROWS&quot;&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;a (GObject) #GdaParameter named &quot;EVENT&quot; which contains a GdaConnectionEvent&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;%NULL is in the list if the correcponding statement could not be executed&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-
-For every executed statement, a #GdaDataModel, a #GdaParameterList or %NULL will be appended to the returned list.
-The returned list may contain fewer items than the @cmd command contained statements depending on the
-options of @command (see gda_command_set_options()).
+Provides the implementation when the default Libgda&apos;s data handlers must be used
 
 
 </description>
 <parameters>
 <parameter name="provider">
-<parameter_description> a #GdaServerProvider object
+<parameter_description> a server provider.
 </parameter_description>
 </parameter>
 <parameter name="cnc">
-<parameter_description> a #GdaConnection object using 
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand 
+<parameter name="for_type">
+<parameter_description> a #GType
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> a #GdaParameterList containing a list of optional parameters
+<parameter name="dbms_type">
+<parameter_description> a DBMS type definition
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list, or %NULL
+<return> a #GdaDataHandler, or %NULL
 </return>
 </function>
 
-<function name="gda_dict_field_is_pkey_alone">
+<function name="GdaSet">
 <description>
-Test if @field is alone a primary key constraint
+Gets emitted when gda_set_is_valid() is called, use
+this signal to control which combination of values @set&apos;s holder can have (for example to implement some business rules)
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaDictField object
+<parameter name="set">
+<parameter_description> the object which received the signal
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> NULL if @set&apos;s contents has been validated, or a #GError
+otherwise.
 </return>
 </function>
 
-<function name="gda_parameter_set_value_str">
+<function name="gda_connection_get_options">
 <description>
-Same function as gda_parameter_set_value() except that the value
-is provided as a string, and may return FALSE if the string did not
-represent a correct value for the data type of the parameter.
+Gets the #GdaConnectionOptions used to open this connection.
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object.
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a value to set the parameter to, as a string
+</parameters>
+<return> the connection options.
+</return>
+</function>
+
+<function name="gda_server_operation_get_node_type">
+<description>
+Convenience function to get the type of a node.
+
+
+</description>
+<parameters>
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> a complete path to a node (starting with &quot;/&quot;)
+</parameter_description>
+</parameter>
+<parameter name="status">
+<parameter_description> a place to store the status of the node, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> the type of node, or GDA_SERVER_OPERATION_NODE_UNKNOWN if the node was not found
 </return>
 </function>
 
-<function name="gda_query_field_agg_set_arg">
+<function name="gda_column_set_default_value">
+<description>
+Sets @column&apos;s default #GValue.
+
+</description>
+<parameters>
+<parameter name="column">
+<parameter_description> a #GdaColumn.
+</parameter_description>
+</parameter>
+<parameter name="default_value">
+<parameter_description> default #GValue for the column
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_data_select_set_row_selection_condition_sql">
 <description>
-Sets the argument of @agg. If @arg is %NULL, then
-the argument (if there was one) is removed.
+Specifies the SQL condition corresponding to the WHERE part of a SELECT statement which would
+return only 1 row (the expression of the primary key).
+
+For example for a table created as &amp;lt;![CDATA[&quot;CREATE TABLE mytable (part1 int NOT NULL, part2 string NOT NULL, 
+name string, PRIMARY KEY (part1, part2))&quot;]]&amp;gt;, and if @pmodel corresponds to the execution of the 
+&amp;lt;![CDATA[&quot;SELECT name, part1, part2 FROM mytable&quot;]]&amp;gt;, then the sensible value for @sql_where would be
+&amp;lt;![CDATA[&quot;part1 = ##-1::int AND part2 = ##-2::string&quot;]]&amp;gt; because the values of the &apos;part1&apos; field are located
+in @pmodel&apos;s column number 1 and the values of the &apos;part2&apos; field are located
+in @pmodel&apos;s column number 2 and the primary key is composed of (part1, part2).
 
-If @agg is not active, then no check on the provided arg
-is performed.
+For more information about the syntax of the parameters (named &amp;lt;![CDATA[&quot;##-1::int&quot;]]&amp;gt; for example), see the
+&amp;lt;link linkend=&quot;GdaSqlParser.description&quot;&amp;gt;GdaSqlParser&amp;lt;/link&amp;gt; documentation, and 
+gda_data_select_set_modification_statement().
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaQueryFieldAgg object
+<parameter name="model">
+<parameter_description> a #GdaDataSelect data model
+</parameter_description>
+</parameter>
+<parameter name="sql_where">
+<parameter_description> an SQL condition (withouth the WHERE keyword)
 </parameter_description>
 </parameter>
-<parameter name="arg">
-<parameter_description> a #GdaQueryField object
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
@@ -15045,99 +12241,107 @@
 </return>
 </function>
 
-<function name="gda_client_close_all_connections">
+<function name="gda_mutex_free">
 <description>
-Closes all connections opened by the given #GdaClient object.
+Destroys @m.
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
+<parameter name="m">
+<parameter_description> a #GdaMutex
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_data_proxy_row_is_inserted">
+<function name="gda_perform_create_database">
 <description>
-Tells if the row number @proxy_row is a row which has been inserted in @proxy
-(and is thus not in the proxied data model).
+Creates a new database using the specifications in @op, which must have been obtained using
+gda_prepare_create_database ()
 
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object obtained using gda_prepare_create_database()
 </parameter_description>
 </parameter>
-<parameter name="proxy_row">
-<parameter_description> A proxy row number
+<parameter name="error">
+<parameter_description> a place to store en error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the row is an inserted row
+<return> TRUE if no error occurred and the database has been created
 </return>
 </function>
 
-<function name="gda_query_condition_get_cond_type">
+<function name="gda_connection_internal_set_provider_data">
 <description>
-Get the type of @condition
-
+Note: calling this function more than once will not make it call @destroy_func on any previously
+set opaque @data, you&apos;ll have to do it yourself.
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> an opaque structure, known only to the provider for which @cnc is opened
+</parameter_description>
+</parameter>
+<parameter name="destroy_func">
+<parameter_description> function to call when the connection closes and @data needs to be destroyed
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type
-</return>
+<return></return>
 </function>
 
-<function name="gda_delete_row_from_table">
+<function name="gda_prepare_create_table">
 <description>
-This is just a convenient function to delete the row fitting the given condition
-from the given table.
+Create a #GdaServerOperation object using an opened connection, taking three 
+arguments, a colum&apos;s name the column&apos;s GType and #GdaEasyCreateTableFlag 
+flag, you need to finish the list using NULL.
 
- condition must be a valid GValue and must correspond with the GType of the column to use
-in the WHERE clause.
-
-The SQL command is like: DELETE FROM table_name WHERE contition_column_name = condition
+You&apos;ll be able to modify the #GdaServerOperation object to add custom options
+to the operation. When finish call #gda_perform_create_table 
+or #gda_server_operation_perform_operation
+in order to execute the operation.
 
 
 </description>
 <parameters>
-<parameter name="cnn">
+<parameter name="cnc">
 <parameter_description> an opened connection
 </parameter_description>
 </parameter>
 <parameter name="table_name">
 <parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="condition_column_name">
-<parameter_description> the name of the column to used in the WHERE condition clause
-</parameter_description>
-</parameter>
-<parameter name="condition">
-<parameter_description> a GValue to used to find the row to be deleted 
+ num_columns
 </parameter_description>
 </parameter>
 <parameter name="error">
 <parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
+<parameter name="Varargs">
+<parameter_description> group of three arguments for column&apos;s name, column&apos;s #GType 
+and a #GdaEasyCreateTableFlag flag, finished with NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> TRUE if no error occurred, and FALSE and set error otherwise
+<return> a #GdaServerOperation if no errors; NULL and set @error otherwise
 </return>
 </function>
 
-<function name="gda_data_model_remove_row">
+<function name="gda_data_model_set_column_name">
 <description>
-Removes a row from the data model.
+Sets the @name of the given @col in @model, and if its title is not set, also sets the
+title to @name.
 
+Since: 3.2
 
 </description>
 <parameters>
@@ -15145,12 +12349,34 @@
 <parameter_description> a #GdaDataModel object.
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> the row number to be removed.
+<parameter name="col">
+<parameter_description> column number
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+<parameter name="name">
+<parameter_description> name for the given column.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_value_set_from_value">
+<description>
+Sets the value of a #GValue from another #GValue. This
+is different from #gda_value_copy, which creates a new #GValue.
+#gda_value_set_from_value, on the other hand, copies the contents
+of @copy into @value, which must already be allocated.
+
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> a #GValue.
+</parameter_description>
+</parameter>
+<parameter name="from">
+<parameter_description> the value to copy from.
 </parameter_description>
 </parameter>
 </parameters>
@@ -15158,1685 +12384,1655 @@
 </return>
 </function>
 
-<function name="gda_entity_field_get_name">
+<function name="gda_sql_select_target_copy">
 <description>
-Get the name of the object implementing the #GdaEntityField interface
+Creates a new #GdaSqlSelectTarget structure initated with the values stored in @target.
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaEntityField interface
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name
-</return>
+<return> a new #GdaSqlSelectTarget structure.
+</return>
+</function>
+
+<function name="gda_log_enable">
+<description>
+Enables GDA logs.
+
+</description>
+<parameters>
+</parameters>
+<return></return>
 </function>
 
-<function name="gda_referer_activate">
+<function name="gda_data_proxy_set_sample_start">
 <description>
-Tries to activate the object, does nothing if the object is already active.
-
+Sets the number of the first row to be displayed.
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaReferer interface
+<parameter name="proxy">
+<parameter_description> a #GdaDataProxy object
+</parameter_description>
+</parameter>
+<parameter name="sample_start">
+<parameter_description> the number of the first row to be displayed
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if the object is active after the call
-</return>
+<return></return>
 </function>
 
-<function name="gda_connection_execute_non_select_command">
+<function name="gda_data_model_import_from_string">
 <description>
-Executes a selection command on the given connection.
-
-This function returns the number of rows impacted by the execution of @cmd, or -1
-if an error occurred, or -2 if the provider does not return the number of rows impacted.
-
-Note that no check is made regarding the actual number of statements in @cmd or if it really contains a non SELECT
-statement. This function is just a convenience function around the gda_connection_execute_command()
-function. If @cmd contains several statements, the last #GdaParameterList is returned.
-
-See the documentation of the gda_connection_execute_command() for information
-about the @params list of parameters.
+Loads the data from @string into @model.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="model">
+<parameter_description> a #GdaDataModel
 </parameter_description>
 </parameter>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="string">
+<parameter_description> the string to import data from
 </parameter_description>
 </parameter>
-<parameter name="params">
-<parameter_description> parameter list for the command
+<parameter name="cols_trans">
+<parameter_description> a hash table containing which columns of @model will be imported, or %NULL for all columns
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store an error, or %NULL
+<parameter name="options">
+<parameter_description> list of options for the export
 </parameter_description>
 </parameter>
-</parameters>
-<return> the number of rows impacted (&amp;gt;=0) or -1 or -2 
-</return>
-</function>
-
-<function name="gda_transaction_status_new">
-<description>
-Creates a new #GdaTransactionStatus object, which allows a fine-tune and
-full control of transactions to be used with providers.
-
-
-</description>
-<parameters>
-<parameter name="name">
-<parameter_description> name for the transaction
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object.
+<return> TRUE if no error occurred.
 </return>
 </function>
 
-<function name="gda_entity_get_field_by_name">
+<function name="gda_statement_check_validity">
 <description>
-Get a #GdaEntityField using its name. The notion of &quot;field name&quot; is the
-string returned by gda_entity_field_get_name() on each of the fields composing @iface.
-However, if that definition does not return any field, then each particular
-implementation of @iface may try to give an extra definition to the notion of 
-&quot;field name&quot;.
+If @cnc is not %NULL then checks that every object (table, field, function) used in @stmt 
+actually exists in @cnc&apos;s database
 
-For instance, in the case of the #GdaQuery object, the  gda_entity_field_get_name() is used
-as a first try to find a field, and if that fails, then the object tries to find
-fields from their SQL naming.
+If @cnc is %NULL, then cleans anything related to @cnc in @stmt.
 
-In the case where there can be more than one field with the same name (depending on
- iface&apos;s implementation), then the returned value is %NULL.
+See gda_sql_statement_check_validity() for more information.
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object implementing the #GdaEntity interface
+<parameter name="stmt">
+<parameter_description> a #GdaStatement object
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description>
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the requested #GdaEntityField or %NULL if the field cannot be found, or if
-more than one field has been found.
+<return> TRUE if every object actually exists in @cnc&apos;s database
 </return>
 </function>
 
-<function name="gda_blob_free">
+<function name="gda_value_free">
 <description>
-Deallocates all memory associated to the given #GdaBlob.
+Deallocates all memory associated to a #GValue.
 
 </description>
 <parameters>
-<parameter name="boxed">
-<parameter_description> #GdaBlob to free.
+<parameter name="value">
+<parameter_description> the resource to free.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_value_get_dict_type">
+<function name="gda_sql_select_join_type_to_string">
 <description>
-Get the #GdaDictType type of @field
+Creates a new string representing the join type.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="type">
+<parameter_description> a #GdaSqlSelectJoinType structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDictType type
+<return> a string representing the Join type.
 </return>
 </function>
 
-<function name="gda_client_get_dsn_specs">
+<function name="gda_connection_event_get_description">
 <description>
-Get an XML string representing the parameters which can be present in the
-DSN string used to open a connection.
+Get the description of the event. Note that is @event&apos;s type is GDA_CONNECTION_EVENT_COMMAND,
+the the dsecription is the SQL of the command.
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="provider">
-<parameter_description> a provider
+<parameter name="event">
+<parameter_description> a #GdaConnectionEvent.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string (free it after usage), or %NULL if an error occurred
-
+<return> @event&apos;s description.
 </return>
 </function>
 
-<function name="gda_dict_stop_update_dbms_meta_data">
+<function name="gda_data_model_iter_is_valid">
 <description>
-When the dictionary updates its internal lists of DBMS objects, a call to this function will 
-stop that update process. It has no effect when the dictionary is not updating its DBMS data.
+Tells if @iter is a valid iterator (if it actually corresponds to a valid row in the model)
+
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="iter">
+<parameter_description> a #GdaDataModelIter object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if @iter is valid
+</return>
 </function>
 
-<function name="gda_query_get_parent_query">
+<function name="gda_data_model_import_get_errors">
 <description>
-Get the parent query of @query
+Get the list of errors which @model has to report. The returned list is a list of
+#GError structures, and must not be modified
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="model">
+<parameter_description> a #GdaDataModelImport object
 </parameter_description>
 </parameter>
 </parameters>
-<return> the parent query, or NULL if @query does not have any parent
+<return> the list of errors (which must not be modified), or %NULL
 </return>
 </function>
 
-<function name="gda_parameter_replace_param_users">
+<function name="gda_value_new_timestamp_from_timet">
 <description>
-For each declared parameter user in the @replacements keys, declare the value stored in
- replacements also as a user of @param.
+Makes a new #GValue of type #GDA_TYPE_TIMESTAMP with value @val
+(of type time_t).
+
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
-</parameter_description>
-</parameter>
-<parameter name="replacements">
-<parameter_description> the (objects to be replaced, replacing object) pairs
+<parameter name="val">
+<parameter_description> value to set for the new #GValue.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GValue.
+</return>
 </function>
 
-<function name="gda_server_operation_set_value_at">
+<function name="gda_set_get_holder_value">
 <description>
-Set the value for the node at the path formed using @path_format and ... the rules are the same as
-for g_strdup_printf())
-
-Here are the corner cases:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a #GdaParameter, then the parameter is set to @value&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a sequence item like for example &quot;/SEQUENCE_NAME/5/NAME&quot; for
-the &quot;NAME&quot; value of the 6th item of the &quot;SEQUENCE_NAME&quot; sequence then:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the sequence already has 6 or more items, then the value is just set to the corresponding 
-value in the 6th item of the sequence&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the sequence has less then 6 items, then items are added up to the 6th one before setting
-the value to the corresponding in the 6th item of the sequence&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;If the path corresponds to a #GdaDataModel, like for example &quot;/ARRAY/@COLUMN/5&quot; for the value at the
-6th row of the &quot;COLUMN&quot; column of the &quot;ARRAY&quot; data model, then:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the data model already contains 6 or more rows, then the value is just set&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;if the data model has less than 6 rows, then rows are added up to the 6th one before setting
-the value&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
-&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+Get the value of the #GdaHolder which ID is @holder_id
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a string
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store errors or %NULL
-</parameter_description>
-</parameter>
-<parameter name="path_format">
-<parameter_description> a complete path to a node (starting with &quot;/&quot;)
+<parameter name="set">
+<parameter_description> a #GdaSet object
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to use with @path_format to make a complete path
+<parameter name="holder_id">
+<parameter_description> the ID of the holder to set the value
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> the requested GValue, or %NULL (see gda_holder_get_value())
 </return>
 </function>
 
-<function name="gda_log_error">
+<function name="gda_config_get">
 <description>
-Logs the given error in the GDA log file.
+Get a pointer to the global GdaConfig object
+
 
 </description>
 <parameters>
-<parameter name="format">
-<parameter_description> format string (see the printf(3) documentation).
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> arguments to insert in the error.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a non %NULL pointer to a #GdaConfig
+</return>
 </function>
 
-<function name="gda_query_field_value_set_default_value">
+<function name="gda_server_operation_get_op_type">
 <description>
-Sets the default value of @field, or removes it (if @default_val is %NULL)
+Get the type of operation @op is for
+
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
-<parameter name="default_val">
-<parameter_description> the default value to be set, or %NULL
+<parameter name="op">
+<parameter_description> a #GdaServerOperation object
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return>
+</return>
 </function>
 
-<function name="gda_graph_item_set_position">
+<function name="gda_meta_struct_complement_default">
 <description>
-Sets the position to be remembered for @item.
+This method is similar to gda_meta_struct_complement() but creates #GdaMetaDbObject for all the
+database object which are useable using only their short name (that is which do not need to be prefixed by 
+the schema in which they are to be used).
+
 
 </description>
 <parameters>
-<parameter name="item">
-<parameter_description> a #GdaGraphItemItem object
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description>
+<parameter name="mstruct">
+<parameter_description> a #GdaMetaStruct object
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_dict_aggregate_new">
+<function name="gda_parse_iso8601_time">
 <description>
-Creates a new GdaDictAggregate object which represents an aggregate in the dictionary
+Extracts time parts from @value, and sets @timegda&apos;s contents
+
+Accepted date format is &quot;HH:MM:SS[.ms][TZ]&quot; where TZ is +hour or -hour
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="timegda">
+<parameter_description> a pointer to a #GdaTime structure which will be filled
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a string
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_server_operation_get_node_parent">
+<function name="gda_config_get_provider">
 <description>
-Get the complete path to the parent of the node defined by @path
+Get a pointer to the session-wide #GdaServerProvider for the
+provider named @provider_name. The caller must not call g_object_unref() on the
+returned object.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="provider_name">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> a complete path to a node (starting with &quot;/&quot;)
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string or %NULL if the node does not have any parent or does not exist.
+<return> a pointer to the #GdaServerProvider, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_parameter_get_g_type">
+<function name="gda_statement_copy">
 <description>
-Get the requested data type for @param.
+Copy constructor
 
 
 </description>
 <parameters>
-<parameter name="param">
-<parameter_description> a #GdaParameter object
+<parameter name="orig">
+<parameter_description> a #GdaStatement to make a copy of
 </parameter_description>
 </parameter>
 </parameters>
-<return> the data type
+<return> a the new copy of @orig
 </return>
 </function>
 
-<function name="gda_server_operation_get_sequence_name">
+<function name="gda_perform_drop_database">
 <description>
+Destroys an existing database using the specifications in @op,  which must have been obtained using
+gda_prepare_drop_database ()
+
 
 </description>
 <parameters>
 <parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter_description> a #GdaServerOperation object obtained using gda_prepare_drop_database()
 </parameter_description>
 </parameter>
-<parameter name="path">
-<parameter_description> a complete path to a sequence node (starting with &quot;/&quot;)
+<parameter name="error">
+<parameter_description> a place to store en error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the sequence at @path
+<return> TRUE if no error occurred and the database has been destroyed
 </return>
 </function>
 
-<function name="gda_config_free_provider_list">
+<function name="gda_data_model_export_to_string">
 <description>
-Frees a list of #GdaProviderInfo structures.
+Exports data contained in @model to a string; the format is specified using the @format argument, see the
+gda_data_model_export_to_file() documentation for more information about the @options argument (except for the
+&quot;OVERWRITE&quot; option).
+
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> the list to be freed.
+<parameter name="model">
+<parameter_description> a #GdaDataModel
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="gda_binary_to_string">
-<description>
-Converts all the non printable characters of bin-&amp;gt;data into the \xxx representation
-where xxx is the octal representation of the byte, and the &apos;\&apos; (backslash) character
-is converted to &quot;\\&quot;.
-
-
-</description>
-<parameters>
-<parameter name="bin">
-<parameter_description> a correctly filled @GdaBinary structure
+<parameter name="format">
+<parameter_description> the format in which to export data
 </parameter_description>
 </parameter>
-<parameter name="maxlen">
-<parameter_description> a maximum len used to truncate, or 0 for no maximum length
+<parameter name="cols">
+<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
 </parameter_description>
 </parameter>
-</parameters>
-<return> a new string from @bin
-</return>
-</function>
-
-<function name="gda_column_set_defined_size">
-<description>
-Sets the defined size of a #GdaColumn.
-
-</description>
-<parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="nb_cols">
+<parameter_description> the number of columns in @cols
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the defined size we want to set.
+<parameter name="rows">
+<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
+</parameter_description>
+</parameter>
+<parameter name="nb_rows">
+<parameter_description> the number of rows in @rows
+</parameter_description>
+</parameter>
+<parameter name="options">
+<parameter_description> list of options for the export
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string.
+</return>
 </function>
 
-<function name="gda_row_set_id">
+<function name="gda_quark_list_find">
 <description>
-Assigns a new identifier to the given row. This function is
-usually called by providers.
+Searches for the value identified by @name in the given #GdaQuarkList.
+
 
 </description>
 <parameters>
-<parameter name="row">
-<parameter_description> a #GdaRow (which contains #GValue).
+<parameter name="qlist">
+<parameter_description> a #GdaQuarkList.
 </parameter_description>
 </parameter>
-<parameter name="id">
-<parameter_description> new identifier for the row.
+<parameter name="name">
+<parameter_description> the name of the value to search for.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value associated with the given key if found, or %NULL
+if not found.
+</return>
 </function>
 
-<function name="gda_connection_get_database">
+<function name="gda_sql_table_copy">
 <description>
-Gets the name of the currently active database in the given
- GdaConnection 
+Creates a new #GdaSqlTable structure initated with the values stored in @table.
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> A #GdaConnection object.
+<parameter name="table">
+<parameter_description> a #GdaSqlTable structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the current database.
+<return> a new #GdaSqlTable structure.
 </return>
 </function>
 
-<function name="gda_connection_close">
+<function name="gda_sql_select_field_new">
 <description>
-Closes the connection to the underlying data source, but first emits the 
-&quot;conn_to_close&quot; signal.
+Creates a new #GdaSqlSelectField structure and sets its parent to @parent. A
+#GdaSqlSelectField is any expression in SELECT statements before the FROM clausure.
+
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlSelectField structure.
+</return>
 </function>
 
-<function name="gda_parameter_list_add_param_from_string">
+<function name="gda_sql_select_join_new">
 <description>
-Creates and adds a new #GdaParameter to @paramlist. The ID and name of the new parameter
-are set as @name. The parameter&apos;s value is set from @str.
+Creates a new #GdaSqlSelectJoin structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name to give to the new parameter
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> the type of parameter to add
-</parameter_description>
-</parameter>
-<parameter name="str">
-<parameter_description> the string representation of the parameter
+<parameter name="parent">
+<parameter_description> a #GdaSqlSelectFrom
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new #GdaParameter for information, or %NULL if an error occurred
+<return> a new #GdaSqlSelectJoin structure
 </return>
 </function>
 
-<function name="gda_functions_get_by_name_arg">
+<function name="gda_sql_parser_parse_file_as_batch">
 <description>
-To find a DBMS function which is uniquely identified by its name and the type
-of its argument.
+Parse @filename&apos;s contents and creates a #GdaBatch object which contains all the
+#GdaStatement objects created while parsing (one object per SQL statement).
 
-About the functions accepting any data type for their argument: if @argtype is not %NULL
-then such an function will be a candidate, and if @argtype is %NULL
-then only such an function will be a candidate.
+ filename&apos;s contents are parsed and #GdaStatement objects are created as long as no error is found. If an error is found 
+at some point, then the parsing stops, @error may be set and %NULL is returned
 
-If several functions are found, then the function completely matching will be returned, or
-an function where the argument type has the same GDA typa as the @argtype, or lastly an
-function accepting any data type as argument.
+if @sql is %NULL, then the returned #GdaBatch object will contain no statement.
 
 
 </description>
 <parameters>
-<parameter name="dict">
-<parameter_description> a #GdaDict object
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
 </parameter_description>
 </parameter>
-<parameter name="funcname">
-<parameter_description> the name of the function
+<parameter name="filename">
+<parameter_description> name of the file to parse
 </parameter_description>
 </parameter>
-<parameter name="argtypes">
-<parameter_description> a list of types of argument or %NULL
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The function or NULL if not found
+<return> a new #GdaBatch object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_connection_event_free">
+<function name="gda_sql_select_order_free">
 <description>
-Frees the memory allocated by the event object.
+Frees a #GdaSqlSelectOrder structure and its members.
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> the event object.
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_server_provider_init_schema_model">
+<function name="gda_sql_table_serialize">
 <description>
-Sets the column attributes of @model for the requested schema
+Creates a new string representing a table. You need to free the returned string
+using g_free();
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description>
-</parameter_description>
-</parameter>
-<parameter name="schema">
-<parameter_description>
+<parameter name="field">
+<parameter_description> a #GdaSqlTable structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if there was no error
+<return> a new string with the name of the field or &quot;null&quot; in case @table is invalid.
 </return>
 </function>
 
-<function name="gda_data_model_array_clear">
+<function name="gda_sql_function_copy">
 <description>
-Frees all the rows in @model.
+Creates a new #GdaSqlFunction structure initated with the values stored in @function.
+
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> the model to clear.
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlFunction structure.
+</return>
 </function>
 
-<function name="gda_column_set_caption">
+<function name="gda_sql_operation_free">
 <description>
-Sets @column&apos;s @caption.
+Frees a #GdaSqlOperation structure and its members.
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
-</parameter_description>
-</parameter>
-<parameter name="caption">
-<parameter_description> caption.
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_value_is_value_null">
+<function name="gda_sql_select_target_serialize">
 <description>
-Tells if @field represents a NULL value.
+Creates a new string representing a target used in a SELECT statement
+after the FROM clausure.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> a #GdaParameterList object
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> a new string with the description of the expression or &quot;null&quot; in case @field is invalid.
 </return>
 </function>
 
-<function name="gda_object_destroy_check">
+<function name="gda_sql_function_serialize">
 <description>
-Checks that the object has been destroyed, and if not, then calls gda_object_destroy() on it.
-This is usefull for objects inheriting the #GdaObject object to be called first line in their
-dispose() method.
+Creates a new string representing a function. You need to free the returned string
+using g_free();
+
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the description of the function or &quot;null&quot; in case @function is invalid.
+</return>
 </function>
 
-<function name="gda_query_field_agg_get_arg">
+<function name="gda_sql_select_order_serialize">
 <description>
-Get a list of the other #GdaQueryField objects which are arguments of @agg. If some
-of them are missing, then a %NULL is inserted where it should have been.
+Creates a new string description of the ORDER BY clausure used in a SELECT statement.
 
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaQueryFieldAgg object
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GnomeDbQField argument
+<return> a new string with the description of the ORDER BY or &quot;null&quot; in case @order is invalid.
 </return>
 </function>
 
-<function name="gda_connection_get_options">
+<function name="gda_sql_field_take_name">
 <description>
-Gets the #GdaConnectionOptions used to open this connection.
+Sets the field&apos;s name using the string holded by @value. When call, @value is freed using
+#gda_value_free().
 
 
 </description>
 <parameters>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object.
+<parameter name="field">
+<parameter_description> a #GdaSqlField structure
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue holding a string to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the connection options.
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_operation_get_node_type">
+<function name="gda_sql_select_join_copy">
 <description>
-Convenience function to get the type of a node.
+Creates a new #GdaSqlSelectJoin structure initated with the values stored in @join.
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> a complete path to a node (starting with &quot;/&quot;)
-</parameter_description>
-</parameter>
-<parameter name="status">
-<parameter_description> a place to store the status of the node, or %NULL
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type of node, or GDA_SERVER_OPERATION_NODE_UNKNOWN if the node was not found
+<return> a new #GdaSqlSelectJoin structure.
 </return>
 </function>
 
-<function name="gda_query_add_field_from_sql">
+<function name="gda_sql_parser_parse_string_as_batch">
 <description>
-Parses @field and if it represents a valid SQL expression for a
-field, then add it to @query.
+Parse @sql and creates a #GdaBatch object which contains all the #GdaStatement objects created while parsing (one object
+per SQL statement). Empty statements (composed of spaces only) do not appear in the resulting object.
+
+ sql is parsed and #GdaStatement objects are created as long as no error is found in @sql. If an error is found 
+at some point, then the parsing stops and @remain may contain a non %NULL pointer, @error may be set, and %NULL
+is returned.
+
+if @sql is %NULL, then the returned #GdaBatch object will contain no statement.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
 </parameter_description>
 </parameter>
-<parameter name="field">
-<parameter_description> a SQL expression
+<parameter name="sql">
+<parameter_description> the SQL string to parse
+</parameter_description>
+</parameter>
+<parameter name="remain">
+<parameter_description> location to store a pointer to remaining part of @sql in case an error occurred while parsing @sql, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> place to store the error, or %NULL
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new #GdaQueryField object, or %NULL
+<return> a new #GdaBatch object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_renderer_is_valid">
+<function name="gda_sql_parser_new">
 <description>
-Tells if @iface has all the necessary information in @context to be rendered
-into a valid statement (which can be executed).
+Creates a new #GdaSqlParser object
 
 
 </description>
 <parameters>
-<parameter name="iface">
-<parameter_description> an object which implements the #GdaRenderer interface
-</parameter_description>
-</parameter>
-<parameter name="context">
-<parameter_description> rendering context
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> TRUE if @iface can be rendered with @context
+<return> the new object
 </return>
 </function>
 
-<function name="gda_column_set_default_value">
+<function name="gda_sql_table_take_name">
 <description>
-Sets @column&apos;s default #GValue.
+Sets the table&apos;s name using the string holded by @value. When call, @value is freed using
+#gda_value_free().
+
 
 </description>
 <parameters>
-<parameter name="column">
-<parameter_description> a #GdaColumn.
+<parameter name="field">
+<parameter_description> a #GdaSqlTable structure
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default #GValue for the column
+<parameter name="value">
+<parameter_description> a #GValue holding a string to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_column_index_set_references">
+<function name="gda_sql_identifier_needs_quotes">
 <description>
-Sets @dmcia&apos;s @references.
+Tells if @str needs to be quoted before using it in an SQL statement. To actually add quotes,
+use gda_sql_identifier_add_quotes().
+
 
 </description>
 <parameters>
-<parameter name="dmcia">
-<parameter_description> a #GdaColumnIndex.
-</parameter_description>
-</parameter>
-<parameter name="ref">
-<parameter_description> references.
+<parameter name="str">
+<parameter_description> an SQL identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if @str needs some quotes
+</return>
 </function>
 
-<function name="gda_main_run">
+<function name="gda_sql_statement_normalize">
 <description>
-Runs the GDA main loop, which is nothing more than the glib main
-loop, but with internally added stuff specific for applications using
-libgda.
+&quot;Normalizes&quot; (in place) some parts of @stmt, which means @stmt may be modified.
+At the moment any &quot;*&quot; field in a SELECT statement will be replaced by one
+#GdaSqlSelectField structure for each field in the referenced table.
 
-You can specify a function to be called after everything has been correctly
-initialized (that is, for initializing your own stuff).
 
 </description>
 <parameters>
-<parameter name="init_func">
-<parameter_description> function to be called when everything has been initialized.
+<parameter name="stmt">
+<parameter_description> a pointer to a #GdaSqlStatement structure
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to be passed to the init function.
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> TRUE if no error occurred
+</return>
 </function>
 
-<function name="gda_command_get_options">
+<function name="gda_sql_statement_check_structure">
 <description>
-Gets the command options of @cmd.
+Checks for any error in @stmt&apos;s structure to make sure the statement is valid
+(for example a SELECT statement must at least return a column, a DELETE statement must specify which table
+is targetted).
 
 
 </description>
 <parameters>
-<parameter name="cmd">
-<parameter_description> a #GdaCommand.
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement pointer
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the command options of @cmd.
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_dict_aggregate_set_ret_dict_type">
+<function name="gda_sql_select_target_take_table_alias">
 <description>
-Set the return type of a aggregate
+Sets the target alias (AS) to the string holded by @alias; after call
+this function @alias is freed.
 
 </description>
 <parameters>
-<parameter name="agg">
-<parameter_description> a #GdaDictAggregate object
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object or #NULL
+<parameter name="alias">
+<parameter_description> a #GValue holding the alias string to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_binary_copy">
+<function name="gda_sql_statement_check_clean">
 <description>
-Creates a new #GdaBinary structure from an existing one.
-
+Cleans any data set by a previous call to gda_sql_statement_check_validity().
 
 </description>
 <parameters>
-<parameter name="boxed">
-<parameter_description> source to get a copy from.
+<parameter name="stmt">
+<parameter_description> a pinter to a #GdaSqlStatement structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaBinary which contains a copy of
-information in @boxed.
-</return>
+<return></return>
 </function>
 
-<function name="gda_parameter_list_get_spec">
+<function name="gda_sql_identifier_remove_quotes">
 <description>
-Get the specification as an XML string. See the gda_parameter_list_new_from_spec_string()
-form more information about the XML specification string format.
+Prepares @str to be compared:
+- if surrounded by double quotes, then just remove the quotes
+- otherwise convert to lower case
+
+WARNING: @str must NOT be a composed identifier (&amp;lt;part1&amp;gt;.&quot;&amp;lt;part2&amp;gt;&quot; for example)
 
 
 </description>
 <parameters>
-<parameter name="paramlist">
-<parameter_description> a #GdaParameterList object
+<parameter name="str">
+<parameter_description> a quoted string
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string
+<return> @str
 </return>
 </function>
 
-<function name="gda_dict_table_get_database">
+<function name="gda_sql_select_from_take_new_join">
 <description>
-Get the database to which the table belongs
-
+Append @join to the joins in the FROM clausure and set @join&apos;s parent to
+ from; after call this function @from owns @join then you must not free it.
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
+</parameter_description>
+</parameter>
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GdaDictDatabase pointer
-</return>
+<return></return>
 </function>
 
-<function name="gda_server_provider_get_default_dbms_type">
+<function name="gda_sql_select_from_new">
 <description>
-Get the name of the most common data type which has @type type.
-
-The returned value may be %NULL either if the provider does not implement that method, or if
-there is no DBMS data type which could contain data of the @g_type type (for example %NULL may be
-returned if a DBMS has integers only up to 4 bytes and a G_TYPE_INT64 is requested).
+Creates a new #GdaSqlSelectFrom structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="provider">
-<parameter_description> a server provider.
-</parameter_description>
-</parameter>
-<parameter name="cnc">
-<parameter_description> a #GdaConnection object or %NULL
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GType value type
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the DBMS type, or %NULL
+<return> a new #GdaSqlSelectFrom structure
 </return>
 </function>
 
-<function name="gda_query_set_order_by_field">
+<function name="gda_sql_expr_take_select">
 <description>
-Sets @field to be used in the ORDER BY clause (using the @order and @ascendant attributes) if
- order &amp;gt;= 0. If @order &amp;lt; 0, then @field will not be used in the ORDER BY clause.
+Sets the expression&apos;s parent to the #GdaSqlStatementSelect holded by @stmt. After
+calling this function @stmt is freed.
+
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> a #GdaQueryField which is in @query
-</parameter_description>
-</parameter>
-<parameter name="order">
-<parameter_description> the order in the list of ORDER BY fields (starts at 0), or -1
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
-<parameter name="ascendant">
-<parameter_description> TRUE to sort ascending
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement holding the #GdaSqlStatementSelect to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_object_get_id">
+<function name="gda_sql_identifier_add_quotes">
 <description>
-Fetch the string ID of the GdaObject object.
+Add double quotes around the @str identifier. Use the gda_sql_identifier_needs_quotes()
+function to tell if an identifier needs to be quoted.
 
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="str">
+<parameter_description> an SQL identifier
 </parameter_description>
 </parameter>
 </parameters>
-<return> the id.
+<return> a new string
 </return>
 </function>
 
-<function name="gda_config_free_list">
+<function name="gda_sql_select_field_free">
 <description>
-Frees all memory used by the given GList, which must be the return value
-from either #gda_config_list_sections and #gda_config_list_keys.
+Frees a #GdaSqlSelectField structure and its members.
 
 </description>
 <parameters>
-<parameter name="list">
-<parameter_description> list to be freed.
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_get_order_by_field">
+<function name="gda_sql_select_order_copy">
 <description>
-Tells if @field (which MUST be in @query) is part of the ORDER BY clause.
+Creates a new #GdaSqlSelectOrder structure initated with the values stored in @order.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery
-</parameter_description>
-</parameter>
-<parameter name="field">
-<parameter_description> a #GdaQueryField which is in @query
-</parameter_description>
-</parameter>
-<parameter name="ascendant">
-<parameter_description> if not %NULL, will be set TRUE if ascendant sorting and FALSE otherwise
+<parameter name="order">
+<parameter_description> a #GdaSqlSelectOrder structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> -1 if no, and the order where it appears in the ORDER BY list otherwise
+<return> a new #GdaSqlSelectOrder structure.
 </return>
 </function>
 
-<function name="gda_client_perform_create_database">
+<function name="gda_sql_expr_copy">
 <description>
-Creates a new database using the specifications in @op, which must have been obtained using
-gda_client_prepare_create_database ()
+Creates a new #GdaSqlExpr structure initated with the values stored in @expr.
 
 
 </description>
 <parameters>
-<parameter name="client">
-<parameter_description> a #GdaClient object.
-</parameter_description>
-</parameter>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object obtained using gda_client_prepare_create_database()
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> a place to store en error, or %NULL
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred and the database has been created
+<return> a new #GdaSqlExpr structure.
 </return>
 </function>
 
-<function name="gda_query_condition_new">
+<function name="gda_sql_case_free">
 <description>
-Creates a new #GdaQueryCondition object
-
+Frees a #GdaSqlCase structure and its members.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure to be freed
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> the condition type
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_select_from_serialize">
+<description>
+Creates a new string description of the FROM clausure used in a SELECT statement.
+
+
+</description>
+<parameters>
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object
+<return> a new string with the description of the FROM or &quot;null&quot; in case @from is invalid.
 </return>
 </function>
 
-<function name="gda_string_hash_to_list">
+<function name="gda_sql_select_order_new">
 <description>
-Creates a new list of strings, which contains all keys of a given hash 
-table. After using it, you should free this list by calling g_list_free.
+Creates a new #GdaSqlSelectOrder structure and sets its parent to @parent.
 
 
 </description>
 <parameters>
-<parameter name="hash_table">
-<parameter_description> a hash table.
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new GList.
+<return> a new #GdaSqlSelectOrder structure
 </return>
 </function>
 
-<function name="gda_data_proxy_set_sample_start">
+<function name="gda_sql_select_field_serialize">
 <description>
-Sets the number of the first row to be displayed.
+Creates a new string representing an expresion used as field in a SELECT statement
+before the FROM clausure.
+
 
 </description>
 <parameters>
-<parameter name="proxy">
-<parameter_description> a #GdaDataProxy object
-</parameter_description>
-</parameter>
-<parameter name="sample_start">
-<parameter_description> the number of the first row to be displayed
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the description of the expression or &quot;null&quot; in case @field is invalid.
+</return>
 </function>
 
-<function name="gda_data_model_import_from_string">
+<function name="gda_sql_select_join_serialize">
 <description>
-Loads the data from @string into @model.
+Creates a new string description of the join used in a SELECT statement.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel
-</parameter_description>
-</parameter>
-<parameter name="string">
-<parameter_description> the string to import data from
-</parameter_description>
-</parameter>
-<parameter name="cols_trans">
-<parameter_description> a hash table containing which columns of @model will be imported, or %NULL for all columns
-</parameter_description>
-</parameter>
-<parameter name="options">
-<parameter_description> list of options for the export
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin structure
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> a place to store errors, or %NULL
+</parameters>
+<return> a new string with the description of the join or &quot;null&quot; in case @join is invalid.
+</return>
+</function>
+
+<function name="gda_sql_case_new">
+<description>
+Creates a new #GdaSqlCase structure and sets its parent to @parent.
+
+
+</description>
+<parameters>
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred.
+<return> a new #GdaSqlCase structure.
 </return>
 </function>
 
-<function name="gda_dict_type_clear_synonyms">
+<function name="gda_sql_field_serialize">
 <description>
-Removes any synonym attached to @dt
+Creates a new string representing a field. You need to free the returned string
+using g_free();
+
 
 </description>
 <parameters>
-<parameter name="dt">
-<parameter_description> a #GdaDictType object
+<parameter name="field">
+<parameter_description> a #GdaSqlField structure
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new string with the name of the field or &quot;null&quot; in case @field is invalid.
+</return>
 </function>
 
-<function name="gda_query_get_main_conditions">
+<function name="gda_sql_case_copy">
 <description>
-Makes a list of all the conditions (part of the WHERE clause) which
-are always verified by @query when it is executed.
-
-Examples: if the WHERE clause is:
---&amp;gt; &quot;A and B&quot; then the list will contains {A, B}
---&amp;gt; &quot;A and (B or C)&quot; it will contain {A, B or C}
---&amp;gt; &quot;A and (B and not C)&quot;, it will contain {A, B, not C}
+Creates a new #GdaSqlCase structure initated with the values stored in @sc.
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new list of #GdaQueryCondition objects
+<return> a new #GdaSqlCase structure.
 </return>
 </function>
 
-<function name="gda_data_model_move_iter_prev">
+<function name="gda_sql_operation_copy">
 <description>
-Sets @iter to the previous available row in @model. @iter must be a valid iterator object obtained
-using the gda_data_model_create_iter() method.
+Creates a new #GdaSqlOperation structure initated with the values stored in @operation.
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel object.
-</parameter_description>
-</parameter>
-<parameter name="iter">
-<parameter_description> a #GdaDataModelIter object
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error occurred
+<return> a new #GdaSqlOperation structure.
 </return>
 </function>
 
-<function name="gda_query_join_new_with_targets">
+<function name="gda_sql_case_serialize">
 <description>
-Creates a new GdaQueryJoin object. Note: the #GdaQueryTarget ranks (1st and 2nd) does not matter, but
-is necessary since the join may not be symetrical (LEFT or RIGHT join). Also, the #GdaQueryJoin object
-may decide to swap the two if necessary.
+Creates a new string representing a CASE clausure. You need to free the returned string
+using g_free();
 
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object in which the join will occur
+<parameter name="sc">
+<parameter_description> a #GdaSqlCase structure
 </parameter_description>
 </parameter>
-<parameter name="target_1">
-<parameter_description> the 1st #GdaQueryTarget object participating in the join
+</parameters>
+<return> a new string with the description of the CASE clausure or &quot;null&quot; in case @sc is invalid.
+</return>
+</function>
+
+<function name="gda_sql_select_target_free">
+<description>
+Frees a #GdaSqlSelectTarget structure and its members.
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure to be freed
 </parameter_description>
 </parameter>
-<parameter name="target_2">
-<parameter_description> the 2nd #GdaQueryTarget object participating in the join
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_operation_serialize">
+<description>
+Creates a new string representing an operator. You need to free the returned string
+using g_free();
+
+
+</description>
+<parameters>
+<parameter name="operation">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new object
+<return> a new string with the description of the operator or &quot;null&quot; in case @operation is invalid.
 </return>
 </function>
 
-<function name="gda_object_get_dict">
+<function name="gda_sql_select_target_copy">
 <description>
-Fetch the corresponding #GdaDict object.
+Creates a new #GdaSqlSelectTarget structure initated with the values stored in @target.
 
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaDict object to which @gdaobj is attached to
+<return> a new #GdaSqlSelectTarget structure.
 </return>
 </function>
 
-<function name="gda_column_index_new">
+<function name="gda_sql_select_join_type_to_string">
 <description>
+Creates a new string representing the join type.
+
 
 </description>
 <parameters>
+<parameter name="type">
+<parameter_description> a #GdaSqlSelectJoinType structure to be copied
+</parameter_description>
+</parameter>
 </parameters>
-<return> a newly allocated #GdaColumnIndex object.
+<return> a string representing the Join type.
 </return>
 </function>
 
-<function name="gda_value_free">
+<function name="gda_sql_select_join_free">
 <description>
-Deallocates all memory associated to a #GValue.
+Frees a #GdaSqlSelectJoin structure and its members.
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> the resource to free.
+<parameter name="join">
+<parameter_description> a #GdaSqlSelectJoin structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_config_list_sections">
+<function name="gda_sql_operator_from_string">
 <description>
-Returns: a list containing all the section names.
+Returns: #GdaSqlOperatorType
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path for root dir.
+<parameter name="op">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list containing all the section names.
+<return> #GdaSqlOperatorType
 </return>
 </function>
 
-<function name="gda_connection_event_get_description">
+<function name="gda_sql_select_field_take_alias">
 <description>
+Sets the &apos;as&apos; field&apos;s string in the #GdaSqlSelectField structure. @alias is freed
+after call this function.
+
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #GdaConnectionEvent.
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
+</parameter_description>
+</parameter>
+<parameter name="alias">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> @event&apos;s description.
-</return>
+<return></return>
 </function>
 
-<function name="gda_value_new_binary">
+<function name="gda_sql_function_take_name">
 <description>
-Makes a new #GValue of type #GDA_TYPE_BINARY with value @val.
+Sets the function&apos;s arguments to point to @args, then sets the
+list&apos;s data elements&apos; parent to @function.
 
 
 </description>
 <parameters>
-<parameter name="val">
-<parameter_description> value to set for the new #GValue.
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the size of the memory pool pointer to by @val.
+<parameter name="args">
+<parameter_description> a #GSList to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GValue.
-</return>
+<return></return>
 </function>
 
-<function name="gda_data_access_wrapper_row_exists">
+<function name="gda_sql_statement_check_validity">
 <description>
-Tests if the wrapper model of @wrapper has a row number @row
+If @cnc is not %NULL, then checks that all the database objects referenced in the statement actually
+exist in the connection&apos;s database (for example the table being updated in a UPDATE statement must exist in the
+connection&apos;s database for the check to succeed). This method fills the @stmt-&amp;gt;validity_meta_struct attribute.
+
+If @cnc is %NULL, then remove any information from a previous call to this method stored in @stmt. In this case,
+the @stmt-&amp;gt;validity_meta_struct attribute is cleared.
+
+Also note that some parts of @stmt may be modified: for example leading and trailing spaces in aliases or
+objects names will be removed.
 
 
 </description>
 <parameters>
-<parameter name="wrapper">
-<parameter_description> a #GdaDataAccessWrapper objects
+<parameter name="stmt">
+<parameter_description> a #GdaSqlStatement pointer
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> a row number to test existance
+<parameter name="cnc">
+<parameter_description> a #GdaConnection object, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if row number @row exists
+<return> TRUE if no error occurred
 </return>
 </function>
 
-<function name="gda_object_ref_deactivate">
+<function name="gda_sql_select_field_copy">
 <description>
-Desctivates the object (loses the reference to the object)
+Creates a new #GdaSqlSelectField structure initated with the values stored in @field.
+
 
 </description>
 <parameters>
-<parameter name="ref">
-<parameter_description> a #GdaObjectRef object
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlSelectField structure.
+</return>
 </function>
 
-<function name="gda_object_dump">
+<function name="gda_sql_expr_new">
 <description>
-Writes a textual description of the object to STDOUT. This function only
-exists if libergeant is compiled with the &quot;--enable-debug&quot; option. This is
-a virtual function.
+Creates a new #GdaSqlField structure, using @parent as its parent part.
+
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementInsert, #GdaSqlStatementUpdate, #GdaSqlSelectField, #GdaSqlSelectTarget, #GdaSqlOperation
 </parameter_description>
 </parameter>
-<parameter name="offset">
-<parameter_description> the offset (in caracters) at which the dump will start
+</parameters>
+<return> a new #GdaSqlField structure.
+</return>
+</function>
+
+<function name="gda_sql_select_from_free">
+<description>
+Frees a #GdaSqlSelectFrom structure and its members.
+
+</description>
+<parameters>
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_value_new_timestamp_from_timet">
+<function name="gda_sql_select_from_copy">
 <description>
-Makes a new #GValue of type #GDA_TYPE_TIMESTAMP with value @val
-(of type time_t).
+Creates a new #GdaSqlSelectFrom structure initated with the values stored in @from.
 
 
 </description>
 <parameters>
-<parameter name="val">
-<parameter_description> value to set for the new #GValue.
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure to be copied
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GValue.
+<return> a new #GdaSqlSelectFrom structure.
 </return>
 </function>
 
-<function name="gda_query_field_new_from_xml">
+<function name="gda_sql_select_target_take_table_name">
 <description>
-This is an object factory which does create instances of class inheritants of the #GnomeDbDfield class.
-Ths #GdaQueryField object MUST then be attached to @query
-
+Sets the target to be a SELECT subquery setting target&apos;s expression to use
+ stmt; after call this function the target owns @stmt, then you must not free it.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> an XML node corresponding to a GDA_QUERY_FIELD tag
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget structure
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="stmt">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created object
-</return>
+<return></return>
 </function>
 
-<function name="gda_command_new">
+<function name="gda_sql_field_free">
 <description>
-Creates a new #GdaCommand from the parameters that should be freed by
-calling #gda_command_free.
-
-If there are conflicting options, this will set @options to
-#GDA_COMMAND_OPTION_DEFAULT.
+Frees a #GdaSqlField structure and its members.
 
 
 </description>
 <parameters>
-<parameter name="text">
-<parameter_description> the text of the command.
-</parameter_description>
-</parameter>
-<parameter name="type">
-<parameter_description> a #GdaCommandType value.
+<parameter name="field">
+<parameter_description> a #GdaSqlField to be freed.
 </parameter_description>
 </parameter>
-<parameter name="options">
-<parameter_description> a #GdaCommandOptions value.
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_operation_new">
+<description>
+Creates a new #GdaSqlOperation structure and sets its parent to @parent.
+
+
+</description>
+<parameters>
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GdaCommand.
+<return> a new #GdaSqlOperation structure.
 </return>
 </function>
 
-<function name="gda_config_remove_key">
+<function name="gda_sql_field_new">
 <description>
-Removes the given entry from the configuration database.
-If the section is empty, also remove the section.
+Creates a new #GdaSqlField structure, using @parent as its parent part.
+
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> path to the configuration entry.
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect, #GdaSqlStatementInsert, #GdaSqlStatementDelete, #GdaSqlStatementUpdate
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlField structure.
+</return>
 </function>
 
-<function name="gda_server_operation_get_op_type">
+<function name="gda_sql_expr_serialize">
 <description>
-Get the type of operation @op is for
+Creates a new string representing a field. You need to free the returned string
+using g_free();
 
 
 </description>
 <parameters>
-<parameter name="op">
-<parameter_description> a #GdaServerOperation object
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return>
+<return> a new string with the name of the field or &quot;null&quot; in case @expr is invalid.
 </return>
 </function>
 
-<function name="gda_object_set_id">
+<function name="gda_sql_field_copy">
 <description>
-Sets the string ID of the @gdaobj object.
+Creates a new GdaSqlField structure initated with the values stored in @field.
 
-The string ID must be unique for all the objects related to a given #GdaDict object.
 
 </description>
 <parameters>
-<parameter name="gdaobj">
-<parameter_description> a #GdaObject object
-</parameter_description>
-</parameter>
-<parameter name="strid">
-<parameter_description> the string Identifier
+<parameter name="field">
+<parameter_description> a #GdaSqlAnyPart
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #GdaSqlField structure.
+</return>
 </function>
 
-<function name="gda_dict_table_update_dbms_data">
+<function name="gda_sql_expr_free">
 <description>
-Synchronises the Table representation with the table structure which is stored in
-the DBMS. For this operation to succeed, the connection to the DBMS server MUST be opened
-(using the corresponding #GdaConnection object).
+Frees a #GdaSqlExpr structure and its members.
 
 
 </description>
 <parameters>
-<parameter name="table">
-<parameter_description> a #GdaDictTable object
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> location to store error, or %NULL
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr to be freed.
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if no error
-</return>
+<return></return>
 </function>
 
-<function name="gda_value_set_from_value">
+<function name="gda_sql_parser_parse_string">
 <description>
-Sets the value of a #GValue from another #GValue. This
-is different from #gda_value_copy, which creates a new #GValue.
-#gda_value_set_from_value, on the other hand, copies the contents
-of @copy into @value, which must already be allocated.
+Parses @sql and creates a #GdaStatement statement from the first SQL statement contained in @sql: if @sql
+contains more than one statement, then the remaining part of the string is not parsed at all, and @remain (if
+not %NULL) will point at the first non parsed character.
 
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue.
+<parameter name="parser">
+<parameter_description> a #GdaSqlParser object
 </parameter_description>
 </parameter>
-<parameter name="from">
-<parameter_description> the value to copy from.
+<parameter name="sql">
+<parameter_description> the SQL string to parse
+</parameter_description>
+</parameter>
+<parameter name="remain">
+<parameter_description> location to store a pointer to remaining part of @sql in case @sql has multiple statement, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store error, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if successful, %FALSE otherwise.
+<return> a new #GdaStatement object, or %NULL if an error occurred
 </return>
 </function>
 
-<function name="gda_query_del_target">
+<function name="gda_sql_select_field_take_expr">
 <description>
-Removes @target from @query. @target MUST be present within @query. Warning:
-All the joins and fields which depended on @target are also removed.
+Sets the expression field in the #GdaSqlSelectField structure to point to @expr
+and modify it to sets its parent to @field.
 
 </description>
 <parameters>
-<parameter name="query">
-<parameter_description> a #GdaQuery object
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
 </parameter_description>
 </parameter>
-<parameter name="target">
-<parameter_description> a #GdaQueryTarget object
+<parameter name="expr">
+<parameter_description> a #GdaSqlExpr to take from
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gda_query_field_value_get_not_null">
+<function name="gda_sql_select_target_new">
 <description>
-Tells if @field can receive a NULL value.
+Creates a new #GdaSqlSelectTarget structure and sets its parent to @parent. A
+#GdaSqlSelectTarget is the table in a SELECT statement.
 
 
 </description>
 <parameters>
-<parameter name="field">
-<parameter_description> a #GdaQueryFieldValue object
+<parameter name="parent">
+<parameter_description> a #GdaSqlSelectFrom
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if @field can&apos;t have a NULL value
+<return> a new #GdaSqlSelectTarget structure.
 </return>
 </function>
 
-<function name="gda_query_condition_get_parent">
+<function name="gda_sql_function_free">
 <description>
-Get the #GdaQueryCondition object which is parent of @condition
-
+Frees a #GdaSqlFunction structure and its members.
 
 </description>
 <parameters>
-<parameter name="condition">
-<parameter_description> a #GdaQueryCondition object
+<parameter name="function">
+<parameter_description> a #GdaSqlFunction structure to be freed
 </parameter_description>
 </parameter>
 </parameters>
-<return> the parent object, or %NULL
-</return>
+<return></return>
 </function>
 
-<function name="gda_query_join_get_target_1">
+<function name="gda_sql_operation_operator_to_string">
 <description>
-Get the 1st #GdaQueryTarget participating in the join
-
+Returns: a string with the operator&apos;s name or NULL in case @op is invalid.
 
 </description>
 <parameters>
-<parameter name="join">
-<parameter_description> a #GdaQueryJoin object
+<parameter name="op">
+<parameter_description> a #GdaSqlOperation structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GdaQueryTarget
+<return> a string with the operator&apos;s name or NULL in case @op is invalid.
 </return>
 </function>
 
-<function name="gda_data_model_export_to_string">
+<function name="gda_sql_table_free">
 <description>
-Exports data contained in @model to a string; the format is specified using the @format argument.
+Frees a #GdaSqlTable structure and its members.
 
-Specifically, the parameters in the @options list can be:
-&amp;lt;itemizedlist&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;SEPARATOR&quot;: a string value of which the first character is used as a separator in case of CSV export
-&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;&quot;NAME&quot;: a string value used to name the exported data if the export format is XML&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
-&amp;lt;/itemizedlist&amp;gt;
+</description>
+<parameters>
+<parameter name="table">
+<parameter_description> a #GdaSqlTable structure to be freed
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_any_part_foreach">
+<description>
+Calls a function for each element of a #GdaSqlAnyPart node
 
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #GdaDataModel
+<parameter name="node">
+<parameter_description> the stat node
 </parameter_description>
 </parameter>
-<parameter name="format">
-<parameter_description> the format in which to export data
+<parameter name="func">
+<parameter_description> function to call for each sub node
 </parameter_description>
 </parameter>
-<parameter name="cols">
-<parameter_description> an array containing which columns of @model will be exported, or %NULL for all columns
+<parameter name="data">
+<parameter_description> data to pass to @func each time it is called
 </parameter_description>
 </parameter>
-<parameter name="nb_cols">
-<parameter_description> the number of columns in @cols
+<parameter name="error">
+<parameter_description> a place to store errors, or %NULL (is also passed to @func)
 </parameter_description>
 </parameter>
-<parameter name="rows">
-<parameter_description> an array containing which rows of @model will be exported, or %NULL for all rows
+</parameters>
+<return> TRUE if @func has been called for any sub node of @node and always returned TRUE, or FALSE
+otherwise.
+</return>
+</function>
+
+<function name="gda_sql_select_field_take_star_value">
+<description>
+Sets the expression field&apos;s value in the #GdaSqlSelectField structure to point to @value;
+after this @field is the owner of @value.
+
+
+</description>
+<parameters>
+<parameter name="field">
+<parameter_description> a #GdaSqlSelectField structure
 </parameter_description>
 </parameter>
-<parameter name="nb_rows">
-<parameter_description> the number of rows in @rows
+<parameter name="value">
+<parameter_description> a #GValue to take from
 </parameter_description>
 </parameter>
-<parameter name="options">
-<parameter_description> list of options for the export
+</parameters>
+<return></return>
+</function>
+
+<function name="gda_sql_function_new">
+<description>
+Creates a new #GdaSqlFunction structure initated.
+
+
+</description>
+<parameters>
+<parameter name="parent">
+<parameter_description> a #GdaSqlExpr structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> a new string.
+<return> a new #GdaSqlFunction structure.
 </return>
 </function>
 
-<function name="gda_data_handler_get_value_from_str">
+<function name="gda_sql_table_new">
 <description>
-Creates a new GValue which represents the STR value given as argument. This is
-the opposite of the function gda_data_handler_get_str_from_value(). The type argument
-is used to determine the real data type requested for the returned value.
-
-If the str string is NULL, then the returned GValue is of type GDA_TYPE_NULL;
-if the str string does not correspond to a valid STR string for the requested type, then
-NULL is returned.
+Creates a new #GdaSqlTable structure, using @parent as its parent part.
 
 
 </description>
 <parameters>
-<parameter name="dh">
-<parameter_description> an object which implements the #GdaDataHandler interface
+<parameter name="parent">
+<parameter_description> a #GdaSqlStatementSelect, #GdaSqlStatementInsert, #GdaSqlStatementDelete, #GdaSqlStatementUpdate
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description>
+</parameters>
+<return> a new #GdaSqlTable structure.
+</return>
+</function>
+
+<function name="gda_sql_select_from_take_new_target">
+<description>
+Append @target to the targets in the FROM clausure and set @target&apos;s parent to
+ from; after call this function @from owns @target then you must not free it.
+
+</description>
+<parameters>
+<parameter name="from">
+<parameter_description> a #GdaSqlSelectFrom structure
 </parameter_description>
 </parameter>
-<parameter name="type">
-<parameter_description> 
+<parameter name="target">
+<parameter_description> a #GdaSqlSelectTarget to take from
 </parameter_description>
 </parameter>
 </parameters>
-<return> the new GValue or NULL on error
-</return>
+<return></return>
 </function>
 
 </root>

Modified: libgdamm/trunk/libgda/src/metastore.hg
==============================================================================
--- libgdamm/trunk/libgda/src/metastore.hg	(original)
+++ libgdamm/trunk/libgda/src/metastore.hg	Wed Nov  5 14:17:34 2008
@@ -33,7 +33,20 @@
 
 typedef GdaMetaContext MetaContext;
 
-/** Container for several values
+/** Dictionary object
+ *
+ * Previous versions of Libgda relied on an XML based file to store dictionary 
+ * information, such as the database's schema (tables, views, etc) and various 
+ * other information. The problems were that it was difficult for an application
+ * to integrate its own data into the dictionary and that there were some 
+ * performances problems as the XML file needed to be parsed (and converted into 
+ * its own in-memory structure) before any data could be read out of it.
+ *
+ * The new dictionary now relies on a database structure to store its data 
+ * (see the database schema section for a detailled description). The actual 
+ * database can be a single file (using an SQLite database), an entirely in 
+ * memory database (also using an SQLite database), or a more conventional backend 
+ * such as a PostgreSQL database for a shared dictionary on a server. 
  *
  * @ingroup Connection
  */

Modified: libgdamm/trunk/libgda/src/metastruct.hg
==============================================================================
--- libgdamm/trunk/libgda/src/metastruct.hg	(original)
+++ libgdamm/trunk/libgda/src/metastruct.hg	Wed Nov  5 14:17:34 2008
@@ -41,7 +41,22 @@
 
 class MetaStore;
 
-/** Container for several values
+/** In memory representation of some database objects
+ *
+ * The Gda::MetaStruct object reads data from a Gda::MetaStore object and creates 
+ * an easy to use in memory representation for some database objects. For example
+ * one can easily analyse the columns of a table (or its foreign keys) using a 
+ * Gda::MetaStruct.
+ * When created, the new Gda::MetaStruct object is empty (it does not have any 
+ * information about any database object). Information about database objects is 
+ * computed upon request using the gda_meta_struct_complement() method. Information 
+ * about individual database objects is represented by GdaMetaDbObject structures, 
+ * which can be obtained using get_db_object() or get_all_db_objects().
+ * 
+ * Note that the Gda::MetaDbObject structures may change or may be removed or 
+ * replaced by others, so it not advised to keep pointers to these structures: 
+ * pointers to these structures should be considered valid as long as 
+ * complement() and other similar functions have not been called. 
  *
  * @ingroup Connection
  */

Modified: libgdamm/trunk/libgda/src/quarklist.hg
==============================================================================
--- libgdamm/trunk/libgda/src/quarklist.hg	(original)
+++ libgdamm/trunk/libgda/src/quarklist.hg	Wed Nov  5 14:17:34 2008
@@ -44,7 +44,7 @@
    
   /** For instance, 
    * void on_foreach(Gtk::Widget* widget);
-   */
+   */      
   typedef sigc::slot<void, Glib::ustring, Glib::ustring> ForeachSlot;
   _WRAP_METHOD_DOCS_ONLY(gda_quark_list_foreach)
   void foreach(const ForeachSlot& slot);

Modified: libgdamm/trunk/libgda/src/row.hg
==============================================================================
--- libgdamm/trunk/libgda/src/row.hg	(original)
+++ libgdamm/trunk/libgda/src/row.hg	Wed Nov  5 14:17:34 2008
@@ -31,6 +31,17 @@
 namespace Gda
 {
 
+/** Row for a Gda::DataModelArray object
+ *
+ * The GdaDataModelArray object uses GdaRow to store each row of data. 
+ * Each GdaRow has the same number of GValue values (equal to the number of 
+ * columns of the data model).
+ * 
+ * As a side note, the GdaRow object is also used internally by the implementation
+ * of the data models returned when executing a SELECT statement.
+ * 
+ * @ingroup DataHandlers
+ */
 class Row : public Glib::Object
 {
 protected:

Modified: libgdamm/trunk/libgda/src/serveroperation.hg
==============================================================================
--- libgdamm/trunk/libgda/src/serveroperation.hg	(original)
+++ libgdamm/trunk/libgda/src/serveroperation.hg	Wed Nov  5 14:17:34 2008
@@ -46,6 +46,10 @@
 
 /** Handles any DDL query in an abstract way.
  *
+ * Basically this object is just a named data store: it can store named values, 
+ * the values being organized hirarchically. A value can be read from its path
+ * (similar to a Unix file path) using the get_value_at() method.
+ * 
  * @ingroup DDL
  */
 class ServerOperation : public Glib::Object

Modified: libgdamm/trunk/libgda/src/serverprovider.hg
==============================================================================
--- libgdamm/trunk/libgda/src/serverprovider.hg	(original)
+++ libgdamm/trunk/libgda/src/serverprovider.hg	Wed Nov  5 14:17:34 2008
@@ -40,7 +40,14 @@
 /* TODO: Is this appropriate. Investigate how it is used. */
 typedef GdaServerProviderInfo ServerProviderInfo;
 
-//TODO:
+/** Base class for all the DBMS providers
+  *
+  * The GdaServerProvider class is a virtual class which all the DBMS providers
+  * must inherit, and implement its virtual mathods.
+  *
+  * @ingroup Connections
+  */
+
 class ServerProvider : public Glib::Object
 {
   _CLASS_GOBJECT(ServerProvider, GdaServerProvider, GDA_SERVER_PROVIDER, Glib::Object, GObject)

Modified: libgdamm/trunk/libgda/src/set.hg
==============================================================================
--- libgdamm/trunk/libgda/src/set.hg	(original)
+++ libgdamm/trunk/libgda/src/set.hg	Wed Nov  5 14:17:34 2008
@@ -40,7 +40,13 @@
 
 /** Container for several values
  *
- * @ingroup Connection
+ * The Gda::Set object is a container for several values (as Gda::Holder objects), 
+ * which also offers different classifications of the group of GdaHolder values 
+ * (see get_node(), get_source() or get_group()).
+ * It is possible to control the values a Gda::Holder can have in the Gda::Set by 
+ * connecting to the signal_before_holder_change() signal.
+ * 
+ * @ingroup DataHandlers
  */
 class Set : public Glib::Object
 {

Modified: libgdamm/trunk/libgda/src/sqlparser.hg
==============================================================================
--- libgdamm/trunk/libgda/src/sqlparser.hg	(original)
+++ libgdamm/trunk/libgda/src/sqlparser.hg	Wed Nov  5 14:17:34 2008
@@ -33,7 +33,48 @@
 
 _WRAP_ENUM(SqlParserMode, GdaSqlParserMode)
 
-/** Container for several values
+/** SQL parser
+ *
+ * The Gda::SqlParser is an object dedicated to creating Gda::Statement and 
+ * Gda::Batch objects from SQL strings. The actual contents of the parsed 
+ * statements is represented as Gda::SqlStatement structures (which can be 
+ * obtained from any Gda::Statement through the "structure" property).
+ *
+ * Gda::SqlParser parsers can be created by calling Gda::ServerProvider::create_parser() 
+ * for a provider adapted SQL parser, or using create() for a general purpose SQL parser.
+ * 
+ * The Gda::SqlParser can either work in "parse" mode where it will try to parse
+ * the SQL string, or in "delimiter" mode where it will only attempt at delimiting 
+ * SQL statements in a string which may contain several SQL statements (usually 
+ * separated by a semi column). If operating in "parser" mode, and the parser 
+ * can't correctly parse the string, then it will switch to the "delimiter" mode 
+ * for the next statement in the string to parse (and create a STATEMENT_UNKNOWN statement).
+ * 
+ * The Gda::SqlParser object parses and analyses SQL statements and reports the 
+ *following statement types:
+ *
+ * * SELECT (and COMPOUND select), INSERT, UPDATE and DELETE SQL statements should be completely parsed.
+ *
+ * * Transaction related statements (corresponding to the BEGIN, COMMIT, 
+ *   ROLLBACK, SAVEPOINT, ROLLBACK SAVEPOINT and DELETE SAVEPOINT) are parsed and a 
+ *   minimalist structure is created to extract some information (that structure is not enough per-se to re-create the complete SQL statement).
+ *
+ * Any other type of SQL statement (CREATE TABLE, ...) creates a GdaStatement of 
+ * type STATEMENT_UNKNOWN, and it only able to locate place holders (variables)
+ * and end of statement marks.
+ *
+ * NOTE: Any SQL of a type which should be parsed which but which creates a Gda::Statement
+ * of type GDA_SQL_STATEMENT_UNKNOWN (check with Gda::Statement::get_statement_type()) 
+ * should be reported as a bug.
+ *
+ * The Gda::SqlParser object recognizes place holders (variables), which can later
+ * be queried and valued using Gda::Statement::get_parameters(). The folllowing syntax 
+ * are recognized (other syntaxes might be recognized for specific database 
+ * providers if the Gda::SqlParser is created using Gda::ServerProvider::create_parser() 
+ * but for portability reasons it's better to avoid them):
+ *
+ * * ##NAME[::TYPE[::NULL]]: for a variable named NAME with the optional type TYPE (which can be a GType name or a custom database type name), and with the optional "::NULL" to instruct that the variable can be NULL.
+ * * ## \/* name:NAME [type:TYPE] [nullok:[TRUE|FALSE]] [descr:DESCR] *\/ for a variable named NAME with the optional type TYPE (which can be a GType name or a custom database type name), with the optional "nullok" attribute and an optional description DESCR. Note that the NAME, TYPE and DESCR literals here must be quoted (simple or double quotes) if they include non alphanumeric characters, and that there must always be at least a space between the ## and the \/* ... *\/.
  *
  * @ingroup Connection
  */

Modified: libgdamm/trunk/libgda/src/statement.hg
==============================================================================
--- libgdamm/trunk/libgda/src/statement.hg	(original)
+++ libgdamm/trunk/libgda/src/statement.hg	Wed Nov  5 14:17:34 2008
@@ -38,7 +38,24 @@
 _WRAP_ENUM (StatementModelUsage, GdaStatementModelUsage)
 _WRAP_ENUM (StatementSqlFlag, GdaStatementSqlFlag)
 
-/** Container for several values
+/** Single SQL statement
+ *
+ *  The Gda::Statement represents a single SQL statement (multiple statements 
+ * can be groupped in a GdaBatch object).
+ *
+ * A Gda::Statement can either be built "manually" by building a Gda::SqlStatement
+ * structure, or from an SQL statement using a Gda::SqlParser object.
+ * A GdaConnection can use a GdaStatement to:
+ *
+ *  * prepare it for a future execution, the preparation step involves converting the 
+ *     GdaStatement object into a structure used by the database's own API, see 
+ *     Gda::Connection::statement_prepare()
+ *  * execute it using Gda::Connection::statement_execute_select() if it is known
+ *     that the statement is a selection statement, Gda::Connection::statement_execute_non_select() 
+ *     if it is not a selection statement, or Gda::Connection::statement_execute()
+ *     when the type of expected result is unknown.
+ * Note that it is possible to use the same Gda::Statement object at the same time 
+ * with several Gda::Connection objects. 
  *
  * @ingroup Connection
  */

Modified: libgdamm/trunk/libgda/src/threader.hg
==============================================================================
--- libgdamm/trunk/libgda/src/threader.hg	(original)
+++ libgdamm/trunk/libgda/src/threader.hg	Wed Nov  5 14:17:34 2008
@@ -32,7 +32,7 @@
 
 typedef GdaThreaderFunc ThreaderFunc;
 
-/** Container for several values
+/** FIXME
  *
  * @ingroup Connection
  */

Modified: libgdamm/trunk/libgda/src/xatransaction.hg
==============================================================================
--- libgdamm/trunk/libgda/src/xatransaction.hg	(original)
+++ libgdamm/trunk/libgda/src/xatransaction.hg	Wed Nov  5 14:17:34 2008
@@ -30,6 +30,11 @@
 namespace Gda
 {
 
+/** Distributed transaction manager
+  *
+  * @ingroup Connections
+  */
+  
 class XaTransaction : public Glib::Object
 {
   _CLASS_GOBJECT(XaTransaction, GdaXaTransaction, GDA_XA_TRANSACTION, Glib::Object, GObject)



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