PyWPS 4
Development restart
Jáchym ˇCepický1
1http://les-ejk.cz
Geoinformatics, Prague 2013
TOC
1 PyWPS
2 PyWPS 4
PyWPS
OGC WPS on the Server
Since 2006
Python
http://pywps.wald.intevation.org
http://github.org/geopython/pywps
PyWPS - what it is NOT
PyWPS is no analytical tool or engine. It does not perform
any type of geospatial calculation.
PyWP...
PyWPS - what it is NOT
PyWPS is no analytical tool or engine. It does not perform
any type of geospatial calculation.
PyWP...
PyWPS - what it is NOT
PyWPS is no analytical tool or engine. It does not perform
any type of geospatial calculation.
PyWP...
Keywords
Keywords
rather bike, then a car
Keywords
#small
Keywords
#modular
Keywords
#fast
Keywords
#easy
Keywords
#slick
Keywords
#accessories (GRASS, GDAL, Shapely, #python)
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
Started from scratch
Use Python 2.7 (for future 3.0 migration)
Try different interpreters of Python (pypy)
Easy pa...
PyWPS 4
#geopython 2006
PyWPS 4
#geopython 2013
lxml http://lxml.org
GRASS-WPS, GRASS-Python
Werkzeug http://werkzeug.pocoo.org/
Python 3
Django
. . .
Process definition in PyWPS 3
class Buffer (WPSProcess ) :
def __init__ ( s e l f ) :
WPSProcess . __init__ ( self , i d e ...
Process definition in PyWPS 4 (proposal)
2-level APIs
Providing the low-level API (integration with GRASS,
writing a compat...
PyWPS 4 - upper-level
class Buffer ( pywps . Process ) :
class Input :
distance = pywps . L i t e r a l ( value_type=pywps...
PyWPS 4 - low-level
def make_buffer ( request ) :
. . .
make_buffer_process = pywps . create_process (
i d e n t i f i e r...
Where, what, how, who?
http://github.org/jachym/pywps-4
Tests, Basic request parsing, process definition, . . .
Alex Morega...
Where, what, how, who?
http://github.org/jachym/pywps-4
Tests, Basic request parsing, process definition, . . .
Alex Morega...
Where, what, how, who?
http://github.org/jachym/pywps-4
Tests, Basic request parsing, process definition, . . .
Alex Morega...
Where, what, how, who?
http://github.org/jachym/pywps-4
Tests, Basic request parsing, process definition, . . .
Alex Morega...
thank you!
jachym@les-ejk.cz
http://github.org/jachym/pywps-4
questions?
Upcoming SlideShare
Loading in …5
×

PyWPS Development restart

2,066 views

Published on

Presentation about ideas of the new PyWPS. Geoinformatics FCI 2013, Prague

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,066
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PyWPS Development restart

  1. 1. PyWPS 4 Development restart Jáchym ˇCepický1 1http://les-ejk.cz Geoinformatics, Prague 2013
  2. 2. TOC 1 PyWPS 2 PyWPS 4
  3. 3. PyWPS OGC WPS on the Server Since 2006 Python http://pywps.wald.intevation.org http://github.org/geopython/pywps
  4. 4. PyWPS - what it is NOT PyWPS is no analytical tool or engine. It does not perform any type of geospatial calculation. PyWPS is not special XML parser or generator. It does not validate your GMLs against given schemas (yet), it does not build GML from Python objects. It is not complicated
  5. 5. PyWPS - what it is NOT PyWPS is no analytical tool or engine. It does not perform any type of geospatial calculation. PyWPS is not special XML parser or generator. It does not validate your GMLs against given schemas (yet), it does not build GML from Python objects. It is not complicated
  6. 6. PyWPS - what it is NOT PyWPS is no analytical tool or engine. It does not perform any type of geospatial calculation. PyWPS is not special XML parser or generator. It does not validate your GMLs against given schemas (yet), it does not build GML from Python objects. It is not complicated
  7. 7. Keywords
  8. 8. Keywords rather bike, then a car
  9. 9. Keywords #small
  10. 10. Keywords #modular
  11. 11. Keywords #fast
  12. 12. Keywords #easy
  13. 13. Keywords #slick
  14. 14. Keywords #accessories (GRASS, GDAL, Shapely, #python)
  15. 15. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  16. 16. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  17. 17. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  18. 18. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  19. 19. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  20. 20. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  21. 21. PyWPS 4 Started from scratch Use Python 2.7 (for future 3.0 migration) Try different interpreters of Python (pypy) Easy parsing with lxml Prepare for next WPS version Change of the whole process concept
  22. 22. PyWPS 4 #geopython 2006
  23. 23. PyWPS 4 #geopython 2013
  24. 24. lxml http://lxml.org GRASS-WPS, GRASS-Python Werkzeug http://werkzeug.pocoo.org/ Python 3 Django . . .
  25. 25. Process definition in PyWPS 3 class Buffer (WPSProcess ) : def __init__ ( s e l f ) : WPSProcess . __init__ ( self , i d e n t i f i e r =" buffe s e l f . addComplexInput ( i d e n t i f i e r =" input " , . . . . . s e l f . addLiteralOutpu ( i d e n t i f i e r =" input " , . . . . . def execute ( s e l f ) : . . . return
  26. 26. Process definition in PyWPS 4 (proposal) 2-level APIs Providing the low-level API (integration with GRASS, writing a compatibility api for PyWPS-3, and defining a bunch of processes programatically if the user needs that. The process is just a callable Inspired by Django Upper-level API for easy user-written processes
  27. 27. PyWPS 4 - upper-level class Buffer ( pywps . Process ) : class Input : distance = pywps . L i t e r a l ( value_type=pywps . F layer = pywps . Complex ( a s _ f i l e =True , max_occ class Output : feature_count = pywps . L i t e r a l ( value_type=pyw fortune = pywps . L i t e r a l ( value_type def execute ( s e l f ) : . . .
  28. 28. PyWPS 4 - low-level def make_buffer ( request ) : . . . make_buffer_process = pywps . create_process ( i d e n t i f i e r = ’ makebuffer ’ , t i t l e = . . . inputs =[ pywps . L i t e r a l ( i d e n t i f i e r = ’ distance ’ , value_ pywps . BoundingBox ( i d e n t i f i e r = ’ c l i p ’ ) , ] , outputs =[ pywps . L i t e r a l ( i d e n t i f i e r = ’ feature_count ’ , v pywps . L i t e r a l ( i d e n t i f i e r = ’ fortune ’ , value_ty ] , handler=make_buffer ) make_buffer_process ( )
  29. 29. Where, what, how, who? http://github.org/jachym/pywps-4 Tests, Basic request parsing, process definition, . . . Alex Morega @mgax, Jorge de Jesus, Jachym Cepicky http://lists.osgeo.org/cgi-bin/mailman/ listinfo/pywps-dev
  30. 30. Where, what, how, who? http://github.org/jachym/pywps-4 Tests, Basic request parsing, process definition, . . . Alex Morega @mgax, Jorge de Jesus, Jachym Cepicky http://lists.osgeo.org/cgi-bin/mailman/ listinfo/pywps-dev
  31. 31. Where, what, how, who? http://github.org/jachym/pywps-4 Tests, Basic request parsing, process definition, . . . Alex Morega @mgax, Jorge de Jesus, Jachym Cepicky http://lists.osgeo.org/cgi-bin/mailman/ listinfo/pywps-dev
  32. 32. Where, what, how, who? http://github.org/jachym/pywps-4 Tests, Basic request parsing, process definition, . . . Alex Morega @mgax, Jorge de Jesus, Jachym Cepicky http://lists.osgeo.org/cgi-bin/mailman/ listinfo/pywps-dev
  33. 33. thank you! jachym@les-ejk.cz http://github.org/jachym/pywps-4 questions?

×