Turning Data Into Information with Geo- Ontologies Justin Lewis - TerraFrame
A bit about us
Some Basic Requirements Remote data collection (no internet) Data syncing across systems Data manipulation & analysis Dynamic data mapping & charting Report generation Complex domain models Mapping data with NO geometries Expansive configuration...
Not Easy
Some Common Challenges 1.Disparate data sources 1.Limited organizational resources (no GIS staff) 1.A lack of quality GIS data 1.Need for robust data + vis manipulation tools
DATA
Turn messy & incomplete data into useful data
How do we meet these needs?
FOSS + 4G Community And many others
A Different Approach A method for modeling data as ontologies that can help turn messy and/or incomplete data into useful data.
Ontology Crash Course
Ontologies | User Data
What are ontologies? A style of programming that allows you to define human-like inferences about data objects.
To Elaborate Ontology is a has a Geo-Ontology is a located in
An Ontology Model for Geo Universal A collection of geographic locations representing a common political hierarchy. Ex: Countries GeoEntity A single geographic entity within a Universal collection. Ex: South Korea
GeoEntity
Universal
Purpose of Universals / GeoEntities Provide a central geographic context for the system
Strengths Of This Approach 1.Well defined spatial and non-spatial relationships 1.No dependency on geometries (less GIS)
Ontologies in the OPEN RunwaySDK An ontology based data engine. GeoDashboard A visualization layer that sits on top of RunwaySDK.
What about user data?
User Data Is Different User data can maintain relationships to GeoEntities and Universals giving user data spatial context.
JSON { "sales":[ {"product":"widget 1", "amount":"2", "loc":"denver"}, {"product":"widget 2", "amount":"5", "loc":"seattle"} ] }
GeoJSON { "type": “feature”, “geometry”:{ “type”:”point”, “coordinates”:[124.6, 10.1] }, “properties”:{ "location":"denver" }
Common GIS Formats
Spreadsheet
The Reality of User ALL Data Incomplete Messy Non-Existent (geometry)
Why is this valuable? Generic data integration, manipulation and visualization
What do I mean by “generic”?
My data, Your data, Everyone’s data
No Problem No Geom?
How does this work in a web application?
What about geometries?
Geometries Are Used To Visualize GeoEntities Visualize lowest level data points Algorithmically enhance data Validate spatial relationships However, geometries are optional
RunwaySDK in The Wild Deployed to 7 countries and growing
Demo
Thank
GitHub Links github.com/terraframe/Runway-SDK github.com/terraframe/geodashboard