Liking cljdoc? Tell your friends :D

hiposfer.kamal.parsers.gtfs

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
raw docstring

attributesclj

source

coerceclj

(coerce text)
source

date-formatclj

source

datomize!clj

(datomize! zipstream)
(datomize! zipstream entry result)

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
sourceraw docstring

identsclj

source

parseclj

(parse csv-content 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
sourceraw docstring

re-dateclj

source

re-durationclj

source

re-numberclj

source

re-timezoneclj

source

read-orderclj

source

ref?clj

(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
sourceraw docstring

resourceclj

(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
sourceraw docstring

truncatorsclj

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
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close