Welcome to the Remote Service Library Project! This project provides a collection of Python modules to easily consume Web Services using various different technologies like, SOAP, WSDL, JSON, SMD, XML-RPC, etc.
The main goal of this project is to provide a simple, dynamic client interface to web services, regardless which specific protocol or standard is in use. In general the user of this library should not be concerned with the underlying communication protocol, and usage of the library is identical across all those different standards out there.
Another goal is to reduce the installation foot print. Often a user only needs one specific protocol or feature to access a web service. So it should not be necessary to install all possible features, but only all needed features. Hence, the complete library is split into many small modules, which are as independent of each other as possible. This approach has two other big advantages. The library is highly extensible, and it is rather easy to add support for additional service description and protocol standards. Additionally the independence of each single module may make them useful for other use cases.
File releases are available at the Python Package Index (PyPi). The Sourceforge.net Project Page is used to announce news, hosting this web site and provides the bug tracker, mailing list etc. The mailing list at the Sourceforge Project Page is greatly preferred over the forum.
Links to all the file releases and package descriptions.
Links to all the project management information (bugs, mailing list, etc).
Currently there is only on mailing list. It is used for all sorts of discussion, feedback, help, etc. Once the traffic is growing too much, there will be more topic specific mailing lists.
The project source is kept in a Mercurial repository.
Contains releases of the rsl.example project which will be in sync with the module releases on PyPi. This project demonstrates many of the aspects, the whole rsl project provides.
All packages and modules are managed with the help of zc.buildout and setuptools. Hence installation and usage should be rather straight forward.
All projects in the Mercurial repository prefixed with rslib belong to this project. Every released version has is also tagged in that repository. The repository contains also one example project, which tries to collect all sorts of examples about how to use the library and also serves as documentation. The development version of this example project may be out of sync with the other released modules. However, there will be releases of the example project, which should work straight out of the box with the releases on PyPi.
Module | Description | Release | Mercurial |
---|---|---|---|
rsl | top level module | PyPi | hg |
rsl.wsdl | common WSDL module | PyPi | hg |
rsl.wsdl1 | WSDL 1 | PyPi | hg |
rsl.soap11 | SOAP 1.1 + WSDL 1 SOAP 1.1 extensions | PyPi | hg |
rsl.mime | WSDL 1 MIME extensions | PyPi | hg |
rsl.http | WSDL 1 HTTP extension | PyPi | hg |
rsl.rest | REST like services | PyPi | hg |
rsl.jsonrpc10 | JSON-RPC 1.0 implementation | PyPi | hg |
rsl.smd01 | SMD 0.1 implementation | PyPi | hg |
rsl.upnp | UPnP description module | PyPi | hg |
rsl.xmlrpc | XML-RPC module | PyPi | hg |
rsl.xsd | XML Schema type system | PyPi | hg |
rsl.examples | Examples project | SF.net | hg |
The repository also contains some unreleased modules, which are not yet complete enough to release them. If you want you can try them, but there is probably very little information about the completeness of these modules available.
The whole library and all its modules are currently classified as alpha status, because it is in an early development stage and the API is likely to change a little bit. (At least it will become more Python coding standard compliant).
Documentation is currently not really available. The best documentation sources currently available are the source itself, the test scripts in the modules, and the example project. To improve this situation, I highly recommend to ask questions, so that I can prioritize the documentation topics.
Furthermore, as far as I know it is currently not used by any other people than me. Hence I have not got any feedback how useful it is for other people. If you have some feedback, just drop a message in the mailing list or send a mail. (Author email is available at PyPi project page or at sf.net project page.)