Riverscapes / fmLTPBR

Filemaker low-tech process-based project management and monitoring database application.
http://fmltpbr.riverscapes.xyz/
0 stars 0 forks source link

Export a Riverscapes Compliant Riverscapes Project from FM #4

Open joewheaton opened 4 years ago

joewheaton commented 4 years ago

We should make sure that you have a script that allows creation/population of a riverscapes project from the FileMaker App or by reading the database, and that you have the same or similar function that can update that project when new stuff is added to filemaker database (e.g. revise design, implementation, maintenance and/or monitoring).

You already (in app) show how to export:

nick4rivers commented 4 years ago

@joewheaton - Ideally this shouldn't be that hard, fm even has some built in export data as .xml functions that might help. I'll try to get to this soonish.

philipbaileynar commented 4 years ago

@nick4rivers and @joewheaton I would like to quickly discuss where this is all going and the best way to move the FM app forward. There are lots of options:

  1. FM app creates a riverscapes project XML file that references the FM database:
    1. The project XML file could actually store all the database contents as text within the XML.
    2. The project folder structure could contain a copy of the database contents in something more open source and portable (either SQLite or JSON).
  2. The FM pro exports the data to a centralized database (postgreSQL with PostGIS provides some cool web mapping opportunities)
    1. The database schema could mirror that of the FM database (aka an "explicit schema") that is most powerful for queries and an API but is brittle if the schema is still changing.
    2. The schema could be simplified with a single record for each FM database and the contents of each FM database stored in a single column as JSON. This wouldn't support useful queries but it would be robust for future db schema changes and would be the quickest way to deliver some kind of data synchronization between the databases on iPads).

There are advantages and disadvantages to both approaches. Option 1 is superficially simpler but feels odd to take a well designed database and flatten it to a text file (either project XML or JSON). Option 2 is more powerful but moves towards a centralized web viewer with mapping capabilities and side-steps the riverscapes warehouse initiative.

So I feel like I need to know more about the objectives and future direction of the app before I can recommend a path forward.

nick4rivers commented 4 years ago

@philipbaileynar - here's the manual that compliments the app: https://ecologicalresearchinc.box.com/s/efoew37h21dml0zk8vfd6gaixdz5w9xa

philipbaileynar commented 4 years ago

There will be a riverscapes data warehouse that stores the File Maker pro databases. Each database will be stored as a riverscapes project (see below). This will be a one-way-trip, meaning that Anabranch employees can export a riverscapes project from the LTPBR app and then upload it into the data warehouse. The project will include the File Maker Pro database as well as all the data stored as plain text and the photos. Anyone, non app users included, will be able to browse the data warehouse and retrieve part or all of the riverscapes project. i.e. a user might just download the photos. Or they might download all the data as plain text and write some kind of script to generate a report summarizing all projects in the warehouse.

We will not build any kind of central database to combine and store LTPBR app databases at this time. The app is still in flux and the cost to build such a database requires substantial funding that is yet to be secured.

LTPBR App Riverscapes Projects

The following is a proposed folder structure for the LTPBR riverscapes project:

data/ltpbr.json
data/features.geojson
data/ltpbr.flmk
photos/2019_10_28_image_xxxx.jpg
photos/2020_01_01_image_xxxx.jpg
reports/structures_report.pdf
reports/reaches_report.pdf
reports/photo_points.pdf
project.rs.xml

Note that the file names should be static and predictable. File names referenced in the project.rs.xml should not have variable information in them (such as the date or project name etc), especially the ltpbr.json and features.geojson files, both of which could potentially be scraped by other processes in the cloud. Photos and reports can have variable names.