RESTful Geoprocessing API

12 views

Formal Metadata

Title
RESTful Geoprocessing API
Title of Series
Part Number
61
Number of Parts
193
Author
Pross, Benjamin
License
CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
FOSS4G, Open Source Geospatial Foundation (OSGeo)
Release Date
2016
Language
English

Content Metadata

Subject Area
Abstract
We are seeing an increasing demand for a standardized REST binding for web-based geoprocessing. In this talk, we will present the ongoing discussions and developments that will lead to a RESTful binding for WPS 2.0. In the ongoing OGC Testbed-12, REST bindings for different OGC Web Services, among them WPS, will be developed and described in Public Engineering Reports. 52°North is leading the developments regarding WPS. However, this effort will need the support of the interested communities inside and outside the OGC. We want to use this talk to inform the audience about our concepts for a RESTful Geoprocessing API and we are eager to getting input for the way to go. Benjamin Pross (52°North GmbH)
Loading...
Degree (graph theory) Network topology Geometry Multiplication sign Image processing Representational state transfer Maxima and minima
Computer chess Email Complex (psychology) Scientific modelling Demo (music) Range (statistics) Source code Cloud computing Water vapor Client (computing) Data model Summation Spring (hydrology) Web service Representational state transfer Forest Dependent and independent variables Descriptive statistics Physical system Exception handling Metropolitan area network Satellite Link (knot theory) Software developer Electronic mailing list Basis (linear algebra) Interface (computing) Computer simulation Sound effect Instance (computer science) Process (computing) Uniform resource name Quicksort Sequence diagram Point (geometry) Slide rule Proxy server Similarity (geometry) Latent heat Goodness of fit Database Directed set Conditional-access module Traffic reporting World Wide Web Consortium Default (computer science) Standard deviation Demo (music) Information Physical law Client (computing) Coma Berenices Ultraviolet photoelectron spectroscopy Line (geometry) Cartesian coordinate system Calculation Uniform resource locator Word Summation Personal digital assistant Function (mathematics) Noise Wireless LAN Standard deviation Keyboard shortcut Building Multiplication sign Sheaf (mathematics) Instance (computer science) Function (mathematics) Parameter (computer programming) Mereology Semantics (computer science) Web syndication Variance Image resolution Uniform resource locator Video game Linker (computing) Pattern language Process (computing) Information Addressing mode Extension (kinesiology) Process (computing) File format Geometry Moment (mathematics) Open source Representational state transfer Price index Connected space 4 (number) output Resultant Reverse engineering Asynchronous Transfer Mode Ocean current Read-only memory Electronic mailing list Theory Field (computer science) Power (physics) Revision control Causality Operator (mathematics) String (computer science) Reduction of order Maize Proxy server Subtraction Operations research Projective plane Computer animation Logic Web service Synchronization Dependent and independent variables Separation axiom Computer worm
Dataflow Server (computing) Process (computing) Computer animation Demo (music) Uniform resource name Demo (music) Interior (topology) Instance (computer science) Line (geometry)
Convex hull Interior (topology) Scientific modelling Cloud computing Function (mathematics) Mereology Web syndication Summation Data model Pointer (computer programming) Stress (mechanics) Physical law Process (computing) Area Process (computing) File format Geometry Moment (mathematics) Bit Representational state transfer Prediction Process (computing) output Decimal Right angle Energy level Arithmetic progression Resultant Network operating system Robot Electronic program guide Open set Traffic reporting Units of measurement Form (programming) Capability Maturity Model Computer architecture World Wide Web Consortium Demo (music) Validity (statistics) Projective plane Denial-of-service attack Line (geometry) Residual (numerical analysis) Word Explosion Computer animation Personal digital assistant Mathematics Web service Dependent and independent variables Units of measurement
Metropolitan area network Keyboard shortcut Electric generator Presentation of a group Machine vision Decision theory Moment (mathematics) Bit Representational state transfer Human migration Tablet computer Revision control Summation Web service Computer animation Integrated development environment Order (biology) Synchronization Process (computing) 5 (number) Proxy server Library (computing) Condition number
Computer animation Oval
so a please welcome Benjamin policies for the 1st time because he she did the set the ability of persisting in his Tapia new features of the imaging process I work at the 52 degrees north come from inside not very far from you yeah and I will presented the duplexing REST API the tree are currently thinking about the thing often to the currently developing so 1st you introduce some of
the OGC Web Processing Service in a few slides because I'm the REST API as some we have built upon this then the rest API itself we introduced after that I like to talk about a proxy that we have developed that implements and this REST API if you have time I think so theory a demo life them all and then last but not least the old look OK so and the the reverse processing services from 2007 I was so it stays still fairly young standard it's all about the processing so it's a similar service interface and its used to describe a the process offerings describe the inputs and outputs of these processes and to get it hasn't and execute operation to execute processes no process is observed are specified that can use up to the then there's some and the processes there is a wide range of what they can be used in the calculations like in section or something but also some complex computational models weather forecasts something that Moritz also used to work as an interface to let you see something like cross years for example the version 2 . 0 is out there more than you know and turning the rest proxies also based on this version so we introduce the operations of the communities common operation in the Odyssey of worlds returns measure what the service and can be accessed from the KBP enough this proposed separation that's friends information about the specific process the difference in input into did you find and then you get the description of what the system process needs as input and what it produces what's accessible Where KP in Proc that's true operation is only accessible by epoxy in in the new Senate so people's removed and yet with that you execute a process and the inputs and that needs some so 2 new operations and use with the repairs to 0 it's status yeah for obtaining sums debates about process mainly percentage so you can get and the process is finished giving the results with the good result operations all successful available in KP and Cox binding so let me quickly describe the execution notes and because of this very and what later from so the normal synchronous execution goes like this and the client sends a crest to the receive and then processes the output does the work and during that time which can take some time for complex models the client has signed to wait for the response the effects of the process finished the Democrats since the results back in the wish to be response of course if the connection is lost and in between or something happens the special specific process without system is lost and so forth um extensive processes that take a long time and the asynchronous execution mode small applicable and with this model of the support based model the client sends requests which compressed with every best the repressor resisted sends immediately and right response back to the client containing saying had the and um the various starts working In this connection this then close in the very moment the hands received from the client and was something else some the best processing building and status aggressive come into play at the status of the client can just commission on the status of a process from the repairs wireless customers requests and the press sense for example and that the percentage from there are no clank into something else again and term the process is finished and the kind of request gets results of yeah can process the results again the client OK so so much about the guess real many of you know that memory dealt with the the exciting part of the due process and REST API so just directly goal in Europe what you do with this database for the yeah the repairs although the endpoint and justice and get request so we at the moment we are defining Noel no patent for this and when you well could be anything and if a syndicate requests for this better abilities in the moments this includes a list of processes that with the words also attention I'll come to that in a minute that is so what looks like you're on the moment Jason it's just translated from the XML I what what some noise noise this is such a to to change still only development and yeah so this is the 1st entry point to the REST interface from you can attach slash processes for the best will end up but there's just the list of onshore fiction that's was taken from the logical reduce Jason response solve for what's new what's not and the WPS standard that you were get didn't you well yes of the of the processes of the process so which a client and then can directly access again and this URL vicious and get request then gives you will the process description also again in Jason at the moment of so normally probably the most exciting immigration executes we have the same I'm just base URL such processes such across the city that we had for the process description no you just don't don't send a GET request but opposed crystal and the Christopher as body armor the execute request and Jason you can attach an optional with power to 2 with this sum UI percentage
true or false the defaults and execution notes for the binding will be is occurrence because we we thought that more and more rest like yeah and then executed requests this again at the moment 1 is just the semantic search Woodcrest's translated Jason yes you can the put the inputs directly and they're like you went on texts from In this example the law probably also Morris like you can have the reference to some extent result and input field so what happens if you will sense and as a chronic defaults executed immediately a new process instance we be created so that's 1 can be seen as a resource in the resource is created that is accessible by idea during next yeah it an enantiomer response back more or less from the information is that's so worm there you get 12 1 had so that's the created and a good indication that I'm back that contains some the link toward the and created execution instance so that's the next lead you can follow and the whole um copy or watching and forests and execution the non-default case you have to make them like a settlement like a showed before we have to wait until the courses excuse finished and then you directly get them back the Jason result documents containing the topics for an exception report status and for them to get service information a lot of operations and yet we have this this idea that this so you will indication that I just mentioned that and if a syndicate request why the processes running you get back and Jason a solid and what a command cause as for a single only for a single you don't have this because you it's unfinished directly this is a southern arguments also from the external translated there was a short time this an example shows there already finished closed execution but you have some additional put part and rich with a chess annual pointing to the process what so the next you get to get the result could talk with your success this you why I get request yeah I and think it can gestures or determined this is how it could look like on again in this case the operatives in line the document this is OK anything for things like when on text water judaism of course I don't would recommend to what extent and in so for this you could from because the orbit as referenced and the um execute Jason request then this new operation In mentioned that before introduce lessons to extension for the the repressed to 0 and specifications called the dismissed from operation was that you can yes stop running processes or I removed finished processing so the the outputs the and any artifact but the the process created this is done Wireless you will we saw before only that no you send an edge to be delete them to this and then the process stops or dismissed you get that can so just to another OK not to do that again and that's and the tricky we decided to if you send another leads immigration and we to this you will normally what should happen this secreted another and 200 but In this case we say OK that was done before use and they a full for client client so all right I think some yeah we have some ideas to extend the API this basis as I said on the current of interest will do a standard and things that are not some specified there are some for example a the running jobs so lists and operation for some to list all the time available an ideas of of these jobs I I think I mean that that was in the well actually maybe you saw that lots of yeah this would have to be having a specific to work to support because it's it's not in the there appears to have 0 on specification and you can think of getting this um existing jobs and the for processing or for the whole yeah the locus already standpoint another nice idea from would be to get some 1 outputs by exciting and in the moment at the moment you really get all the process of outputs if there are more yeah you get all the causal puts its not defined told a single output and it would be nice to have that's in the REST API and we also the and if you have that and we can also think about the the attaching was requesting different formats of of which is also I think the rest future you can the by and the tension you well parameter and format of the so you I'll moments because Jason and then getting them back that or put into a single format an awesome and then you get some GML the same put and now this is not specified in the in the standard so we didn't do it at the moment but this would be something West in the future I think OK so the rest below the because proxy 1 selectable that's um yeah that's not source projects that we created the and this really is a proxy for all for any delegates to the 0 1 so that offers this time you processing REST API was just introducing on is this a string of I think quite easy tool to maintain the this is the major projects so it sort of source and check it out tried with 0 and maybe and to reaffirm some feature requests or issues if there should be 1 OK so I think only time for the demo so where everything works
just quickly changed to Firefox so there's certainly instance lining and o Demo server American excess that OK pencil but so this is really just the the base URL
oxygen he using REST API some instances so in this Jason but useless flow processes and I can really just on Click on here and go to the next step OK but the more important thing so going to the polls and for that this thing called
post meant that OK so it starts from this is saying execute documents uris lost a bit of that before and this is a very simple 1 room just link the method in the form of doing something more complex but playing all the demos and the moving this will work but actually it specify the input in line with what reference and yet redefined at the moment the output format and whether we wanted to kind of put as value also in line or as reference then it would it would get if the reference to the to the or so now if I send this haven't worked this is the asynchronous case so I don't have this you powered up at the top and then I what is you get back and reside in response interior of this cell and see the 2 201 1 but should be there more important is also the the and location at if you follow we can toward the status in a way that's finished I was I was so if they would be running and you would have instead this 1 and 2 from the opera would be a percentage but not finished and we get that we get back at the reference to the outputs we only present 1 they can just simply follow that here so syndicate requests and we get back the results so and a couple of a low requests prepared to you we can do a single executes of the very same process their so where you don't see that but so finished and this and that the results of this is the very same and results documents and saw with it's just another job the now we can do the again with the reference and with less than a but it's kind of going so I'm exceeded this was and found that the outputs of so have been transferred by reference so actually I was wrong that's what could to the first one and some 1st 1 had the directly directly in all put put it on and here we have a reference if you send a little regret it has that be directly gets only the the the convex hull of the input OK so I think that's enough for the demo yeah
few words about the use case so part of this work we have done was from funded by the what a new projects especially the progress the validity pilots or and here we have the um in the architecture so we wanna have predictions of flooding areas and J. inputs are still some some gorge data from all just imagine if you're on the robot relying on them and the digital model and that goes into it I would guess which this the slot model and then sends back home on the affected areas and for this you can to use and also the the recipient and their fingers quite nice use case so conclusion yet I introduced the rest guide to you just a few months ago we went to the richest maturity model the method of that and we think this this recipe liberty there many of lots of things that we are using it to the we are using references you haven't answered the question whether this whole processing and and executing really fits somewhere to the whole rest eroding so I would say it's a there were 2 . 5 phones in this model we we can discuss that maybe later the Jason I was mentioned that is subject to change not very nice right the moment maybe you know something better in the future remove there are some efforts ongoing at the moment at the Open Geospatial Consortium and about the stress and Jason things and then there will be in the public and report at the end of this year some arriving different approaches so there are already some of them rest approaches in the OTC world for some of what and I know we have this for the repairs and in the yard all of these efforts will be what's up we saw and they were given some recommendations thank you and we hope that this residue can also go through the OTC summarization process right you unit so any questions you can come and fj
then interesting presentation and you hi migration is Tennessee you assume that by using this this DPA 8 endpoint my 1 because it a bit so any exposes it his and when it's artist is not the Hayden because that's the thing is I have reduce so of our and the how each out already using it an GDP environment indexed by introducing this initiative I hope that the existing and when feedstock rest but it's not the end of the day in all or some of which still axis yeah you can read like you want you can know you would reasoning service all the publicly available so the it it is indicated that existing and it just sits on top of that and be loosely coupled of and you don't expect that this this TDI order of his library to work with the top 50 do not the celebrity need NEW is so it should be fun things will OK I didn't actually trying to but it because of the user different oblivious over and but want to add this capability I hope you itself and that's what we did the proxy I mean that's really just simple just wanted to another we and it should work so this is is it's ability professor then is a Christian and so I may have 1 the i in that use it on your slate of uh so vision In the condition was 1 that yielded you also I will wondering if yi it is not possible so to use it to ways under the older generation and the temperature epoxy in front
of WP is someone that you know maybe we some mutation yet that is not possible at the moment solid only works for history of the world because it is in like of as get stitutions get efficiently question for example I mean it would not be allowed to make it also work with the because 1 to about as the new versions of what we think we support that with so thank you know you can move to him as a decision if you need the
Loading...
Feedback

Timings

  587 ms - page object

Version

AV-Portal 3.11.0 (be3ed8ed057d0e90118571ff94e9ca84ad5a2265)
hidden