Description
The BioCASE Provider Software (BPS), an xml data binding middleware, is used as an abstraction layer in front of a database. After local configuration the database is accessible as a BioCASE service - as defined by the BioCASE protocol - and can be used to create distributed heterogenous information systems. The BPS is agnostic to the kind of data being exchanged and any conceptual schema, such as ABCD for the BioCASE network, can be used to set up distributed networks.
The provider software is a collection of tools to be installed on the data provider's webserver. The core part of the provider software is the PyWrapper software. It is an XML/CGI database interface written in object-oriented Python, which allows a standard access to a variety of database management systems and arbitrarily structured databases. This software therefore "wraps" the database into a standard XML format. Since version 2.0 the core PyWrapper libraries are bundled with this package. The configuration assistant includes since version 2.0 a so called Concept Retrieval Interface (CRI) to find appropiate concepts to map your data to.
The connection to the database is done by different database modules that use SQL templates. This way it is easy to build new DB modules for different DB vendors. Non SQL capable databases will not be supported. There are a variety of DBMSs already supported by the wrapper - for a list of supported databases see the documentation.
Documentation
Take a look at the BioCASE Provider Software Wiki and the links provided on this site to find Documentation for users, a FAQ, the version history, known bugs and requested features for future versions.
Download
provider_software_2.5.0beta.tar.gz
The latest stable version provided as an GZIP archive for download.
It is suitable for windows, linux, mac os x, solaris and probably all other unixes.
If you know subversion you can always find the latest stable version in the following repository with anonymous access:
http://ww2.biocase.org/svn/bps2/branches/stable
For the additionally required database modules (depending upon your DBMS) see the example installation of the provider software library test: Additional Python modules