Skip to content

QGIS Plugin

amplifi edited this page Jun 29, 2017 · 1 revision

Cadasta needs a simple QGIS plugin to allow users to download/upload data from/to Cadasta.

Detailed Feature Description

QGIS is the main open source desktop GIS program. By creating a QGIS plugin that interfaces with the Cadasta API it will allow users to easily import and export data as well as manipulate it in QGIS. This allows advanced users to do more robust analysis than Cadasta can provide as well as upload data for sharing they may already have on their system.

User Stories

  • As a user I want to be able to create a Cadasta project from the Cadasta QGIS plugin and upload data
  • As a user I want to be able to upload data to an existing project from the Cadasta plugin
  • As a user I want to be able to connect to the Cadasta platform a get a list of projects I have access to
  • As a user I want to be able to select a project and download the data from Cadasta into my project

Requirements

Project Creation and Upload

  • User clicks on Cadasta drop down menu in QGIS and selects "Create Project"
  • A create project wizard dialogue appears. The fields Organization, Project name, Public/Private, Project description, Project URL and Contacts are displayed (Organization, Project name and if the project is public/private are required)
  • User is asked to select a map layer in their QGIS project to use as a basis of their project, if there is no layer loaded they are asked to close the dialogue and add a layer first.
  • User can select if the map layer extent will be their project extent or the extent of the map window in their QGIS project
  • To select an organization there is a button next to the drop down to "Get Available Organizations", when pressed it retrieves the orgs the user has access to
  • The user clicks "next"
  • On the next screen the user must map their attributes in their layer to the Cadasta data schema. The columns are displayed the left with the attributes in the map layer and the right the Cadasta data schema drop down. There is a checkbox for each map layer attribute to not upload that column.
  • The drop down for the Cadasta data schema includes the following options: Location Geometry, Location Type, Party Type, Party Name, Relationship Type, Location Attribute, Party Attribute, Relationship Attribute
  • User selects appropriate data schema for each attribute in the map layer.
  • Once finished the user presses "Save" and the layer is uploaded to the Cadasta platform
  • If there is an error the user is asked to correct the error if not the dialogue message states "Your Project has been created and Data Uploaded. To add access to other users please login directly to the Cadasta platform"

Existing Project Data Upload

  • User clicks on Cadasta drop down menu in QGIS and selects "Upload Data to Existing Project"
  • An upload data to project wizard appears. It connects to Cadasta server to get a list of projects user has the right to upload data to
  • User selects the project they want to upload their data to and clicks "next"
  • The QGIS plugin retrieves the data schema for that project
  • On the next screen the user must map their attributes in their layer to the Cadasta data schema. The columns are displayed the left with the attributes in the map layer and the right the Cadasta data schema drop down. There is a checkbox for each map layer attribute to not upload that column.
  • The Cadasta data schema drop down contains each possible attribute that can accept the data type of the layer attribute
  • User selects the appropriate attribute for each attribute in the map layer
  • Once finished the user presses "Save" and the layer is uploaded to the Cadasta platform
  • If there is an error the user is asked to correct the error

Attribute Mapping Details

Cadasta has three types of entities in its data model. Locations, Relationships and Parties. To successfully upload data to Cadasta a mapping between those entity types and their attributes needs to be made.

Required Attributes

  • Locations: Geometry, Location Type
  • Relationships: Relationship Type
  • Parties: Party Name, Party Type

Any other attribute is optional. It is required to know which entity the attribute should be associated to either the Location, Relationship or Party. For successful data upload only location information is required, but if relationships and parties custom attributes are selected then the required attributes are also needed.

Download Project Data

  • User clicks on Cadasta drop down menu in QGIS and selects "Download Data from Cadasta"
  • A download data wizard appears. It connects to Cadasta server to get a list of projects user has the right to data from
  • User selects the project they want to download data from and clicks "next"
  • The QGIS plugin retrieves the data for that project and adds it as a layer to the QGIS project

Configuration of Plugin Settings

  • User clicks on Cadasta drop down menu in QGIS and selects "settings"
  • The setting dialogue appears
  • The user is giving the option to input an instance of Cadasta (https://platform.cadasta.org) is the default as well as their username and password. There is a checkbox to save the password with a warning that it will be saved in plain text
  • User clicks "Test Connection"
  • If connection works the save button becomes active if not the user is asked to check their inputs
  • User clicks save

Ancillary Information

  • The user must already have a Cadasta account to use the plugin. There should be a link within the plugin instructing them to sign-up

Wireframes

Clone this wiki locally