Index: src/optional/python-bindings/timespec.i
===================================================================
--- src/optional/python-bindings/timespec.i	(Revision 19958)
+++ src/optional/python-bindings/timespec.i	(Arbeitskopie)
@@ -27,7 +27,7 @@
     @brief SWIG interface file for type translation of Timespec types
     @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
     @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-    @ingroup python-bindings */
+    @ingroup python_bindings */
 
 // A typemap for converting python dates to Timespec in functions that
 // require Timespec as an argument
Index: src/optional/python-bindings/function_class.py
===================================================================
--- src/optional/python-bindings/function_class.py	(Revision 19958)
+++ src/optional/python-bindings/function_class.py	(Arbeitskopie)
@@ -24,7 +24,7 @@
 #   @brief Library for making python classes from a set of functions.
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
 #   @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-#   @ingroup python-bindings
+#   @ingroup python_bindings
 
 INSTANCE_ARGUMENT = "instance"
 
Index: src/optional/python-bindings/example_scripts/simple_test.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_test.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_test.py	(Arbeitskopie)
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 ## @file
 # @brief Creates a basic set of accounts and a couple of transactions
-# @ingroup python-bindings-example
+# @ingroup python_bindings_examples
 
 from gnucash import Session, Account, Transaction, Split, GncNumeric
 
Index: src/optional/python-bindings/example_scripts/simple_invoice_insert.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_invoice_insert.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_invoice_insert.py	(Arbeitskopie)
@@ -36,7 +36,7 @@
 ##  @file
 #   @brief Add an invoice to a set of books
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import Session, GUID, GncNumeric
 from gnucash.gnucash_business import Customer, Invoice, Entry
Index: src/optional/python-bindings/example_scripts/change_tax_code.py
===================================================================
--- src/optional/python-bindings/example_scripts/change_tax_code.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/change_tax_code.py	(Arbeitskopie)
@@ -2,7 +2,7 @@
 
 ##  @file
 #   @brief Output all the credits and debits on an account
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import Session, Account
 
Index: src/optional/python-bindings/example_scripts/simple_session.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_session.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_session.py	(Arbeitskopie)
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 ##  @file
 #   @brief Example Script simple session
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import \
      Session, GnuCashBackendException, \
Index: src/optional/python-bindings/example_scripts/simple_sqlite_create.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_sqlite_create.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_sqlite_create.py	(Arbeitskopie)
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 ##  @file
 #   @brief Example Script simple sqlite create 
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import Session, Account
 from os.path import abspath
Index: src/optional/python-bindings/example_scripts/account_analysis.py
===================================================================
--- src/optional/python-bindings/example_scripts/account_analysis.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/account_analysis.py	(Arbeitskopie)
@@ -24,7 +24,7 @@
 ##  @file
 #   @brief Output all the credits and debits on an account
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 # python imports
 from sys import argv, stdout
Index: src/optional/python-bindings/example_scripts/test_imbalance_transaction.py
===================================================================
--- src/optional/python-bindings/example_scripts/test_imbalance_transaction.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/test_imbalance_transaction.py	(Arbeitskopie)
@@ -25,7 +25,7 @@
 ##  @file
 #   @brief Test the transaction imbalace viewing mechanisms
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from sys import argv
 
Index: src/optional/python-bindings/example_scripts/price_database_example.py
===================================================================
--- src/optional/python-bindings/example_scripts/price_database_example.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/price_database_example.py	(Arbeitskopie)
@@ -8,8 +8,13 @@
 #  OR:  export PYTHONPATH=$HOME/progs/lib/python2.6/site-packages
 # Then: gnucash-env ipython
 # The account file is not saved but always use a disposable copy.
-# Thanks for contributions by Christoph Holtermann
+# Thanks for contributions by Christoph Holtermann and Mark Jenkins
 
+##  @file
+#   @brief Test file for price database stuff
+#   @author Mike Evans, Christoph Holtermann, Mark Jenkins
+#   @ingroup python_bindings_examples
+
 from gnucash import Session
 
 # -------------------------------------------
Index: src/optional/python-bindings/example_scripts/simple_book.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_book.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_book.py	(Arbeitskopie)
@@ -2,7 +2,7 @@
 
 ##  @file
 #   @brief Simple example for a book 
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 import sys
 from gnucash import Session
Index: src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py
===================================================================
--- src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py	(Arbeitskopie)
@@ -26,7 +26,7 @@
 #   @brief Replicate the account structure of a
 #   book and apply basis opening balances from the original
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import Session, Account, Transaction, Split, GncNumeric
 from gnucash.gnucash_core_c import \
Index: src/optional/python-bindings/example_scripts/simple_business_create.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_business_create.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/simple_business_create.py	(Arbeitskopie)
@@ -36,7 +36,7 @@
 ##  @file
 #   @brief Set up a set of books for business feature use
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from os.path import abspath
 from sys import argv
Index: src/optional/python-bindings/example_scripts/priceDB_test.py
===================================================================
--- src/optional/python-bindings/example_scripts/priceDB_test.py	(Revision 19958)
+++ src/optional/python-bindings/example_scripts/priceDB_test.py	(Arbeitskopie)
@@ -13,7 +13,7 @@
 ##  @file
 #   @brief Test file for price database stuff
 #   @author Mike Evans 
-#   @ingroup python-bindings-examples
+#   @ingroup python_bindings_examples
 
 from gnucash import Session
 FILE = "PATH_TO_YOUR_TEST_FILE"  ## Fail is no saved but use a copy anyway
Index: src/optional/python-bindings/glib.i
===================================================================
--- src/optional/python-bindings/glib.i	(Revision 19958)
+++ src/optional/python-bindings/glib.i	(Arbeitskopie)
@@ -27,7 +27,7 @@
         This file may be obsolete, because the same definitions are also in base-typemaps.i.
     @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
     @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-    @ingroup python-bindings */
+    @ingroup python_bindings */
 
 
 %typemap(in) gint8, gint16, gint32, gint64, gint, gshort, glong {
Index: src/optional/python-bindings/__init__.py
===================================================================
--- src/optional/python-bindings/__init__.py	(Revision 19958)
+++ src/optional/python-bindings/__init__.py	(Arbeitskopie)
@@ -8,4 +8,4 @@
 #   @brief helper file for the importing of gnucash
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
 #   @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-#   @ingroup python-bindings
+#   @ingroup python_bindings
Index: src/optional/python-bindings/gnucash_core.i
===================================================================
--- src/optional/python-bindings/gnucash_core.i	(Revision 19958)
+++ src/optional/python-bindings/gnucash_core.i	(Arbeitskopie)
@@ -26,17 +26,19 @@
 
 /** @file
     @brief SWIG interface file for the core parts of GnuCash
-        This file is processed by SWIG and the resulting files are gnucash_core.c and gnucash_core_c.py
+
+        This file is processed by SWIG and the resulting files are gnucash_core.c and gnucash_core_c.py.
+        Have a look at the includes to see which parts of the GnuCash source SWIG takes as input.
     @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
     @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-    @ingroup python-bindings 
+    @ingroup python_bindings 
 
     @file gnucash_core.c
     @brief SWIG output file.
-    @ingroup python-bindings
+    @ingroup python_bindings
     @file gnucash_core_c.py
     @brief SWIG output file.
-    @ingroup python-bindings
+    @ingroup python_bindings
 */
 
 %feature("autodoc", "1");
Index: src/optional/python-bindings/gnucash_core.py
===================================================================
--- src/optional/python-bindings/gnucash_core.py	(Revision 19958)
+++ src/optional/python-bindings/gnucash_core.py	(Arbeitskopie)
@@ -26,79 +26,8 @@
 #  @brief High level python wrapper classes for the core parts of GnuCash
 #  @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
 #  @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-#  @ingroup python-bindings
+#  @ingroup python_bindings
 
-## @defgroup python-bindings
-#  Also have a look at the page @ref python-bindings-page.
-
-## @defgroup python-bindings-examples
-#  @ingroup python-bindings
-#  The python-bindings come with quite a lot of example scripts.
-
-##  @page python-bindings-page Python bindings
-#   Also have a look at group @ref python-bindings.
-#
-#   For the moment the python-bindings are only available via svn. They may be included
-#   in GnuCash 2.4.
-#
-#   To enable them in the compilation process you have to add --enable-python-bindings
-#   to the call of ./configure.
-#
-#   As a starting point have a look at the \link #python-bindings-examples example-scripts\endlink.
-#
-#   @section python-bindings-section Principles
-#   The python-bindings are generated using SWIG from the c-source-files of gnucash.
-#   It is possible to access a wide range of the functions of GnuCash in this way.
-#   SWIG extracts informations from the c-sources and provides access to the structures
-#   from python.
-#  
-#   SWIG reads gnucash_core.i and outputs gnucash_core.c and gnucash_core_c.py.
-#
-#   This leads to the bottom layer of funtions which is a quite raw extract and close to the original source.
-#   This yields access using the c-style-api.
-#   You will find a lot of pointers here which you can just ignore if input and output of the function have the
-#   same type.
-#   As a second layer there are some structures where a nice pythonic interface has been added.
-#   @section highlevel High level python wrapper classes
-#   If you
-# 
-#   @code >> import gnucash @endcode
-#
-#   You can access the structures of the high level api. For Example you get a Session object by
-#
-#   @code >> session=gnucash.Session() @endcode
-#
-#   @section c_style_api C-style-api
-#
-#   If you
-#
-#   @code >> import gnucash @endcode
-#
-#   The c-style-api can be accessed via gnucash.gnucash_core_c. You can have a look at all the possibilities
-#   at gnucash_core_c.py.
-#
-#   For example you could start a session by gnucash.gnucash_core_c.qof_session_begin(). But if you just try
-#
-#   @code session=gnucash.gnucash_core_c.qof_session_begin() @endcode
-#
-#   you will get an error message and realize the lack of convenience for you have to add the correct function parameters.
-#
-#   Not all of the available structures will work. SWIG just takes everything from the sources and translates it. Not everything
-#   is a working translation. At this point you are getting close to the developers whom you can contact at the mailing-list gnucash-devel@gnucash.org.
-#   A step further would be to fix the problem by changing SWIGs input files to correctly reflect the c-structure.
-#
-#   @section Thisorthat When to use which api ?
-#
-#   The start would surely be the high-level api for you can be quite sure to have something working and you will maybe find
-#   explanations in the example-scripts. If you search for something that is not yet implemented in that way you will have to
-#   take your way to the c-style-api.
-#
-#   @section pydoc Documentation
-#
-#   The documentation you just read uses doxygen. It collects documentation in GnuCash's sources. Besides that there is
-#   the classic python-documentation using help() and docstrings. Have a look at both.
-
-
 import gnucash_core_c
 
 from function_class import \
@@ -143,7 +72,7 @@
 
     def __init__(self, book_uri=None, ignore_lock=False, is_new=False,
                  force_new= False):
-        """A convenient contructor that allows you to specify a book URI,
+        """A convenient constructor that allows you to specify a book URI,
         begin the session, and load the book.
 
         This can give you the power of calling
@@ -157,7 +86,7 @@
         is_new is passed to qof_session_begin as the argument create,
         and force_new as the argument force. Is_new will create a new
         database or file; force will force creation even if it will
-        destroy and existing dataset.
+        destroy an existing dataset.
 
         ignore_lock is passed to qof_session_begin's argument of the
         same name and is used to break an existing lock on a dataset.
Index: src/optional/python-bindings/gnucash_business.py
===================================================================
--- src/optional/python-bindings/gnucash_business.py	(Revision 19958)
+++ src/optional/python-bindings/gnucash_business.py	(Arbeitskopie)
@@ -24,7 +24,7 @@
 #   @brief High level python wrapper classes for the business parts of GnuCash
 #   @author Mark Jenkins, ParIT Worker Co-operative <mark@parit.ca>
 #   @author Jeff Green,   ParIT Worker Co-operative <jeff@parit.ca>
-#   @ingroup python-bindings
+#   @ingroup python_bindings
 
 import gnucash_core_c
 
Index: src/doc/doxygen_main_page.c
===================================================================
--- src/doc/doxygen_main_page.c	(Revision 19958)
+++ src/doc/doxygen_main_page.c	(Arbeitskopie)
@@ -50,13 +50,13 @@
 - \ref plugindesign
 - \ref pricedocs
 - \ref gnucashextension
+- \ref python_bindings_page
 - \ref qif
 - \ref backendapi
 - \ref budgetplan
 - \ref taxnotes
 - \ref todo
 - \ref userprefs
-- \ref python-bindings-page
 
 Each overview in this section is generated directly from the
 source files using Doxygen but some topics need updating.
Index: src/doc/Makefile.am
===================================================================
--- src/doc/Makefile.am	(Revision 19958)
+++ src/doc/Makefile.am	(Arbeitskopie)
@@ -28,7 +28,8 @@
   guid.txt \
   qif.txt \
   generic-druid-framework.txt \
-  user-prefs-howto.txt
+  user-prefs-howto.txt \
+  python-bindings-doxygen.py
 
 
 docdir = ${GNC_DOC_INSTALL_DIR}
Index: src/doc/python-bindings-doxygen.py
===================================================================
--- src/doc/python-bindings-doxygen.py	(Revision 0)
+++ src/doc/python-bindings-doxygen.py	(Revision 0)
@@ -0,0 +1,135 @@
+## @file 
+# @brief Documentation file for GnuCashs python bindings, input file for doxygen.
+#
+# This file holds the more explanatory parts of the doxygen-source-documentation.
+# You will find the contents at @ref python_bindings_page.
+#
+# @par To-Do:
+# @li Work out the relation of scheme/guile and python-bindings
+# @li maybe join python_bindings_page and group
+# @li work on the structure of the documentation to make it more clear
+# @li try to make SWIG include the documentation of the c-source
+# @li make funtion-links in SWIG-generated files work.
+# @li some words to the tests
+#
+# @author Christoph Holtermann
+# @date December 2010
+# @ingroup python_bindings
+
+
+## @defgroup python_bindings
+#  Also have a look at the page @ref python_bindings_page.
+
+## @defgroup python_bindings_examples
+#  @ingroup python_bindings
+#  The python-bindings come with quite a lot of example scripts.
+
+##  @page python_bindings_page Python bindings
+#   Also have a look at group @ref python_bindings.
+#
+#   For the moment the python-bindings are only available via svn. They may be included
+#   in GnuCash 2.4.
+#
+#   They can be found in src/optional/python-bindings.
+#
+#   To enable them in the compilation process you have to add --enable-python-bindings
+#   to the call of ./configure.
+#
+#   As a starting point have a look at the \link python_bindings_examples example-scripts\endlink.
+#
+#   @section possibilities What are the Python bindings good for ?
+#
+#   The python bindings supply the ability to access a wide range of the core funtions of GnuCash. You
+#   can read and write Transactions, Commodities, Lots, access the business stuff... You gain the ability
+#   to manipulate your financial data with a flexible scripting language.
+#
+#   Not everything GnuCash can is possible to access though. The bindings focus on basic accounting functions.
+#   Have a look at the examples to get an impression.
+#
+#   @section python_bindings_section Principles
+#   The python-bindings are generated using SWIG from parts of the source-files of GnuCash.
+#
+#   @note Python-scripts should not be executed while GnuCash runs. GnuCash is designed as
+#   a single user application with only one program accessing the data at one time. You can force your 
+#   access but that may corrupt data. Maybe one day that may change but for the moment there is no active development on that.
+#
+#   @subsection swigworks What SWIG does
+#
+#   SWIG extracts informations from the c-sources and provides access to the structures
+#   to python. It's work is controlled by interface files :
+# 
+#   @li gnucash_core.i
+#   @li timespec.i
+#   @li glib.i 
+#   @li @link base-typemaps.i src/base-typemaps.i @endlink This file is shared with Guile.
+#
+#   it outputs:
+#
+#   @li gnucash_core.c
+#   @li gnucash_core_c.py
+#
+#   If you have generated your own local doxygen documentation (by "make doc") after having compiled the python-bindings, doxygen
+#   will include SWIGs output-files. The official version at http://svn.gnucash.org/docs/HEAD/ does not include
+#   these files. It's actually quite interesting to have a look at them through doxygen, because they contain all that you can
+#   access from python.
+#
+#   This c-style-api is the bottom layer. It is a quite raw extract and close to the original source. Some more details are described further down.
+#
+#   For some parts there is a second layer of a nice pythonic interface. It is declared
+#   in 
+#   @li gnucash_core.py and 
+#   @li gnucash_business.py.
+#   @li function_class.py contains helper functions for that.
+#
+#   @section howto How to use the Python bindings
+#   @subsection highlevel High level python wrapper classes
+#   If you
+# 
+#   @code >> import gnucash @endcode
+#
+#   You can access the structures of the high level api. For Example you get a Session object by
+#
+#   @code >> session=gnucash.Session() @endcode
+#
+#   Here you will find easy to use things. But sometimes - and at the current level rather sooner than
+#   later - you may be forced to search for solutions at the :
+#
+#   @subsection c_style_api C-style-api
+#
+#   If you
+#
+#   @code >> import gnucash @endcode
+#
+#   The c-style-api can be accessed via gnucash.gnucash_core_c. You can have a look at all the possibilities
+#   at gnucash_core_c.py.
+#
+#   You will find a lot of pointers here which you can just ignore if input and output of the function have the
+#   same type.
+#
+#   For example you could start a session by gnucash.gnucash_core_c.qof_session_begin(). But if you just try
+#
+#   @code session=gnucash.gnucash_core_c.qof_session_begin() @endcode
+#
+#   you will get an error message and realize the lack of convenience for you have to add the correct function parameters.
+#
+#   Not all of the available structures will work. SWIG just takes everything from the sources that it is fed with and translates it. Not everything
+#   is a working translation, because not everything has been worked through. At this point you are getting closer to the developers who you can 
+#   contact at the mailing-list gnucash-devel@gnucash.org. There may be a workaround. Maybe the problem can only be fixed by changing SWIGs input 
+#   files to correctly translate the c-source. Feel free to post a question at the developers list. It may awaken the interest of someone who creates
+#   some more beautiful python-interfaces.
+#
+#   @section Thisorthat When to use which api ?
+#
+#   The start would surely be the high-level api for you can be quite sure to have something working and you will maybe find
+#   explanations in the example-scripts. If you search for something that is not yet implemented in that way you will have to
+#   take your way to the c-style-api.
+#
+#   @section pydoc (Further) documentation
+#
+#   The documentation you just read uses doxygen. It collects documentation in GnuCash's sources. Besides that there is
+#   the classic python-documentation using help() and docstrings. Have a look at both.
+#   You may also have a look into the archives of gnucash-devel@gnucash.org. On Bugzilla there is also some interesting
+#   talk regarding the development process. Then you can use the abilitys of svn to see the history of the code by 
+#   "svn log" done in the directory of the python-bindings.
+#
+
Index: src/base-typemaps.i
===================================================================
--- src/base-typemaps.i	(Revision 19958)
+++ src/base-typemaps.i	(Arbeitskopie)
@@ -1,6 +1,6 @@
 /** @file 
-    @brief interface file for SWIG, used by python-bindings and scheme(?).
-    @addtogroup python-bindings
+    @brief interface file for SWIG, used by python-bindings and scheme/guile.
+    @addtogroup python_bindings
 */
 
 /* Not sure why SWIG doesn't figure this out. */
