Skip to content

2.3 Project Records

amplifi edited this page Jun 29, 2017 · 1 revision

Records are the "main data" within a project. They consist of the location, relationships and parties.

Detailed Description

Records consists of Location, Relationships and Parties. All three of these items are closely related to each other so they are laid out below. A record must have at least one entry of a location(note: I can't think of a way you could have a relationship without at least a location or a party). For example some location data might not contain ownership information so it may only contain parcel records in that project. Other project may contain location (showing the geometry of a parcels), relationships (showing the ownership) and the parties (information about the person or organization that owns/has rights to the property)

  • Location: geometry of a record, can be a point, line or polygon. Parcels, points of interest, community boundaries, pastoral grazing paths
  • Relationships: Links locations to parties or locations to locations. Can be relationships such as tenure.
  • Parties: organizations, people or other entities associated with a location.

User Stories

  • I want to be able to add new record to my Cadasta project.
  • I want to be able to edit existing information for a record.
  • I want to be able to delete an entire record from my Cadasta project.
  • I want to be able to view my records on a map
  • I want to be able to add or edit geographic information for my record
  • I want to be able to search/sort/filter my records
  • I want to be able to view all the records in my project.

Requirements

Adding a New Record

these requirements are for how a record would be added through a web browser, they do not cover mobile data collection or import of existing data

Users can begin add a new record from location. They cannot add a relationship first, since a relationship cannot really exist alone.

Required Attributes for Record Entities

  • Location: type, geometry (for version .01 we will assume that all locations have a geometry)
  • Relationship: type
  • Parties: name, type

Additional default entity attributes

  • Location: Address, Description, Property ID
  • Relationship: Description, Acquired Date
  • Parties: Description, ID Number

Adding a New Location

Multiple Ways to get to New Location Screen

  1. User selects "Add New Location" from record index page.
  2. User previously selected "Add New Location" after completing either adding another Location, Party or Relationship

Actions from New Location Screen

  1. New Location Edit Screen Appears. It includes a map for digitizing the location (points, lines and polygons are possible), a type field and all additional project specific attributes.
  2. User enters data. (note for discussion: are there any required fields?)
  3. Upon finishing entering the data the user presses a safe button. They are then given an opportunity to either add another location record, create a new relationship or add a new party.

Adding a New Party

Multiple Ways to get to New Party Screen

  1. User selects "Add New Party" from record index page.
  2. User previously selected "Add New Party" after completing either adding another Location, Party or Relationship

Actions from New Party Screen

  1. New Party Edit Screen Appears.
  2. User enters data. Name and type are required fields. Additional project attributes are shown for data entry.
  3. Upon finishing entering the data the user presses a save button. They are then given an opportunity to either add another party record, create a new relationship or add a new party.

Adding a New Relationship

Relationships cannot exist alone. They need to be linked to at least one location or party.

Multiple Ways to Get to Add New Relationship Screen

  • User selected "Add New Relationship" after adding a new location or party
  • From the party or location index page the user selected multiple entities and clicks "Add New Relationship". If at least one entity is not selected it is not possible to "Add New Relationship" error message should appear.

Process of Adding New Relationship

  1. New Relationship Edit Screen Appears.
  2. User enters data. Type, Name and Description are available by default. Type is a required field. Additional project specific attributes are available for entry as well.
  3. Upon finishing entering the data the user presses a save button. If they came to the New Relationship Screen from Location they are asked if they would like to add a new party or select an existing party/parties, if they came from the party screen they are asked if they would like to add a new location or select an existing location(s). Users can also opt to not add the other entity at this time and simply save.
  4. If the user opts to add an existing location or party they are taken to the index for the appropriate page and can select or or many to add to the relationship.
  5. If they opt to add a new one they are taking to the appropriate "new" screen for location or party.

Note: If the user searches for an existing party or location and then changes their mind and want to add a new one there should be an easy way to do that.

Editing a Record

Each edit is logged for the 1st release. In the future this would be part of the bitemporal database. For further description of thinking on object life cycles.

How user gets to Edit Screen

Users can edit a location, relationship or party from the view page of that individual record or from the index page. They reach this by pressing the "edit" button from the details page for the specific entity.

Actions from Edit a Relationship/Location/Party Screen

Once a user is in an edit area for a portion of a record they can update the fields. There are options to "cancel" or "save". If the user hits "cancel" then a dialog asking them if they are sure appears. If they hit save all of their changes are logged and they are returned to the previous screen they were on.

Deleting a Record

Each deletion is logged for the 1st release. In the future this would be part of the bitemporal database. For further description of thinking on object life cycles.

All or part of a record can be deleted. A user can choose to archive from location, relationship or party. When an object is deleted its history is still preserved.

  • Deleting a relationship: Just a relationship can be archived.
  • Deleting a location: The user should be notified that this also archived the relationship since relationships are between entities.
  • Deleting a party: The user should be notified that this also archived the relationship since relationships are between entities.

Note: Should there be an easy way to delete an entire record? Or are people more likely to just want to delete a part of it and then update with a new relationship?

Data Import

One of Cadasta's goals is to be a clearing house of property rights information. Importing data is an important component of this goal. For the initial release uploads will be relatively simple and this is what is outlined below. For complex existing data the API will be used to insert data into the Cadasta platform.

Upload of Existing Data

initial file types: xls, csv, shp

  1. Project manager goes to project records page
  2. Project manager select "Import Data"
  3. Project manager uploads a file (must be either xls, csv, shp)
  4. Column headers must match exactly data structure of table. Some columns can be missing, but names that do not match existing data structure will be ignored. Prior to import a warning message should appear listing which columns will not be imported and ask the user if they want to import the data anyway.

For initial release only locations and parties can be imported, relationships are not preserved.

Linking to Online Data

this will be implemented after initial .1 release

Examples of Data

Project map that allows for visual browsing of locations.

User Flows and Wireframes

Design Documents

This records section has been incorporated into 2.2 Project Map.

Ancillary Information

It is important that the way the location information was collected is recorded. For example if it was collected by GPS or digitized from imagery or a handdrawn map.

Dependencies

Clone this wiki locally