Changes between Version 4 and Version 5 of CowsFramework


Ignore:
Timestamp:
14/11/10 09:04:28 (9 years ago)
Author:
spascoe
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CowsFramework

    v4 v5  
    1 = CEDA OGC Web Services framework = 
    2  
    3 [[PageOutline]] 
    4  
    5 == Introduction == 
    6  
    7 The COWS framework is  a [http://www.python.org Python] software framework being developed at the [http://www.badc.rl.ac.uk BADC] for implementing Open Geospatial Consortium web service standards. 
    8  
    9 The framework aims facilitate the implementation of the latest WMS, WCS and WFS specifications on top of a single metadata and data model.   
    10  1. All services generate OWS Common 1.1.0 compliant !GetCapabilities metadata internally.  This is then serialised to service-specific !GetCapabilities XML by the framework. 
    11  1. The data model is [http://ndg.nerc.ac.uk/csml CSML] for feature manipulation and [http://proj.badc.rl.ac.uk/ndg/wiki/CdatLite cdat_lite] for fine-grained array manipulation. 
    12  1. The web service stack is built on [http://www.pylonshq.com Pylons], a web application framework particularly well suited to the low-level HTTP communication required by RESTful web services.   
    13  1. Because Pylons is built from top to bottom using the [http://wsgi.org/wsgi WSGI] specification, COWS servers can be deployed in a wide variety of configurations from personal development servers to multithreaded/multiprocess servers embedded in apache. 
    14  
    15 == Prerequisites == 
    16  
    17 You will need: 
    18  
    19  1. Python 2.5 
    20  1. The [http://pypi.python.org/pypi/setuptools setuptools] package, providing the {{{easy_install}}} tool 
    21  1. The [http://www.unidata.ucar.edu/software/netcdf/ NetCDF libraries] installed in a standard place or indicated with the {{{NETCDF_HOME}}} environment variable 
    22  1. The following python packages that cannot be reliably auto-installed with {{{easy_install}}} 
    23     - [http://pypi.python.org/pypi/numpy numpy] (this will install with {{{easy_install}}} but it needs to be installed first) 
    24     - Python Imaging Library 
    25     - [http://pypi.python.org/pypi/matplotlib matplotlib] 
    26  
    27 == Installation == 
    28  
    29 Once you have the prerequisites in place ;-), you can install COWS by invoking {{{easy_install}}} giving the NDG egg repository as an argument: 
    30 {{{ 
    31 $ easy_install -f http://ndg.nerc.ac.uk/dist cows 
    32 }}} 
    33  
    34 This will download a host of dependencies including [http://proj.badc.rl.ac.uk/ndg/wiki/CdatLite cdat_lite], [http://ndg.nerc.ac.uk/csml CSML] and [http://www.pylonshq.com Pylons].  We recommend doing this inside a [http://pypi.python.org/pypi/virtualenv virtualenv]. 
    35  
    36 == Creating a server == 
    37  
    38 COWS employs {{{paster}}} templates to create a skeleton application for you.  The default application assumes a CSML backend and serves WMS and WCS.  It includes a trivial demo web application for test purposes.  To create your server do: 
    39 {{{ 
    40 $ paster create -t cows_server MyCowsServer csmlstore=<csml-dir> 
    41 }}} 
    42  
    43 The server will be created in the {{{CowsServer}}} directory.  If you don't give a csmlstore argument you will be prompted for one and this can be left blank if you don't want to use CSML.  Your development configuration file is in {{{MyCowsServer/development.ini}}}.  Customise this with a suitable port then start the server with: 
    44 {{{ 
    45 # From within MyCowsServer 
    46 $ paster serve development.ini 
    47 }}} 
    48  
    49 More details on how to run and configure Pylons servers are on the [http://www.pylonshq.com Pylons] website. 
    50  
    51 == Resources == 
    52  
    53  - The COWS API documentation is available online [http://home.badc.rl.ac.uk/spascoe/ndg3/cows_doc/frames.html here]. 
     1See http://cows.badc.rl.ac.uk/wiki/CowsFramework