-
-
Notifications
You must be signed in to change notification settings - Fork 3
GeoCompare Design
GeoCompare is intended to be modular in order to a accommodate multiple different input and output formats geographically--tied data. This makes it easy to support a new format by adding a new parser and/or output for the new format.

Fetchers save data from sources like API's to a local cache for processing
the fetcher for the most part is just a straight up generic file downloader that pretty much just downloads files to the cache directory. fetchers are mainly to like poke all the right settings in terms of like headers and auth to get the data downloaded. the parser part is what is meant to actually interperet the files
Parsers are written to provide a somewhat standard set of methods for accessing data from a particular type of file stored in the cache. This abstracts away the need to handle parsing different formats like GeoJSON in other parts of the program
Actions perform the actual operations on the data, such as associating records based on the proximity of their coordinates, or checking which records are contained in another dataset in the cache
Outputs are responsible for taking the results of actions and formatting them in th desired format. This can be used to export the results in formats like CSV, a database, etc.