Changes between Version 4 and Version 5 of OwsFramework/OwsProtocol


Ignore:
Timestamp:
15/01/08 10:57:34 (12 years ago)
Author:
spascoe
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OwsFramework/OwsProtocol

    v4 v5  
    11'''NOTE''': This document is work in progress.  It reflects the state of the codebase at [source:/TI05-delivery/ows_framework/branches/ows_framework-refactor].  This is evolving away from the code used in the deployed NDG Discovery Portal.  To see the original version of the OWS Protocol see [http://proj.badc.rl.ac.uk/ndg/wiki/OwsFramework/OwsProtocol?version=1 This previous version]. 
    2  
    3 == A note about Pylons terminology == 
    4  
    5 In Pylons  
    6  
    7  - ''controllers'' are classes inherited from pylons.controllers.WSGIController that reside in the {{{controllers}}} package of your application.  Requests are routed to particular controllers via the ''Routes'' configuration. 
    8  - ''actions'' are methods of a ''controller''.  They are also selected using ''Routes''. 
    9  
    10 == OGC Web Services == 
    11  
    12 Support for implementing OGC Web Services using Pylons is provided via: 
    13  
    14  1. The {{{ows_common}}} package. 
    15  1. The !OwsController class 
    16  1. The OWS Controller protocol defining standard attributes on Pylons controllers and actions 
    17  1. Decorators on controller actions 
    18  
    19 === The {{{ows_common}}} package === 
    20  
    21 The {{{ows_common}}} package provides a library of objects modelling 
    22 the OWS Common specification v1.1.0.  Metadata required for a OWS 
    23 should be represented using {{{ows_common}}} where ever possible to 
    24 maximise code reuse.  For instance, templates are provided to render 
    25 {{{ows_common}}} objects into OWS 1.1.0 or WMS 1.3.0 compliant 
    26 GetCapabilities documents 
    27 ({{{ows_server.templates.ows.get_capabilities}}} and 
    28 {{{ows_server.templates.ows.wms_capabilities}}}.  Implementations of 
    29 other services can reuse parts of the core template. 
    30  
    31 {{{ows_common.exceptions}}} provides a set of exception classes 
    32 that are caught by the framework and rendered as a standard OWS 
    33 exception response. 
    34  
    35 {{{ows_common.pylons}}} provides a framework for creating OGC WebServices with the pylons 
    36 web-application framework. 
    37  
    38 === The !OwsController class === 
    39  
    40 All OWS implementations should be implemented as a Pylons controller 
    41 inheriting from {{{ows_common.pylons.ows_controller.OwsController}}}.  The method 
    42 {{{OwsController._renderCapabilities()}}} returns a response object 
    43 containing a standard OWS common 1.1.0 Capabilities document. 
    44 Populating this document with service-specific metadata can be done by 
    45 overriding the {{{OwsController._loadCapabilities() method. 
    46  
    47 OWS operations are created by defining a {{{OwsController}}} method of 
    48 the same name wrapped in the {{{@ows_operation}}} decorator.  See below 
    49 about decorators. 
    502 
    513=== Decorators ===