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
(datomize! zipstream)
takes a map of gtfs key-name -> content and returns a sequence of maps ready to be used for transact
takes a map of gtfs key-name -> content and returns a sequence of maps ready to be used for transact
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
(respace k)
takes a keyword and a set of keywords and attempts to convert it into a namespaced keyword using the set possibilities. Returns a qualified keyword with the matched ns
takes a keyword and a set of keywords and attempts to convert it into a namespaced keyword using the set possibilities. Returns a qualified keyword with the matched ns
(service calendar)
transforms a calendar entry into a [id Service], where Service contains the period and set of days that applies. Preferable representation to speed up comparisons
transforms a calendar entry into a [id Service], where Service contains the period and set of days that applies. Preferable representation to speed up comparisons
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close