Glossary

Transit data carries a vocabulary of its own, and so does Drupal. Every term this site uses is defined here once, in the plainest words that stay accurate.

The specification

GTFS

General Transit Feed Specification. A published format for transit schedules: a zip file of comma-separated text files, one per kind of record. The reference is at gtfs.org.

GTFS-Realtime

Often shortened to GTFS-RT. The companion format for live data — where a vehicle is now, when it will arrive, what is disrupted. Encoded as Protocol Buffers rather than text.

GTFS+

An extension set used by the Metropolitan Transportation Commission and the Bay Area operators reporting to it. It adds files the base specification does not define, such as direction names and the tables that tie a realtime feed to a static one.

Feed

One published dataset. A static feed is the schedule zip an agency publishes; a realtime feed is a live endpoint serving GTFS-Realtime. An agency usually has one static feed and three realtime ones.

Extension

A file in a feed that the base specification does not define. Extensions are how regions publish what the spec leaves out.

What a feed contains

Agency

The operator publishing the feed. One feed can carry several.

Route

A named line riders recognise — the 38 Geary, the F Market & Wharves.

Trip

One vehicle traversing a route once, at a particular time, in one direction. A route runs hundreds of trips a day.

Stop

A place a vehicle serves. Stops carry a stop_id, used inside the feed, and often a stop_code, the number posted on the pole for riders.

Stop time

One trip's scheduled arrival and departure at one stop. This is the largest table in most feeds by a wide margin.

Shape

The drawn path a trip follows, as an ordered list of coordinates. What a map traces when it draws a route.

Service

Which days a trip runs — weekdays, Saturdays, holidays. Held in the feed's calendar.

Headsign

The destination shown on the front of the vehicle, and on a departure board.

Direction ID

A 0 or 1 marking which way along a route a trip travels. It carries no inherent meaning; the readable name comes from an extension.

Timepoint

A stop where the published timetable states a time. Intermediate stops are passed without a published time, which is why a printed timetable is shorter than the stop list.

Realtime

Trip update

A prediction: this trip will reach these stops at these times. What a departure board counts down.

Vehicle position

Where a vehicle is now, usually with its bearing and how full it is.

Service alert

A published disruption — a detour, a stop closure, a suspension — attached to the routes, stops or trips it affects.

Identifier mapping

Reconciling identifiers that differ between a realtime feed and the static schedule. A stop that is 17948 in one and 7948 in the other has to be matched before predictions can reach the right screen.

This platform

Display

A rendered screen: a stop's departures, a route's map, a system overview. Displays read the same public API any other client would.

Display context

The stored configuration for a display — which entity it shows, which layout, which surface. Held as configuration, so it exports with the rest of the site.

Variant

A layout a display can take. Also called a skin when an agency module supplies its own typography and brand.

Pylon

A platform-mounted screen, often a stacked pair — one panel naming the route, one carrying its departures.

Annotation

Text an agency adds to a stop or route by hand, shown alongside the generated content and surviving the next feed import.

Embed

A display placed in another site through an iframe, so an agency's own pages can carry a live map without adopting this stack.

Drupal terms

Drupal

The open-source content management system this suite is built on. The suite is a set of ordinary modules; no fork is involved.

Module

A unit of Drupal functionality, installed with Composer and enabled per site.

Entity

Drupal's unit of stored content. A content entity holds data and can carry fields; a config entity holds settings and exports to code.

Bundle

A subtype of an entity. Every GTFS file becomes a bundle, so routes, stops and trips are all the same entity type wearing different shapes.

Field

A piece of data attached to an entity. Fields you add to imported transit records survive re-imports.

View

Drupal's query builder. It lists and filters GTFS records the same way it lists anything else on the site.

View mode

A named way of rendering an entity — a full page, a map tooltip, a row in a list.

Hook

A published extension point. Agency-specific behaviour attaches through hooks rather than by editing shared code.

Composer

The PHP dependency manager. composer require drupal/gtfs installs a module and everything it needs.

Drush

Drupal's command-line tool. Feed imports, refreshes and audits run through it.

Formats and web terms

API

Application Programming Interface. The addresses another program can request data from, and the shapes it gets back.

REST

A convention for APIs built on ordinary web requests: a URL names a resource, and the HTTP method says what to do with it.

JSON

JavaScript Object Notation. The text format this platform's API returns.

OpenAPI

A standard description of an API — every endpoint, parameter and response shape, in one machine-readable file. Formerly called Swagger. Ours is published at the API reference.

Protocol Buffers

Usually shortened to Protobuf. A compact binary format, and what GTFS-Realtime is encoded in. This platform decodes it server-side, so clients only ever see JSON.

GeoJSON

A JSON format for geographic shapes — points, lines, areas. How the API hands out stop and route geometry.

Vector tile

Map data cut into small pieces and drawn by the browser, rather than delivered as pre-rendered images. It is what lets a map restyle itself without new files from the server.

PMTiles

A single-file archive of vector tiles that can be served from ordinary static hosting, with no tile server behind it.

Basemap

The map underneath the transit data — streets, water, parks, labels. Interchangeable: the route and stop layers sit on top and do not depend on it.

iframe

An HTML element that places one page inside another. How an embed reaches an agency's existing site.

CORS

Cross-Origin Resource Sharing. The browser rule deciding whether one site may read data from another. A remote map style must permit it.

CSP

Content Security Policy. Browser rules a site sets for itself, including which other sites may frame its pages.

e-ink

A display technology that holds an image without drawing power, readable in daylight. Suited to stops with no mains supply.

Bay Area

511 SF Bay

The regional traveller information service. Its Open Data API publishes GTFS and GTFS-Realtime for every operator in the region, at 511.org.

MTC

Metropolitan Transportation Commission, the Bay Area's transportation planning agency. It runs 511 and defines GTFS+.

Operator

511's word for a participating transit agency.

Licensing

GPL-2.0+

GNU General Public License, version 2 or later. The licence the module suite is released under: you may run, study, change and redistribute it, and anything you distribute built on it carries the same terms.

Open source

Software published with its source code under a licence permitting use and modification. Every module in the suite is on drupal.org.