Difference between revisions of "GSoC 2020 Data transaction implementation on pygeoapi"

From OSGeo
Jump to navigation Jump to search
Line 19: Line 19:
 
#'''What I have done during this period?'''
 
#'''What I have done during this period?'''
 
* Joined pygeoapi Gitter room
 
* Joined pygeoapi Gitter room
* Gone through the current features of pygeoapi
+
* Went through the current features of pygeoapi
* Understood the workflow of the codebase
+
* Went through OGC API - Features - Part 4: Simple Transactions [http://docs.opengeospatial.org/DRAFTS/20-002.html] draft
 
* Forked the pygeoapi GitHub repository [https://github.com/alex-mathew/pygeoapi Repository]
 
* Forked the pygeoapi GitHub repository [https://github.com/alex-mathew/pygeoapi Repository]
 
* Introduced myself over the channel and shared my proposal over mailing list for suggestions
 
* Introduced myself over the channel and shared my proposal over mailing list for suggestions
Line 27: Line 27:
 
* Updated links on the wiki Google_Summer_of_Code_2020_Accepted page [[https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2020_Accepted Link]]
 
* Updated links on the wiki Google_Summer_of_Code_2020_Accepted page [[https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2020_Accepted Link]]
 
* Had a discussion with mentors regarding the expectations and development workflow
 
* Had a discussion with mentors regarding the expectations and development workflow
* Discussed the openapi specification with the mentors
+
* Discussed the openapi specification document with the mentors
 
* Started working on the openapi document
 
* Started working on the openapi document
  

Revision as of 12:20, 28 May 2020

Introduction

Idea

pygeoapi is a python server implementation of the OGC API suite of standards. The project emerged as part of the next generation OGC API efforts in 2018 and provides the capability for organizations to deploy a RESTful OGC API endpoint using OpenAPI, GeoJSON, and HTML. pygeoapi is open source and released under an MIT license.

This GSoC project aims to add support for simple transactions in pygeoapi. This project will implement Create, Update, Delete operations in pygeoapi data providers, thereby enabling all standard CRUD transactions in pygeoapi. This will enable an application developer to perform a transaction in a pygeoapi data provider through an HTTP request containing the resource id and suitable HTTP verb (POST/PUT/DELETE/PATCH). The project proposal is based on OGC API - Features - Part 4: Simple Transactions.

Project proposal

My proposal for GSoC 2020 can be found at Proposal.

Advantages from this project

pygeoapi implements OGC WFS 3.0 (OGC Feature API) which is fully RESTful. This makes it much easier for the application developers to work with. This project idea implements 'Part 4 : Simple Transactions' of this OGC standard. It adds transactional capabilities to the pygeoapi data providers by which application developers can perform transactions via the RESTful API itself. A RESTful API supporting complete CRUD transactions will be preferred by most application developers over other non-RESTful APIs. So this will make pygeoapi a more popular choice among application developers.


Link to Github repository: Repo

Timeline

4th May - 31st May

Community bonding period:

  1. What I have done during this period?
  • Joined pygeoapi Gitter room
  • Went through the current features of pygeoapi
  • Went through OGC API - Features - Part 4: Simple Transactions [1] draft
  • Forked the pygeoapi GitHub repository Repository
  • Introduced myself over the channel and shared my proposal over mailing list for suggestions
  • Created a wiki page for the project "Data transaction implementation on pygeoapi"
  • Updated wiki user page and added my personal information [Link]
  • Updated links on the wiki Google_Summer_of_Code_2020_Accepted page [Link]
  • Had a discussion with mentors regarding the expectations and development workflow
  • Discussed the openapi specification document with the mentors
  • Started working on the openapi document

Student's Biography

My name is Alex Mathew. I am a computer science graduate now pursuing my masters in geoinformatics under the Centre of Studies in Resources Engineering, Indian Institute of Technology Bombay, Mumbai, India. Some more information about me can be obtained by following the link: [Link]

Mentors

  • Jorge de Jesus
  • Francesco Bartoli