==============================================
SOAPpy - Simple to use SOAP library for Python 
==============================================

Current Maintainer: 	

	Gregory R. Warnes <Gregory.R.Warnes@Pfizer.com>

Original Authors: 

	Cayce Ullman <c_ullman@yahoo.com>
        Brian Matthews <blm@blmatthews.com>

Contributions by:

	Christopher Blunck <blunck2@gst.com>
	Brad Knotwell <b.knotwell@f5.com>
	Mark Bucciarelli <mark@hubcapconsulting.com> (ported WSDL
             client from ZSI)
	Ivan R. Judson 	<judson@mcs.anl.gov> (Globus support)
	Kirk Strauser <kirk@daycos.com>
	Antonio Beamud Montero <antonio.beamud@linkend.com> (patches
  	     for integrating SOAPpy into Zope)
	And others.

Copyright (c) 2002-2005, Pfizer, Inc.
Copyright (c) 2001, Cayce Ullman.
Copyright (c) 2001, Brian Matthews.
All rights reserved, see the file LICENSE for conditions of use.

INTRODUCTION
============

    The goal of the SOAPpy team is to provide a full-featured SOAP library
    for Python that is very simple to use and that fully supports dynamic
    interaction between clients and servers.
    
    INCLUDED
    --------

    - General SOAP Parser based on sax.xml
    - General SOAP Builder
    - SOAP Proxy for RPC client code
    - SOAP Server framework for RPC server code
    
    FEATURES
    --------

    - Handles all SOAP 1.0 types
    - Handles faults 
    - Allows namespace specification
    - Allows SOAPAction specification
    - Homogeneous typed arrays
    - Supports multiple schemas
    - Header support (mustUnderstand and actor)
    - XML attribute support
    - Multi-referencing support (Parser/Builder)
    - Understands SOAP-ENC:root attribute
    - Good interop, passes all client tests for Frontier, SOAP::LITE, SOAPRMI
    - Encodings
    - SSL clients (with Python compiled with OpenSSL support)
    - SSL servers (with Python compiled with OpenSSL support and M2Crypto
      installed)
    - Encodes XML tags per SOAP 1.2 name mangling specification (Gregory Warnes)
    - Automatic stateful SOAP server support (Apache v2.x) (blunck2)
    - WSDL client support
    - WSDL server support
    
    TODO (See RELEASE_INFO and CHANGELOG for recent changes)
    ----

    - Timeout on method calls
    - Advanced arrays (sparse, multidimensional and partial)
    - Attachments
    - mod_python example
    - medusa example
    - Improved documentation
    
    MANIFEST
    --------
    
    Files

    
        README	        This file
        RELEASE_NOTES       General information about each release
        ChangeLog           Detailed list of changes
        TODO		List of tasks that need to be done
    
        setup.py            Python installation control files
        MANIFEST
        MANIFEST.in
        
        SOAPpy.spec*        RPM package control file
    
    Directories
    
        SOAPpy/*            Source code for the package
        SOAPpy/wstools/*    Source code for WSDL tools
        tests/*             unit tests and examples
        validate/*          interop client and servers
        bid/*		N+I interop client and server
        doc/*		Documentation
        contrib/		Contributed examples (also see test/)
        docs/		Documentation
        tools/              Misc tools useful for the SOAPpy developers
        zope/               Patches to Zope allowing it to provide SOAP services
    

INSTALLATION
============

    REQUIRED PACKAGES:
    -----------------

    - fpconst 0.6.0 or later,
      <http://research.warnes.net/projects/rzope/fpconst/>

    - pyXML 0.8.3 or later, <http://pyxml.sourceforge.net>
    
    OPTIONAL PACKAGES
    -----------------
    
    - pyGlobus, optional support for Globus,
      <http://www-itg.lbl.gov/gtg/projects/pyGlobus/>
    
    - M2Crypto.SSL, optional support for server-side SSL
      <http://sandbox.rulemaker.net/ngps/m2/>
    
    - If Python is compiled with SSL support (Python 2.3 does so by
      default), client-side use of SSL is supported
    
    INSTALLATION STEPS
    ------------------
    
    As of version 0.9.8 SOAPpy can be installed using the standard python
    package installation tools.  
    
    To install:
    
      1) Unpack the distribution package:
    
         On Windows, use your favorite zip file uncompression tool.
    
         On Unix: 
        
             $ tar -xvzf SOAPpy-$VERSION$.tar.gz
        
             if you have gnu tar, otherwise
        
             $ gzcat SOAPpy-$VERSION$.tar.gz | tar -xvf -
        
      2) Change into the source directory
    
         $ cd SOAPpy-$VERSION$
    
      3) Compile the package 
    
         $ python setup.py build
    
      4) Install the package

	 On Windows:

	     $ python setup.py install

	 On Unix install as the owner of the python directories
	 (usally root):
    
	     $ su root
             Password: XXXXXX
             $ python setup.py install
    
    
DOCUMENTATION
=============

    QUICK START
    -----------

    A simple "Hello World" http SOAP server:

        import SOAPpy
        def hello():
	    return "Hello World"

        server = SOAPpy.SOAPServer(("localhost", 8080))
        server.registerFunction(hello)
        server.serve_forever()

    And the corresponding client:

        import SOAPpy
        server = SOAPpy.SOAPProxy("http://localhost:8080/")
        print server.hello()

    BASIC TUTORIAL
    --------------

    Mark Pilgrims' _Dive Into Python_, published in printed form by
    Apress and online at at http://diveintopython.org provides a
    nice tutorial for SOAPpy in Chapter 12, "SOAP Web Services".
    See http://diveintopython.org/soap_web_services .

    OTHER DOCUMENTATION
    -------------------
      
    For further information see the files in the docs/ directory.

    Note that documentation is one of SOAPpy's current weak points.
    Please help us out!


GETTING HELP
============

    REPORTING BUGS
    --------------
    
    Please submit bug reports, feature requests, patches, etc at the
    Python Web Services web site:  http://pywebsvcs.sourceforge.net.
    
    MAILING LIST
    ============
    
    Please address questions and general discussion to the
    pywebsvcs-talk mailing list, pywebsvcs-talk@lists.sourceforge.net.
    
    For subscription information visit
    http://lists.sourceforge.net/lists/listinfo/pywebsvcs-talk.  
    List archives are available at
    http://sourceforge.net/mailarchive/forum.php?forum=pywebsvcs-talk

    Please remember that the authors do have day jobs, so please try
    the mailing list before contacting them directy.  
        
$Id: README,v 1.18 2005/02/22 15:58:35 warnes Exp $
