Hi Paolo,
Hi Luca,
Hi all,

I'll explain my idea about QGIS-Server and WPS implementation.

For the next QGIS release, 3Liz has decided to improve QGIS-Server WFS implementation. The main improvement is to cover the maximum of the 1.0.0 standard, especially Transaction. For Transaction and GetFeature Request, I needed to extend the QGIS Expressions directly in the QGIS core. I added some spatial operators like Intersects, Contains, Disjoint but I also added spatial constructor like geomFromWKT, Intersection, buffer. The last point means that it's possible to construct a buffer with the QGIS Expression system. I also discovered that in the Filter Encoding OGC standard, it's possible to use Functions and the QGIS Expression system provides a reader for this way of describing expressions. And Nathan Woordrow publishing 'User defined expression functions for QGIS' on his blog http://woostuff.wordpress.com/2012/11/10/user-defined-expression-functions-for-qgis/ . This point explaining how the new QGIS Expression system is extendable. And for me it was the start for testing a WPS implementation, because I needed WPS for validating geometry for the WFS Transaction Request.

I've worked on a WPS project which provides a way to create Process in a wide range of programming langage, the ZOO-Project. I've worked on the JavaScript Provider. In this project, you have to code to create new process.

With the QGIS Expression you just have to know how to write an expression to create a new Process. It's not coding.
For example the Buffer Process can be described like this :
buffer("geometry","distance")
You want to create a Process which retrun the buffer without the geometry :
difference(buffer("geometry","distance"),"geometry")
And we can define a Process which return the result of a QGIS Expression as the Process parameter.

My plan for WPS implementation is firstly to find fund, to :
* implement the standard (defining how to declare process, how to use the posting XML for Excute Request, how to use QGIS layer from project, etc)
* loading Python scripts for 'User defined expression functions'
* Using Sextante

Sextante is not my priority because it is more complexe, the QGIS-Server doesn't load python and python plugins, and we firstly need to provide a way to have simple Process and simple way to describe Process, after that it will be easy to use SEXTANTE.

Regards,
René-Luc D'Hont
3Liz
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to