namespace for parsing a GTFS feed into a Datascript transaction.
The algorithms coerces GTFS csv files into entities that reference each other through IDs. The IDs are taken directly from GTFS.
A small dynamic renaming is performed to make it more compatible with Datascript design. The renaming is based on the GTFS naming convention, for example: stop_lon, stop_url, trip_id, trip_headsign, etc.
We transform those strings into: :stop/lon, :stop/url, :trip/id, :trip/headsign.
This is important to be able to create relationships between entities through transactions, for example {:trip/id 1, :trip/route [:route/id 1]}. This allows us to create relationships between entities without actually having them, i.e. thread them simply as data
namespace for parsing a GTFS feed into a Datascript transaction.
The algorithms coerces GTFS csv files into entities that reference
each other through IDs. The IDs are taken directly from GTFS.
A small dynamic renaming is performed to make it more compatible
with Datascript design. The renaming is based on the GTFS naming
convention, for example: stop_lon, stop_url, trip_id, trip_headsign, etc.
We transform those strings into: :stop/lon, :stop/url, :trip/id,
:trip/headsign.
This is important to be able to create relationships between entities through
transactions, for example {:trip/id 1, :trip/route [:route/id 1]}. This
allows us to create relationships between entities without actually having
them, i.e. thread them simply as data(parse zipstream filename)takes a filename and parses its content if supported by this parser. Entries that do not conform to the gtfs spec are removed. Returns a vector of conformed entries
takes a filename and parses its content if supported by this parser. Entries that do not conform to the gtfs spec are removed. Returns a vector of conformed entries
(ref? field)a reference is a field that links to a unique field in another file and that is not that field itself
a reference is a field that links to a unique field in another file and that is not that field itself
(resource entity)takes a datascript entity and checks if any of its values are entities, if so replaces them by their unique identity value
takes a datascript entity and checks if any of its values are entities, if so replaces them by their unique identity value
(transaction! zipstream)returns a Datascript transaction of the complete gtfs feed
returns a Datascript transaction of the complete gtfs feed
map of GTFS filenames to post-processing functions. Useful to remove unnecessary information from the GTFS feed; just to reduce the amount of datoms in datascript
map of GTFS filenames to post-processing functions. Useful to remove unnecessary information from the GTFS feed; just to reduce the amount of datoms in datascript
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |