Referencia

En este documento, se explican los tipos de archivos que integran un feed de transporte público de la Especificación general de feeds de transporte público (GTFS) y se definen los campos utilizados en todos esos archivos.

Se cubren los siguientes temas:

  1. Definiciones de términos
  2. Tipos de campos
  3. Archivos de conjuntos de datos
  4. Requisitos de los archivos
  5. Definiciones de campos

Definiciones de términos

En este documento, se utilizan los siguientes términos:

  • Conjunto de datos: Es un conjunto completo de archivos definido por la referencia de esta especificación. Si el conjunto de datos se altera, se creará una nueva versión de ese conjunto. Publica los conjuntos de datos en una URL permanente y pública, que incluya el nombre del archivo ZIP, por ejemplo, https://www.agency.org/gtfs/gtfs.zip.

  • Registro: Es una estructura de datos básicos con diferentes valores de campo que describen una entidad única, como una empresa de transporte público, una parada o una ruta. En una tabla, los registros se representan como filas.

  • Campo: Es una propiedad de un objeto o una entidad. En una tabla, se representa como una columna.

  • Valor de campo: Es una entrada individual en un campo. En una tabla, se representa como una celda individual.

  • Obligatorio: El campo debe estar incluido en el conjunto de datos y se debe ingresar un valor en ese campo para cada registro.

    • En algunos campos obligatorios, se puede ingresar una string vacía como valor. Para ingresar una string vacía, solo debes omitir todo el texto entre comas de ese campo. Ten en cuenta que 0 se interpreta como "una string de valor 0", pero no es una string vacía.
  • Opcional: El campo puede omitirse en el conjunto de datos. Si decides incluir una columna opcional, algunas entradas de ese campo pueden ser strings vacías.

    • Para ingresar una string vacía, solo debes omitir todo el texto entre comas de ese campo. Ten en cuenta que 0 se interpreta como "una string de valor 0", pero no es una string vacía. Un campo que se omite equivale a un campo que está completamente vacío.
  • Condicionalmente obligatorio: El campo o archivo es obligatorio en determinadas condiciones, las cuales se explican en la descripción del archivo o el campo. Si no se cumplen estas condiciones, el campo o el archivo son opcionales.

  • Día de servicio: Es un período de tiempo que se usa para indicar la programación de rutas. La definición exacta de día de servicio puede variar según la empresa, pero los días de servicio no suelen coincidir con los días calendario. Un día de servicio puede superar las 24:00:00 si el servicio comienza un día y finaliza al día siguiente. Por ejemplo, un servicio que se presta desde las 08:00:00 del viernes hasta las 02:00:00 del sábado puede indicarse como disponible de 08:00:00 a 26:00:00 en un solo día de servicio.

Tipos de campos

Los siguientes tipos de campos se utilizan en el feed de transporte público de la Especificación general de feeds de transporte público (GTFS):

  • Color: Es un color que está codificado como un número hexadecimal de seis dígitos. Consulta los códigos de color HTML a fin de generar valores válidos. Ten en cuenta que no se incluye el "#" que aparece al principio.

    • Por ejemplo, FFFFFF para el color blanco, 000000 para el color negro o 0039A6 para las líneas A, C, E de un servicio.
  • Código de moneda: Es un código de moneda alfabético ISO 4217. Para ver la lista de monedas actuales, consulta la sección de códigos activos.

    • Por ejemplo, CAD para dólares canadienses, EUR para euros o JPY para yenes japoneses.
  • Fecha: Es un día de servicio que se indica en formato YYYYMMDD. Dado que la hora en un día de servicio puede superar las 24:00:00, un día de servicio suele incluir información de los días siguientes.

    • Por ejemplo, 20180913 para el 13 de septiembre de 2018
  • Correo electrónico: Es una dirección de correo electrónico.

    • Por ejemplo, ex@gmail.com
  • Enum: Es una opción que proviene de un conjunto de constantes predefinidas incluidas en la columna "Descripción".

    • Por ejemplo, el campo route_type de routes.txt contiene un 0 para tranvías o un 1 para subterráneos.
  • ID: Es una secuencia de caracteres UTF-8 que identifica de forma exclusiva una entidad, pero que no identifica necesariamente un registro específico en una tabla. Los ID que se definen en un archivo TXT suelen incluirse en otro archivo TXT. El valor del campo ID no se les muestra a los usuarios. Puedes usar todos los caracteres UTF-8, pero recomendamos que utilices solo los caracteres ASCII imprimibles.

    • Por ejemplo, el campo stop_id en stops.txt es un ID. El campo stop_id en stop_times.txt es un ID que hace referencia a stops.stop_id.
  • Código de idioma: Es un código de idioma IETF BCP 47. Si deseas obtener una introducción al código IETF BCP 47, consulta los artículos Etiquetas para identificar idiomas y Etiquetas de idioma en HTML y XML.

    • Por ejemplo, en para inglés, en-US para inglés estadounidense o de para alemán.
  • Latitud: Es una proyección de latitud WGS84 en grados decimales. El valor debe ser superior o igual a -90.0, así como inferior o igual a 90.0.

    • Por ejemplo, 41.890169 para el Coliseo Romano
  • Longitud: Es una proyección de longitud WGS84 en grados decimales. El valor debe ser superior o igual a -180.0, así como inferior o igual a 180.0.

    • Por ejemplo, 12.492269 para el Coliseo Romano
  • Punto flotante no negativo: Es un número de punto flotante superior o igual a 0.

  • Número entero no negativo: Es un número entero superior o igual a 0.

  • Número de teléfono: Es un número de teléfono.

  • Hora: Es una hora en formato HH:MM:SS. También se acepta H:MM:SS. La hora se calcula desde el "mediodía menos 12 horas" al principio del día de servicio. Esto corresponde efectivamente a la medianoche, excepto durante el período en el que se aplica el cambio de horario de verano. Las horas posteriores a la medianoche se deben ingresar como un valor mayor que 24:00:00 en la hora local HH:MM:SS correspondiente al día en el que empieza el horario del viaje.

    • Por ejemplo, 14:30:00 para las 2:30 p.m. o 25:35:00 para la 1:35 a.m. del día siguiente
  • Texto: Es una string de caracteres UTF-8 que se mostrará públicamente, por lo que debe ser legible para los usuarios.

  • Zona horaria: Es una zona horaria de la base de datos de zonas horarias. Los nombres de zona horaria no pueden incluir el carácter de espacio, aunque sí un guion bajo. Para obtener una lista de valores válidos, consulta el artículo Lista de zonas horarias de TZ Database.

    • Por ejemplo, Asia/Tokyo, America/Los_Angeles o Africa/Cairo
  • URL: Es una URL que cumple todos los requisitos y que incluye http:// o https://; todos los caracteres especiales en la URL deben incluir el escape correcto. Para ver una descripción sobre cómo crear valores de URL que cumplan todos los requisitos, consulta el artículo Recomendaciones para URI W3C.

Archivos de conjuntos de datos

Esta especificación define los siguientes archivos junto con su contenido asociado:

Nombre del archivo Obligatorio Definición
agency.txt Obligatorio Define una o más empresas de transporte público que tienen servicios representados en el conjunto de datos.
stops.txt Obligatorio Define las paradas en las que los vehículos buscan o dejan pasajeros. También define las estaciones y las entradas de las estaciones.
routes.txt Obligatorio Define las rutas de transporte público. Una ruta es un grupo de viajes que se muestra a los pasajeros como un solo servicio.
trips.txt Obligatorio Define los viajes de cada ruta. Un viaje es una secuencia de dos o más paradas que ocurren durante un período de tiempo específico.
stop_times.txt Obligatorio Proporciona las horas a las que un vehículo llega a una parada específica y sale de ella en cada viaje.
calendar.txt Condicionalmente obligatorio Define las fechas de un servicio cuando este está disponible para determinadas rutas. Utiliza un horario semanal. Este archivo especifica las fechas de inicio y finalización de un servicio, así como los días de la semana en los que el servicio está disponible. Es obligatorio, a menos que todas las fechas del servicio se definan en calendar_dates.txt.
calendar_dates.txt Condicionalmente obligatorio Define excepciones para los servicios que se incluyen en el archivo calendar.txt. Si se omite el archivo calendar.txt, entonces el archivo calendar_dates.txt es obligatorio y debe contener todas las fechas de servicio.
fare_attributes.txt Opcional Define la información sobre las tarifas correspondientes a las rutas de una empresa de transporte público.
fare_rules.txt Opcional Define las reglas para aplicar la información sobre tarifas de los itinerarios.
shapes.txt Opcional Define las reglas para asignar las rutas de viaje de los vehículos, también conocido como alineamientos de rutas.
frequencies.txt Opcional Describe el intervalo, es decir, el tiempo entre viajes para las rutas que tienen una frecuencia de servicio variable. También puede incluir una representación comprimida de los servicios que tienen un horario fijo.
transfers.txt Opcional Define las reglas para establecer conexiones en los puntos de trasbordo entre rutas.
pathways.txt Opcional Define las reglas para describir las conexiones a pie entre dos paradas dentro de una estación, por ejemplo, entre la entrada y una plataforma. Estos recorridos se representan como los bordes de un gráfico de recorridos a pie.
levels.txt Opcional Define los niveles dentro de las estaciones.
feed_info.txt Opcional Proporciona información adicional sobre el feed en sí, como la información sobre el publicador, la versión y el vencimiento.

Requisitos de los archivos

Los siguientes requisitos se aplican al formato y el contenido de tus archivos:

  • Todos los archivos de un feed de la Especificación general de feeds de transporte público (GTFS) se deben guardar como texto delimitado por comas.

  • La primera línea de cada archivo debe incluir los nombres de campo. Cada subsección de la sección Definiciones de campos corresponde a uno de los archivos en un conjunto de datos de GTFS. Allí se indican los nombres de campos que puedes usar en ese archivo.

  • Todos los nombres de campos distinguen entre mayúsculas y minúsculas.

  • Los valores de campo no pueden incluir tabulaciones, retornos de carro ni nuevas líneas.

  • Los valores de campo que tengan comillas o comas se deben ingresar entre comillas. Además, cada comilla en el valor de campo debe ir precedida de otra comilla. Esto es coherente con la forma en que Microsoft Excel produce los archivos delimitados por comas (CSV). Para obtener más información sobre el formato de archivo CSV, consulta Formato común y tipo de MIME para archivos de valores separados por comas (CSV). En el siguiente ejemplo, se muestra cómo aparecen los valores de campo en un archivo delimitado por comas:

    • Valor de campo original: Contains "quotes", commas, and text
    • Valor de campo en un archivo CSV: "Contains ""quotes"", commas, and text"
  • Los valores de campo no deben incluir etiquetas HTML, comentarios ni secuencias de escape.

  • Quita cualquier espacio adicional entre los campos o nombres de campo. Muchos analizadores consideran que los espacios forman parte del valor, lo cual puede provocar errores.

  • Cada línea debe terminar con un carácter de salto de línea CRLF o LF.

  • Los archivos deben estar codificados en UTF-8 para admitir todos los caracteres Unicode. Se admiten los archivos que incluyan el carácter de marca de orden de bytes (BOM) de Unicode. Para obtener más información sobre el carácter BOM y UTF-8, consulta las Preguntas frecuentes sobre Unicode.

  • Todos los archivos de conjuntos de datos deben comprimirse juntos.

Definiciones de campos

agency.txt

Archivo: Obligatorio

Define una o más empresas de transporte público que tienen servicios representados en el conjunto de datos.

Nombre del campo Tipo Obligatorio Descripción
agency_id ID Condicionalmente obligatorio

Identifica una marca de transporte público, que suele ser lo mismo que una empresa de transporte público. Ten en cuenta que, en algunos casos, como cuando una empresa opera diversos servicios separados, las empresas y las marcas no coinciden. En este documento, se usa el término "empresa" en lugar de "marca".

Un feed de transporte público puede representar datos de más de una empresa. Este campo es obligatorio para los feeds de transporte público que incluyen datos de varias empresas. De lo contrario, es opcional.

agency_name Texto Obligatorio Contiene el nombre completo de la empresa de transporte público.
agency_url URL Obligatorio Contiene la URL de la empresa de transporte público.
agency_timezone Zona horaria Obligatorio Contiene la zona horaria del lugar en el que se encuentra la empresa de transporte público. Si se especifican varias empresas en el feed, todas deben tener el mismo valor de agency_timezone.
agency_lang Código de idioma Opcional Especifica el idioma principal que usa la empresa de transporte público. Esta configuración ayuda a los usuarios de GTFS a elegir las reglas sobre el uso de mayúsculas y otros parámetros específicos de la configuración de idioma para el conjunto de datos.
agency_phone Número de teléfono Opcional Indica un número de teléfono de la empresa especificada. Este campo es un valor de string que presenta el número de teléfono correspondiente al área de servicio de la empresa en un formato típico. Puede y debe incluir signos de puntuación para agrupar los dígitos del número. Se permite el uso de texto de marcación (por ejemplo, 503-238-RIDE de TriMet), pero el campo no debe incluir ningún otro texto descriptivo.
agency_fare_url URL Opcional Especifica la URL de una página web en la que los pasajeros pueden comprar boletos y otros tipos de pasajes de la empresa en línea.
agency_email Correo electrónico Opcional Incluye una dirección de correo electrónico válida que el departamento de Atención al cliente de la empresa supervisa activamente. Esta dirección de correo electrónico debe ser un punto de contacto directo mediante el cual los pasajeros de transporte público puedan comunicarse con un representante del servicio de atención al cliente de la empresa.

stops.txt

Archivo: Obligatorio

Define las paradas en las que los vehículos buscan o dejan pasajeros. También define las estaciones y las entradas de las estaciones.

Nombre del campo Tipo Obligatorio Descripción
stop_id ID Obligatorio Identifica una parada, una estación o la entrada de una estación. El término "entrada de una estación" se refiere tanto a las entradas como a las salidas de la estación. Las paradas, las estaciones y las entradas de las estaciones se denominan colectivamente "ubicaciones". Es posible que varias rutas utilicen la misma parada.
stop_code Texto Opcional

Incluye un texto breve o un número que identifica esa parada exclusiva para los pasajeros. Los códigos de paradas suelen usarse en los sistemas de información de transporte público para teléfonos o se encuentran impresos en la señalización de las paradas a fin de que los pasajeros obtengan fácilmente información sobre una parada en especial.

El stop_code puede ser el mismo que el stop_id si el ID es público. Deja este campo vacío si no se muestra el código de las paradas a los pasajeros.

stop_name Texto Condicionalmente obligatorio

Incluye el nombre de una ubicación. Utiliza un nombre que resulte comprensible para las personas, ya sean residentes o turistas.

Si la ubicación es un área de abordaje, con location_type=4, incluye el nombre del área como lo muestra la empresa en stop_name. Puede ser simplemente una letra o mensajes como "Área de abordaje para sillas de ruedas" o "Frente de trenes cortos".

Este campo es obligatorio para las ubicaciones que son paradas, estaciones o entradas o salidas y tienen campos location_type de 0, 1 y 2 respectivamente.

Este campo es opcional para las ubicaciones que son nodos genéricos o áreas de abordaje y tienen campos location_type de 3 y 4 respectivamente.

stop_desc Texto Opcional Describe una ubicación. Incluye información útil y de calidad. No reproduzcas simplemente el nombre de la ubicación.
stop_lat Latitud Condicionalmente obligatorio

Indica la latitud de una parada, una estación o la entrada de una estación.

Este campo es obligatorio para las ubicaciones que son paradas, estaciones o entradas o salidas y tienen campos location_type de 0, 1 y 2 respectivamente.

Este campo es opcional para las ubicaciones que son nodos genéricos o áreas de abordaje y tienen campos location_type de 3 y 4 respectivamente.

stop_lon Longitud Condicionalmente obligatorio

Indica la longitud de una parada, una estación o la entrada de una estación.

Este campo es obligatorio para las ubicaciones que son paradas, estaciones o entradas o salidas y tienen campos location_type de 0, 1 y 2 respectivamente.

Este campo es opcional para las ubicaciones que son nodos genéricos o áreas de abordaje y tienen campos location_type de 3 y 4 respectivamente.

zone_id ID Condicionalmente obligatorio Indica la zona tarifaria de una parada. Este campo es obligatorio si deseas proporcionar información de tarifas con fare_rules.txt. Si este registro representa una estación o entrada de una estación, se ignora el zone_id.
stop_url URL Opcional Contiene la URL de una página web sobre una parada en particular. El valor de este campo debe ser diferente del de los campos agency_url y route_url.
location_type Enum Opcional

Define el tipo de ubicación. El campo location_type puede tener los siguientes valores:

  • 0 o (vacío): Parada (o "Plataforma"). Una ubicación en la que los pasajeros suben a bordo o bajan de un vehículo de transporte público. Las paradas se denominan "plataformas" cuando se definen dentro de una parent_station.
  • 1: Estación. Es un área o estructura física que incluye una o más plataformas.
  • 2: Entrada o salida de una estación. Es una ubicación por la que los pasajeros pueden entrar a la estación desde la calle o salir de la estación hacia la calle. En la entrada de la parada, también se debe especificar un valor parent_station que haga referencia al stop_id de la estación principal correspondiente a la entrada. Si una entrada o salida corresponden a varias estaciones, se vinculan mediante recorridos hacia ambas y el proveedor de datos puede elegir una estación como la principal, o bien no indicar ninguna.
  • 3: Nodo genérico. Es una ubicación dentro de una estación que no coincide con ningún otro location_type. Los nodos genéricos se usan para vincular los recorridos que se definen en pathways.txt.
  • 4: Área de abordaje. Es una ubicación específica en una plataforma donde los pasajeros pueden subir a bordo o bajar de un vehículo.
parent_station ID que hace referencia a stops.stop_id Condicionalmente obligatorio

En el caso de las paradas que se encuentran físicamente en el interior de una estación, el campo parent_station identifica la estación asociada a la parada. En función de una combinación de valores para los campos parent_station y location_type, definimos tres tipos de paradas:

  • Una parada principal es una estación o terminal (generalmente grande) que puede contener paradas secundarias.
    • El tipo de ubicación de esta entrada es 1.
    • El campo parent_station contiene un valor vacío, porque las paradas principales no pueden contener otras paradas principales.
  • Una parada secundaria se encuentra dentro de una parada principal. Puede ser una entrada, una plataforma, un nodo o cualquier otro recorrido, según se define en pathways.txt.
    • El location_type de esta entrada es 0 o (vacío).
    • El campo parent_station contiene el ID de parada de la estación en la que se encuentra la parada.
    • La parada a la que se hace referencia en parent_station debe tener un valor location_type=1.
  • Una parada independiente se encuentra fuera de una parada principal.
    • El tipo de ubicación de esta entrada es 0 o (vacío).
    • El campo parent_station contiene un valor vacío porque el campo parent_station no corresponde a esta parada.
stop_timezone Zona horaria Opcional

Contiene la zona horaria de esta ubicación. Si se omite, se supone que la parada se encuentra en la zona horaria especificada en el campo agency_timezone en agency.txt.

Si una parada tiene una estación principal, la zona horaria será la que se especifica en el valor de stop_timezone de la estación principal. Si la estación principal no tiene un valor de stop_timezone, se considerará que las paradas que pertenecen a esa estación están en la zona horaria especificada en el valor de stop_timezone, incluso si las paradas tienen sus propios valores de agency_timezone.

En otras palabras, si una parada determinada tiene un valor de parent_station, se debe ignorar cualquier valor de stop_timezone especificado para esa parada. Aunque se indiquen valores de stop_timezone en stops.txt, sigue especificando las horas en stop_times.txt que correspondan a la zona horaria especificada en el campo agency_timezone en agency.txt. Esto garantiza que los valores de las horas de un viaje siempre se incrementen durante el transcurso de este, independientemente de las zonas horarias que atraviese.

wheelchair_boarding Enum Opcional

Indica si es posible acceder en silla de ruedas a la parada, estación o entrada de la estación especificadas. Este campo puede tener los siguientes valores:

  • 0 o (vacío): Indica que no hay información sobre accesibilidad disponible para esta parada.
  • 1: Indica que un pasajero en silla de ruedas puede subir, por lo menos, a algunos vehículos en esta parada.
  • 2: Indica que no es posible acceder en silla de ruedas a los vehículos en esta parada.

Si una parada es parte de un complejo de estaciones más grande, como lo indica la presencia de un valor de parent_station, el campo wheelchair_boarding de la parada tiene la siguiente semántica adicional:

  • 0 o (vacío): La parada obtiene su valor de wheelchair_boarding de la estación principal, en caso de que exista.
  • 1: Existen algunos recorridos accesibles desde fuera de la estación hasta la parada o plataforma específicas.
  • 2: No existen recorridos accesibles desde fuera de la estación hasta la parada o plataforma específicas.

En el caso de las entradas o salidas de estación, el campo wheelchair_boarding tiene la siguiente semántica adicional:

  • 0 o (vacío): La entrada de la estación obtiene su valor wheelchair_boarding de la estación principal, en caso de que exista.
  • 1: Se puede acceder en silla de ruedas a la entrada de la estación, por ejemplo, mediante un ascensor que permite llegar a las plataformas que no se encuentran a nivel del suelo.
  • 2: No existen recorridos accesibles desde la entrada hasta las plataformas de la estación.
level_id ID que hace referencia a levels.level_id Opcional Indica el nivel de la ubicación. Se puede usar el mismo nivel en varias estaciones no vinculadas.
platform_code Texto Opcional Indica el identificador de plataforma correspondiente a la parada en una plataforma, que es una parada que pertenece a una estación. Incluye solo el identificador de plataforma, p. ej., G o 3. No incluyas palabras como "plataforma" o "andén" (o el equivalente específico en el idioma del feed). Esto permite que los usuarios del feed internacionalicen y localicen con mayor facilidad el identificador de la plataforma en otros idiomas.

routes.txt

Archivo: Obligatorio

Define las rutas de transporte público. Una ruta es un grupo de viajes que se les muestra a los pasajeros como un solo servicio.

Nombre del campo Tipo Obligatorio Descripción
route_id ID Obligatorio Identifica una ruta.
agency_id ID que hace referencia a agency.agency_id Condicionalmente obligatorio Define una empresa para la ruta especificada. Este campo es obligatorio cuando el conjunto de datos proporciona datos de rutas correspondientes a más de una empresa en agency.txt. De lo contrario, es opcional.
route_short_name Texto Condicionalmente obligatorio

Indica el nombre corto de una ruta. Es un identificador corto y abstracto, como 32, 100X o Green, que los pasajeros utilizan para identificar una ruta, pero que no proporciona ninguna indicación sobre los lugares que atraviesa la ruta.

Se debe especificar, al menos, uno de los valores route_short_name o route_long_name, o bien ambos si corresponde. Si la ruta no tiene un nombre corto, indica un route_long_name y usa una string vacía como valor para este campo.

route_long_name Texto Condicionalmente obligatorio

Indica el nombre completo de una ruta. Este nombre suele ser más descriptivo que el nombre que se indica en route_short_name y suele incluir el destino o la parada de la ruta.

Se debe especificar, al menos, uno de los valores route_short_name o route_long_name, o bien ambos si corresponde. Si la ruta no tiene un nombre largo, indica un route_short_name y usa una string vacía como valor para este campo.

route_desc Texto Opcional

Describe una ruta. Asegúrate de proporcionar información útil y de calidad en este campo. No reproduzcas simplemente el nombre de la ruta.

Por ejemplo, "A" trains operate between Inwood-207 St, Manhattan and Far Rockaway-Mott Ave, Queens at all times. From about 6 AM until about midnight, additional "A" trains operate between Inwood-207 St and Lefferts Blvd (trains typically alternate between Lefferts Blvd and Far Rockaway).

route_type Enum Obligatorio

Describe el tipo de transporte que se usa en una ruta. Los siguientes son los valores válidos para este campo:

  • 0: Tranvía o tren ligero. Se usa para todo tren ligero o sistema ferroviario en el nivel de la calle dentro de un área metropolitana.
  • 1: Subterráneo o metro. Se usa para todo sistema ferroviario subterráneo dentro de un área metropolitana.
  • 2: Tren. Se usa para viajes interurbanos o de larga distancia.
  • 3: Autobús. Se usa para rutas en autobús de corta y larga distancia.
  • 4: Transbordador. Se usa para el servicio de transporte por agua de corta y larga distancia.
  • 5: Vehículo a tracción por cable. Se usa para todo vehículo a tracción por cable en el nivel de la calle donde el cable pase por debajo del vehículo.
  • 6: Telecabina o teleférico. Por lo general, se usa para vehículos a tracción por cable aéreos donde el vehículo queda suspendido de un cable.
  • 7: Funicular. Se usa para todo sistema ferroviario que realiza recorridos con una gran inclinación mediante un sistema de tracción por cable.
route_url URL Opcional Contiene la URL de la página web de una ruta en particular. Esta URL debe ser diferente del valor agency_url.
route_color Color Opcional

En los sistemas que asignan colores a las rutas, el campo route_color define el color correspondiente a una ruta. Si no se especifica ningún color, el color predeterminado para la ruta es blanco, FFFFFF.

La diferencia de color entre route_color y route_text_color debe brindar un contraste suficiente para distinguirlos en una pantalla en blanco y negro. El documento Técnicas de W3C para la evaluación de accesibilidad y herramientas de reparación ofrece un algoritmo de gran utilidad para evaluar el contraste de colores. También existen herramientas en línea útiles para ayudarte a elegir colores contrastantes, como la aplicación Verificación de contraste de colores de snook.ca.

route_text_color Color Opcional

Especifica un color legible para el texto que contraste con el color de fondo de route_color. Si no se especifica ningún color, el color predeterminado del texto es negro, 000000.

La diferencia de color entre route_color y route_text_color debe brindar un contraste suficiente para distinguirlos en una pantalla en blanco y negro. El documento Técnicas de W3C para la evaluación de accesibilidad y herramientas de reparación ofrece un algoritmo de gran utilidad para evaluar el contraste de colores. También existen herramientas en línea útiles para ayudarte a elegir colores contrastantes, como la aplicación Verificación de contraste de colores de snook.ca.

route_sort_order Número entero no negativo Opcional Especifica el orden en el que las rutas se presentan a los clientes. Las rutas con valores de route_sort_order más bajos deben mostrarse antes que las rutas con valores de route_sort_order más altos.

trips.txt

Archivo: Obligatorio

Define los viajes de cada ruta. Un viaje es una secuencia de dos o más paradas que ocurre durante un período de tiempo específico.

Nombre del campo Tipo Obligatorio Descripción
route_id ID que hace referencia a routes.route_id Obligatorio Identifica una ruta.
service_id ID que hace referencia a calendar.service_id o calendar_dates.service_id Obligatorio Identifica un conjunto de fechas en las que el servicio está disponible para una o más rutas.
trip_id ID Obligatorio Identifica un viaje.
trip_headsign Texto Opcional

Contiene el texto que aparece en la señalización que identifica el destino del viaje para los pasajeros. Utiliza este campo para distinguir diferentes patrones de servicio en la misma ruta.

Si la señal de destino cambia durante un viaje, puedes anular el valor de trip_headsign con valores del campo stop_headsign en stop_times.txt.

trip_short_name Texto Opcional

Contiene el texto público que se les muestra a los pasajeros para identificar el viaje, como los números de trenes para los viajes en trenes suburbanos. Si los pasajeros no suelen utilizar los nombres de los viajes, deja este campo vacío.

Si se proporciona un trip_short_name, debe identificar un viaje de forma exclusiva durante un día de servicio. No lo uses para nombres de destino o designaciones limitadas o expresas.

direction_id Enum Opcional

Indica la dirección de un viaje. Utiliza este campo para diferenciar viajes con dos sentidos que tengan el mismo valor de route_id. Los siguientes son los valores válidos para este campo:

  • 0: Viaje en un sentido de su preferencia, p. ej., viaje de ida.
  • 1: Viaje en el sentido opuesto, p. ej., viaje de vuelta.

Este campo no se utiliza en la elaboración de rutas, sino que proporciona una manera de diferenciar los viajes en función de su dirección al publicar los horarios. Puedes especificar los nombres de cada sentido en el campo trip_headsign.

Por ejemplo, puedes usar los campos trip_headsign y direction_id juntos para un conjunto de viajes a fin de asignar nombres para cada sentido del viaje. Un archivo trips.txt puede incluir las siguientes filas para utilizarlas en los horarios:


trip_id,...,trip_headsign,direction_id
1234,...,Airport,0
1505,...,Downtown,1
block_id ID Opcional Identifica el bloque al que pertenece un viaje. Un bloque se compone de un viaje solo o de varios viajes secuenciales realizados con el mismo vehículo. Los viajes se agrupan en un bloque mediante el uso de un día de servicio compartido y el valor de block_id. Un block_id puede incluir viajes con diferentes días de servicio, lo cual genera distintos bloques. Para obtener más información, consulta el ejemplo de bloques y días de servicio.
shape_id ID que hace referencia a shapes.shape_id Opcional Define una forma geoespacial que describe el recorrido de un vehículo en un viaje.
wheelchair_accessible Enum Opcional

Indica si es posible acceder en silla de ruedas al viaje especificado. Este campo puede tener los siguientes valores:

  • 0 o (vacío): No hay información de accesibilidad disponible para este viaje.
  • 1: Al menos, un pasajero en silla de ruedas puede acceder al vehículo que se utiliza para este viaje en particular.
  • 2: Ningún pasajero en silla de ruedas puede acceder a este viaje.
bikes_allowed Enum Opcional

Indica si se permite el acceso con bicicletas en este viaje específico. Este campo puede tener los siguientes valores:

  • 0 o (vacío): No hay información de posibilidad de acceso con bicicleta disponible para el viaje.
  • 1: En el vehículo que se utiliza para este viaje en particular, hay posibilidad de acceso para, al menos, una bicicleta.
  • 2: No se permite el acceso con bicicletas en este viaje.

Ejemplo de bloques y días de servicio

En la siguiente tabla, se muestra cómo crear viajes para un solo vehículo, cuando esos viajes pertenecen a bloques diferentes en función de cada día de la semana. Las horas de las paradas corresponden al primer valor de arrival_time y al último valor de departure_time de ese bloque, según se indica en stop_times.txt.

route_id trip_id service_id block_id Hora de la primera parada Hora de la última parada
red trip_1 mon-tues-wed-thurs-fri-sat-sun red_loop 22:00:00 22:55:00
red trip_2 fri-sat-sun red_loop 23:00:00 23:55:00
red trip_3 fri-sat red_loop 24:00:00 24:55:00
red trip_4 mon-tues-wed-thurs red_loop 20:00:00 20:50:00
red trip_5 mon-tues-wed-thurs red_loop 21:00:00 21:50:00

Las siguientes notas describen dos de los bloques definidos en la tabla anterior:

  • Los viernes a la noche hasta la madrugada del sábado, un solo vehículo realiza los viajes trip_1, trip_2 y trip_3, desde las 10:00 p.m. hasta las 12:55 a.m. El último viaje tiene lugar el sábado, de 12:00 a.m. a 12:55 a.m., pero se define como parte del "día de servicio" del viernes porque las horas son de 24:00:00 a 24:55:00.

  • Los lunes, martes, miércoles y jueves, un solo vehículo realiza los viajes trip_1, trip_4 y trip_5 en un bloque de 8:00 p.m. a 10:55 p.m.

stop_times.txt

Archivo: Obligatorio

Proporciona las horas en las que un vehículo llega a una parada específica y sale de ella en cada viaje.

Nombre del campo Tipo Obligatorio Descripción
trip_id ID que hace referencia a trips.trip_id Obligatorio Identifica un viaje.
arrival_time Hora Condicionalmente obligatorio

Indica la hora de llegada a una parada específica para un viaje en particular de una ruta. Debes especificar la hora de llegada correspondiente a la primera y la última parada de un viaje.

Si no dispones de horas diferentes para la llegada a una parada y la salida de esta, ingresa el mismo valor para arrival_time y departure_time.

Para obtener información sobre cómo ingresar horas de llegada para las paradas en las que el vehículo debe respetar estrictamente un horario, consulta Puntos temporales.

departure_time Hora Condicionalmente obligatorio

Indica la hora de salida de una parada específica para un viaje en particular de una ruta. Debes especificar la hora de salida correspondiente a la primera y la última parada de un viaje, incluso si en la última parada no se permite el abordaje de pasajeros.

Si no dispones de horas diferentes para la llegada a una parada y la salida de esta, ingresa el mismo valor para arrival_time y departure_time.

Para obtener información sobre cómo ingresar horas de salida para las paradas en las que el vehículo debe respetar estrictamente un horario, consulta Puntos temporales.

stop_id ID que hace referencia a stops.stop_id Obligatorio

Identifica una parada de servicio. Es posible que varias rutas utilicen la misma parada.

Si se utiliza location_type en el archivo stops.txt, todas las paradas a las que se haga referencia en stop_times.txt deben tener el valor de location_type=0. Siempre que sea posible, se debe mantener la coherencia de los valores de stop_id al realizar las actualizaciones de feeds. En otras palabras, una parada A con un valor de stop_id=1 debe tener un valor de stop_id=1 en todas las actualizaciones de datos posteriores. Si una parada no es un punto temporal, ingresa valores vacíos para arrival_time y departure_time. Para obtener más información, consulta Puntos temporales.

stop_sequence Número entero no negativo Obligatorio

Identifica el orden de las paradas de un viaje determinado. Los valores de stop_sequence deben incrementarse durante el viaje, pero no es necesario que sean consecutivos.

Por ejemplo, la primera parada del viaje podría tener un valor de stop_sequence igual a 1; la segunda, un valor de stop_sequence igual a 23; la tercera, un valor de stop_sequence igual a 40 y así sucesivamente.

stop_headsign Texto Opcional Contiene el texto, como se muestra en la señalización, que identifica el destino del viaje para los pasajeros. Utiliza este campo para anular el valor predeterminado de trip_headsign cuando la señal de destino cambia de una parada a otra. Si esta señal está asociada a todo un viaje, utiliza trip_headsign en su lugar.
pickup_type Enum Opcional

Indica si se busca a los pasajeros en una parada como parte del horario normal o si no está disponible la partida desde la parada. Este campo también permite que la empresa de transporte público indique que los pasajeros deben llamar a la empresa o notificarle al conductor que es necesario buscarlos en una parada en particular. Los siguientes son los valores válidos para este campo:

  • 0 o (vacío): Búsqueda de pasajeros habitual programada
  • 1: Búsqueda de pasajeros no disponible
  • 2: Se debe llamar a la empresa para organizar una búsqueda de pasajeros
  • 3: Se debe coordinar con el conductor para organizar una búsqueda de pasajeros
drop_off_type Enum Opcional

Indica si los pasajeros se bajan en una parada como parte del horario normal o si no está disponible la bajada en la parada. Este campo también permite que la empresa de transporte público indique que los pasajeros deben llamar a la empresa o notificarle al conductor que necesitan bajarse en una parada en particular. Los siguientes son los valores válidos para este campo:

  • 0 o (vacío): Parada para bajar pasajeros habitual programada
  • 1: Parada para bajar pasajeros no disponible
  • 2: Se debe llamar a la empresa para organizar una parada para bajar pasajeros
  • 3: Se debe coordinar con el conductor para organizar una parada para bajar pasajeros
shape_dist_traveled Punto flotante no negativo Opcional

Cuando se utiliza en el archivo stop_times.txt, el campo shape_dist_traveled posiciona una parada como una distancia desde el primer punto de forma. El campo shape_dist_traveled representa la distancia real recorrida a lo largo de la ruta expresada en unidades, como pies o kilómetros.

Por ejemplo, si un autobús recorre una distancia de 5.25 km desde el inicio de la forma hasta la parada, el valor ingresado en el campo shape_dist_traveled para el ID de parada será 5.25. Esta información permite que el planificador del viaje determine la porción de la forma que se debe trazar al mostrar parte de un viaje en el mapa.

Los valores usados para shape_dist_traveled deben incrementarse junto con stop_sequence; no pueden usarse para mostrar el recorrido inverso a lo largo de una ruta. Las unidades utilizadas en el campo shape_dist_traveled del archivo stop_times.txt deben coincidir con las utilizadas en este mismo campo del archivo shapes.txt.

timepoint Enum Opcional

Indica si el vehículo de transporte público respeta estrictamente las horas de llegada y de salida especificadas para una parada o si, de lo contrario, se aproxima a esas horas o las interpola. El campo permite que un productor de GTFS proporcione horas de parada interpoladas con la posible incorporación de conocimiento local, pero también le permite indicar si las horas son aproximadas.

Si las entradas de horas de parada especifican las horas de llegada y de salida, los valores válidos para este campo son los siguientes:

  • 0: Las horas se consideran aproximadas.
  • 1 o (vacío): Las horas se consideran exactas.

Si las entradas de horas de parada no especifican las horas de llegada y de salida, los usuarios de feeds deben interpolar las horas de llegada y de salida. Si así lo desean, los productores de feeds pueden indicar que esa entrada no es un punto temporal (con timepoint=0), pero es un error marcar una entrada como un punto temporal (con timepoint=1) sin especificar las horas de llegada y de salida.

Puntos temporales

Los puntos temporales son paradas programadas en las cuales un vehículo respeta estrictamente las horas de llegada y de salida especificadas. Por ejemplo, si un vehículo de transporte público llega a una parada antes de la hora de salida programada, debe esperar en esa parada hasta la hora de salida.

Si una parada determinada no es un punto temporal, utiliza un valor de string vacía en los campos arrival_time o departure_time, o bien ingresa una hora interpolada. Para indicar que se ingresaron horas interpoladas, usa un valor de 0 para el campo timepoint. Si ya lo hiciste, debes usar un valor de timepoint=1 para especificar las horas ingresadas como puntos temporales.

Asegúrate de proporcionar horas de llegada y de salida en todas las paradas que sean puntos temporales.

calendar.txt

Archivo: Condicionalmente obligatorio

Define las fechas de un servicio cuando este está disponible para determinadas rutas. Utiliza un horario semanal. Este archivo especifica las fechas de inicio y finalización, así como los días de la semana en los que el servicio está disponible. Es obligatorio, a menos que todas las fechas del servicio se definan en calendar_dates.txt.

Nombre del campo Tipo Obligatorio Descripción
service_id ID Obligatorio Identifica de forma exclusiva un conjunto de fechas en las que el servicio está disponible en una o más rutas. Cada valor de service_id puede aparecer, como máximo, una vez en un archivo calendar.txt. Este valor se indica en el archivo trips.txt.
monday Enum Obligatorio

Indica si el servicio es válido para todos los lunes dentro del período especificado en los campos start_date y end_date. Los siguientes son los valores válidos para este campo:

  • 1: El servicio está disponible todos los lunes de ese período.
  • 0: El servicio no está disponible los lunes de ese período.
tuesday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los martes.
wednesday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los miércoles.
thursday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los jueves.
friday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los viernes.
saturday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los sábados.
sunday Enum Obligatorio Funciona de la misma forma que el campo monday, pero para los domingos.
start_date Fecha Obligatorio Indica la fecha de inicio del servicio.
end_date Fecha Obligatorio Indica la fecha de finalización del servicio. Esta fecha se incluye en el intervalo del servicio.

calendar_dates.txt

Archivo: Condicionalmente obligatorio

El archivo calendar_dates te permite habilitar o inhabilitar de forma explícita el servicio según la fecha. Puedes utilizarlo de dos formas:

  • Recomendada: Utiliza calendar_dates.txt para crear excepciones aplicables a las categorías de servicio predeterminadas definidas en el archivo calendar.txt. Es un buen enfoque si el servicio que ofreces es, por lo general, regular con unos pocos cambios en determinadas fechas (por ejemplo, para realizar adaptaciones de servicios en ocasiones especiales o según el horario de una escuela). En este caso, calendar_dates.service_id es un ID que hace referencia a calendar.service_id.

  • Alternativa: Omite calendar.txt y, luego, incluye todas las fechas del servicio en calendar_dates.txt. Si tu horario varía la mayor parte de los días del mes o si deseas producir fechas de servicio de manera programática sin especificar un horario semanal normal, es posible que este enfoque sea más adecuado. En este caso, service_id es un ID.

Nombre del campo Tipo Obligatorio Descripción
service_id ID que hace referencia a calendar.service_id o ID Obligatorio

Identifica un conjunto de fechas en las que hay una excepción del servicio disponible en una o más rutas. Cada par (service_id, date) puede aparecer solo una vez en calendar_dates.txt.

Si el mismo valor de service_id aparece tanto en el archivo calendar.txt como en el archivo calendar_dates.txt, la información en calendar_dates.txt modifica la información del servicio que se indica en calendar.txt.

Este campo se especifica en el archivo trips.txt.

date Fecha Obligatorio Especifica una fecha determinada en la que la disponibilidad del servicio es diferente a la habitual. Puedes utilizar el campo exception_type para indicar si el servicio está disponible en la fecha especificada.
exception_type Enum Obligatorio

Indica si el servicio está disponible en la fecha especificada en el campo date. Los siguientes son los valores válidos para este campo:

  • 1: Se agregó el servicio para la fecha especificada.
  • 2: Se quitó el servicio para la fecha especificada.

Por ejemplo, supongamos que una ruta tiene un conjunto de viajes disponibles durante los días feriados y otro conjunto de viajes disponibles para los demás días. Podrías tener un service_id que corresponda al horario de servicio normal y otro service_id que corresponda al horario de días feriados. En el caso de un feriado concreto, puedes utilizar el archivo calendar_dates.txt para agregar el feriado al campo service_id de días feriados y quitar dicho feriado del campo service_id para el horario normal.

fare_attributes.txt

Archivo: Opcional

Define la información sobre las tarifas correspondientes a las rutas de una empresa de transporte público.

Nombre del campo Tipo Obligatorio Descripción
fare_id ID Obligatorio Identifica un tipo de tarifa.
price Punto flotante no negativo Obligatorio Indica el precio de la tarifa en las unidades especificadas por currency_type.
currency_type Código de moneda Obligatorio Define la moneda que se usa para pagar la tarifa.
payment_method Enum Obligatorio

Indica cuándo debe pagarse la tarifa. Los siguientes son los valores válidos para este campo:

  • 0: La tarifa se paga cuando los pasajeros suben al vehículo.
  • 1: La tarifa debe pagarse antes de que los pasajeros suban al vehículo.
transfers Enum Obligatorio

Especifica la cantidad de trasbordos que se permiten con esta tarifa. El hecho de que este campo pueda dejarse vacío es una excepción a la regla de que los campos obligatorios no deben estar vacíos. Los siguientes son los valores válidos para este campo:

  • 0: No se permiten trasbordos con esta tarifa.
  • 1: Se permite un trasbordo con esta tarifa.
  • 2: Se permiten dos trasbordos con esta tarifa.
  • (vacío): Se permiten trasbordos ilimitados con esta tarifa.
agency_id ID que hace referencia a agency.agency_id Condicionalmente obligatorio

Identifica la empresa correspondiente a una tarifa.

Este campo es obligatorio para los conjuntos de datos de varias empresas, que se definen en el archivo agency.txt. De lo contrario, es opcional.

transfer_duration Número entero no negativo Opcional Indica el tiempo transcurrido, en segundos, antes de que se venza un trasbordo. Cuando se utiliza con un valor de transfers de 0, el campo transfer_duration indica el período durante el cual un boleto es válido para una tarifa en la que no se permiten trasbordos. A menos que desees usar este campo para indicar la validez del boleto, omite el campo transfer_duration o déjalo vacío cuando transfers se establece en 0.

fare_rules.txt

Archivo: Opcional

El archivo fare_rules.txt te permite especificar la manera en que se aplican las tarifas del archivo fare_attributes.txt en un itinerario. La mayoría de las estructuras de tarifas utilizan una combinación de las siguientes reglas:

  • La tarifa depende de las estaciones de origen o destino.
  • La tarifa depende de las zonas que atraviesa el itinerario.
  • La tarifa depende de la ruta que utiliza el itinerario.

Para ver ejemplos que muestren cómo especificar una estructura de tarifas mediante los archivos fare_rules.txt y fare_attributes.txt, consulta Ejemplos de tarifas en la wiki del proyecto de código abierto GoogleTransitDataFeed.

Nombre del campo Tipo Obligatorio Descripción
fare_id ID que hace referencia a fare_attributes.fare_id Obligatorio Identifica un tipo de tarifa.
route_id ID que hace referencia a routes.routes_id Opcional

Asocia el tipo de tarifa con una ruta. Si tienes varias rutas con los mismos atributos de tarifa, crea una fila para cada ruta en el archivo fare_rules.txt.

Por ejemplo, si el tipo de tarifa "b" es válido en las rutas "TSW" y "TSE", el archivo fare_rules.txt tendrá las siguientes filas correspondientes al tipo de tarifa:


fare_id,route_id
b,TSW
b,TSE
origin_id ID que hace referencia a stops.zone_id Opcional

Asocia el tipo de tarifa con un zone_id de origen. Si tienes varias zonas de origen con los mismos atributos de tarifa, crea una fila para cada origin_id en el archivo fare_rules.txt.

Por ejemplo, si el tipo de tarifa "b" es válido para todos los viajes que se originan en la zona "2" o en la zona "8", el archivo fare_rules.txt tendrá las siguientes filas correspondientes al tipo de tarifa:


fare_id,...,origin_id
b,...,2
b,...,8
destination_id ID que hace referencia a stops.zone_id Opcional

Asocia el tipo de tarifa con un zone_id de destino. Si tienes varias zonas de destino con los mismos atributos de tarifa, crea una fila para cada destination_id en el archivo fare_rules.txt.

Por ejemplo, puedes combinar los campos origin_ID y destination_ID para especificar que el tipo de tarifa "b" es válido para viajar entre las zonas "3" y "4" y entre las zonas "3" y "5". El archivo fare_rules.txt tendrá las siguientes filas correspondientes al tipo de tarifa:


fare_id,...,origin_id,destination_id
b,...,3,4
b,...,3,5
contains_id ID que hace referencia a stops.zone_id Opcional

Identifica las zonas en las que ingresa un pasajero con un determinado tipo de tarifa. En algunos sistemas, se usa para calcular el tipo de tarifa correcto.

Por ejemplo, si el tipo de tarifa "c" está asociado a todos los viajes de la ruta GRT que atraviesa las zonas "5", "6" y "7", el archivo fare_rules.txt incluirá las siguientes filas:


zone_id,route_id,...,contains_id
c,GRT,,,5
c,GRT,,,6
c,GRT,,,7

Como todas las zonas identificadas con el campo contains_id deben corresponderse con la tarifa que se aplicará, un itinerario que atraviese las zonas "5" y "6", pero no la zona "7" no tendrá un tipo de tarifa "c". Para obtener más información, consulta Ejemplos de tarifas en la wiki del proyecto GoogleTransitDataFeed.

shapes.txt

Archivo: Opcional

Las formas describen la ruta física que realiza un vehículo y se definen en el archivo shapes.txt. Las formas se asocian con viajes individuales y se componen de una secuencia de puntos. El trazado ordenado de los puntos proporciona la ruta del vehículo. No es necesario que los puntos coincidan con las ubicaciones de las paradas.

Nombre del campo Tipo Obligatorio Descripción
shape_id ID Obligatorio Identifica una forma.
shape_pt_lat Latitud Obligatorio Asocia la latitud de un punto de forma con un ID de forma. Cada fila en el archivo shapes.txt representa un punto de forma usado para definir la forma.
shape_pt_lon Longitud Obligatorio Asocia la longitud de un punto de forma con un ID de forma. Cada fila en el archivo shapes.txt representa un punto de forma usado para definir la forma.
shape_pt_sequence Número entero no negativo Obligatorio

Asocia la latitud y la longitud de un punto de forma con el orden secuencial que tiene a lo largo de la forma. Los valores de shape_pt_sequence deben incrementarse a lo largo del viaje, pero no es necesario que sean consecutivos.

Por ejemplo, si la forma "A_shp" tiene tres puntos en su definición, el archivo shapes.txt puede tener las siguientes filas para definir la forma:


shape_id,shape_pt_lat,shape_pt_lon,shape_pt_sequence
A_shp,37.61956,-122.48161,0
A_shp,37.64430,-122.41070,6
A_shp,37.65863,-122.30839,11
shape_dist_traveled Punto flotante no negativo Opcional

Indica la distancia real recorrida a lo largo de una forma desde el primer punto hasta el punto que se especifica en este registro. Esta información permite que el planificador del viaje determine la porción de la forma que se debe trazar al mostrar parte de un viaje en el mapa. Los valores usados para shape_dist_traveled deben incrementarse junto con shape_pt_sequence; no pueden usarse para mostrar el recorrido inverso a lo largo de una ruta.

Las unidades utilizadas en el campo shape_dist_traveled del archivo shapes.txt deben coincidir con las utilizadas en este mismo campo del archivo stop_times.txt.

Por ejemplo, si un autobús recorre la distancia de tres puntos definidos para la forma "A_shp", los valores shape_dist_traveled adicionales, que aquí se muestran en kilómetros, se verán de la siguiente forma:


shape_id,shape_pt_lat,shape_pt_lon,shape_pt_sequence,shape_dist_traveled
A_shp,37.61956,-122.48161,0,0
A_shp,37.64430,-122.41070,6,6.8310
A_shp,37.65863,-122.30839,11,15.8765

frequencies.txt

Archivo: Opcional

El archivo frequencies.txt representa viajes que se realizan en intervalos (o tiempos entre viajes) regulares. Puedes usar este archivo para representar dos tipos de servicios diferentes:

  • Un servicio basado en la frecuencia, que usa exact_times=0. Este servicio no sigue un horario fijo durante el día. En cambio, los operadores intentan respetar estrictamente los intervalos predeterminados para los viajes.

  • Una representación comprimida de un servicio basado en un horario, que usa exact_times=1. Este servicio tiene el mismo intervalo exacto para los viajes durante un período de tiempo determinado. En los servicios basados en un horario, los operadores intentan respetar estrictamente un horario.

Nombre del campo Tipo Obligatorio Descripción
trip_id ID que hace referencia a trips.trip_id Obligatorio Identifica el viaje al que se aplica la frecuencia de servicio especificada.
start_time Hora Obligatorio Indica la hora a la que el primer vehículo sale de la primera parada del viaje con la frecuencia especificada.
end_time Hora Obligatorio Indica la hora a la que el servicio cambia de frecuencia (o bien finaliza) en la primera parada del viaje.
headway_secs Número entero no negativo Obligatorio

Indica el tiempo, en segundos, entre las salidas desde la misma parada (el intervalo) para este tipo de viaje. Se aplica durante el intervalo de tiempo especificado por start_time y end_time.

Durante el mismo viaje, se permiten varios intervalos, pero estos no pueden superponerse. Sin embargo, un período de intervalos puede comenzar en el mismo momento exacto en que finaliza otro período.

exact_times Enum Opcional

Indica si los viajes basados en la frecuencia están programados de manera exacta según la información de intervalos especificada. Para obtener más información, consulta la descripción del archivo frequencies.txt. Los siguientes son los valores válidos para este campo:

  • 0 o (vacío): Viajes basados en la frecuencia que no tienen un horario exacto.
  • 1: Viajes basados en un horario que tienen el mismo intervalo exacto durante todo el día. En este caso, el valor de end_time debe ser mayor que el valor de start_time del último viaje deseado, pero menor que los valores de start_time y headway_secs del último viaje deseado.

transfers.txt

Archivo: Opcional

Cuando se calcula un itinerario, las aplicaciones que usan la especificación GTFS interpolan los trasbordos en función del tiempo permitido y la proximidad de la parada. El archivo transfers.txt incluye reglas adicionales y anula los trasbordos seleccionados.

Nombre del campo Tipo Obligatorio Descripción
from_stop_id ID que hace referencia a stops.stop_id Obligatorio Identifica una parada o estación en la que comienza una conexión entre rutas. Si este campo hace referencia a una estación, la regla de trasbordos se aplica a todas sus paradas secundarias.
to_stop_id ID que hace referencia a stops.stop_id Obligatorio Identifica una parada o estación en la que finaliza una conexión entre rutas. Si este campo hace referencia a una estación, la regla de trasbordos se aplica a todas sus paradas secundarias.
transfer_type Enum Obligatorio

Indica el tipo de conexión para el par especificado (from_stop_id, to_stop_id). Los siguientes son los valores válidos para este campo:

  • 0 o (vacío): Indica el punto de trasbordo recomendado entre rutas.
  • 1: Indica el punto de trasbordo programado entre dos rutas. El vehículo que sale espera al que llega con el tiempo suficiente para que un pasajero pueda realizar un trasbordo entre rutas.
  • 2: Indica que se requiere una cantidad mínima de tiempo para realizar un trasbordo entre la llegada y la salida a fin de garantizar una conexión. El tiempo necesario para el trasbordo se especifica mediante min_transfer_time.
  • 3: No se pueden realizar trasbordos entre rutas en esta ubicación.
min_transfer_time Número entero no negativo Opcional Define la cantidad de tiempo, en segundos, que debe haber disponible en un itinerario para permitir un trasbordo entre rutas en las paradas especificadas. El valor del campo min_transfer_time debe ser suficiente para permitir que un pasajero normal se desplace de una parada a otra, incluido el margen de tiempo establecido para las posibles desviaciones del horario en cada ruta.

pathways.txt

Archivo: Opcional

Usa pathways.txt para crear una representación gráfica del diseño de una estación. Para ir del nodo de entrada a un nodo de plataforma, el pasajero debe atravesar zonas peatonales, puertas de cobro de tarifas, escaleras, o bien otros recorridos, que se representan como bordes en el gráfico.

La lista de recorridos dentro de la estación que se especifica en pathways.txt debe ser exhaustiva para una estación determinada. Si falta un recorrido entre los nodos A y B, significa que no hay una conexión directa entre ellos. Por lo tanto, se aplican las siguientes reglas de sentido común:

  • No debe haber ubicaciones aisladas: Si una ubicación dentro de una estación tiene un recorrido, todas las ubicaciones deben tener recorridos, con excepción de las plataformas que tienen áreas de abordaje.

  • No debe haber plataformas bloqueadas: Cada plataforma debe estar conectada, al menos, a una entrada mediante una cadena de recorridos.

  • No debe haber recorridos para una plataforma con áreas de abordaje: Las plataformas que tienen áreas de abordaje se tratan como objetos superiores, no puntos. No se pueden asignar recorridos a ellas. Todos los recorridos deben dirigir a las áreas de abordaje.

Nombre del campo Tipo Obligatorio Descripción
pathway_id ID Obligatorio Identifica el recorrido. Pueden conectarse diferentes recorridos del mismo from_stop_id al mismo to_stop_id. Por ejemplo, esto ocurre cuando dos escaleras mecánicas se encuentran una al lado de la otra en sentidos opuestos, o cuando una escalera y un ascensor se encuentran en el mismo lugar y se dirigen al mismo lugar.
from_stop_id ID que hace referencia a stops.stop_id Obligatorio Indica la ubicación donde comienza el recorrido. Contiene un stop_id que identifica una plataforma, entrada o salida, nodo genérico o área de abordaje del archivo stops.txt.
to_stop_id ID que hace referencia a stops.stop_id Obligatorio Indica la ubicación donde finaliza el recorrido. Contiene un stop_id que identifica una plataforma, entrada o salida, nodo genérico o área de abordaje del archivo stops.txt.
pathway_mode Enum Obligatorio

Especifica el tipo de recorrido entre el par especificado (from_stop_id, to_stop_id). Los siguientes son los valores válidos para este campo:

  • 1: Recorrido a pie
  • 2: Escaleras
  • 3: Pasillo deslizante
  • 4: Escalera mecánica
  • 5: Ascensor
  • 6: Puerta de cobro de tarifa (o puerta de pagos). Un recorrido que atraviesa un área de la estación donde se debe presentar un comprobante de pago. Suele ser una puerta de pagos física.

    Las puertas de cobro de tarifa pueden separar las áreas de pago de la estación de las demás áreas que no son de pago, o bien separar las diferentes áreas de pago dentro de la misma estación. Esta información puede usarse para dirigir a los pasajeros por las estaciones de forma tal que no deban realizar pagos innecesarios.

  • 7: Puerta de salida. Un recorrido en el que los pasajeros salen de un área en la que presentaron un comprobante de pago para ingresar y que se conecta con un área donde ese comprobante ya no es necesario.
is_bidirectional Enum Obligatorio

Indica los sentidos en los que puede hacerse el recorrido. Los siguientes son los valores válidos para este campo:

  • 0: Recorrido unidireccional. Solo puede usarse en el sentido de from_stop_id hacia to_stop_id.
  • 1: Recorrido bidireccional. Puede usarse en ambos sentidos.

Las puertas de cobro de tarifa (pathway_mode=6) y las puertas de salida (pathway_mode=7) no pueden ser bidireccionales.

length Punto flotante no negativo Opcional

Indica la longitud horizontal, en metros, del recorrido. La longitud se mide desde la ubicación de origen, definida en from_stop_id, hasta la ubicación de destino, definida en to_stop_id.

Se recomienda usar este campo para los recorridos a pie, las puertas de cobro de tarifas y las puertas de salida, en los que el valor de pathway_mode es igual a 1, 6 y 7 respectivamente.

traversal_time Número entero positivo Opcional

Indica el tiempo promedio necesario para realizar el recorrido a pie. Los siguientes son los valores válidos para este campo:

  • (vacío): Tiempo de recorrido desconocido
  • Número entero positivo: La cantidad de segundos necesarios para hacer este recorrido a pie

Se recomienda usar este campo para los recorridos mecánicos, como pasillos deslizantes, escaleras mecánicas y ascensores, en los que el valor de pathway_mode es igual a 3, 4 y 5 respectivamente.

stair_count Número entero no nulo Opcional

Especifica la cantidad de escaleras del recorrido. Un valor de stair_count positivo significa que el pasajero debe subir de from_stop_id a to_stop_id. Un valor de stair_count negativo significa que el pasajero debe bajar de from_stop_id a to_stop_id.

Se recomienda usar este campo para los recorridos con escaleras y escaleras mecánicas, en los que pathway_mode es igual a 2 y 4 respectivamente.

Recomendamos que la aproximación de un cambio de piso sea igual a 15 escalones, o a 12 en el caso de escaleras mecánicas.

max_slope Punto flotante Opcional

Indica el porcentaje de inclinación máximo del recorrido. Los siguientes son los valores válidos para este campo:

  • 0 o (vacío): Sin inclinación
  • Punto flotante: Es el porcentaje de inclinación del recorrido; es positivo en el caso de una inclinación ascendente y negativo en el caso de una inclinación descendente

Usa este campo solo para los recorridos a pie y los pasillos deslizantes con valores de pathway_mode de 1 y 3 respectivamente.

Por ejemplo, el porcentaje de inclinación máximo permitido en los EE.UU. para sillas de ruedas manuales es de 0.083 (también 8.3%). Esto significa que hay un aumento vertical de 0.083 m por cada metro a nivel horizontal.

min_width Punto flotante positivo Opcional

Indica el ancho mínimo del recorrido, expresado en metros.

Se recomienda completar este campo si el ancho mínimo es menor a un metro.

signposted_as Texto Opcional Contiene una string de texto exacta de una señal física visible para los pasajeros de transporte público. La string se puede usar para proporcionar instrucciones escritas a los usuarios. Ingrese el texto en este campo tal y como se muestra en las señales, sin traducirlo.
reversed_signposted_as Texto Opcional Es igual que el campo signposted_as, pero se usa cuando el recorrido se hace en sentido inverso, es decir, desde to_stop_id hasta from_stop_id.

levels.txt

Archivo: Opcional

Describe los diferentes niveles de una estación. El archivo levels.txt es útil principalmente cuando se usa junto con el archivo pathways.txt.

Nombre del campo Tipo Obligatorio Descripción
level_id ID Obligatorio Identifica el nivel de la estación.
level_index Punto flotante Obligatorio

Indica la posición relativa de este nivel en relación con los demás niveles. Se supone que los niveles con índices más altos se encuentran encima de los niveles con índices más bajos.

Usa un índice de 0 para indicar el nivel del suelo, índices positivos para especificar los niveles superiores a este y negativos para determinar los niveles inferiores.

level_name Texto Opcional

Indica el nombre del nivel. Asegúrate de que el nombre coincida con las letras o números del nivel que se usan dentro del edificio o la estación.

Este campo es útil para las rutas que incluyen ascensores, como las instrucciones para tomar el ascensor hasta los niveles "Entrepiso", "Plataformas" o "-1".

feed_info.txt

Archivo: Opcional

El archivo feed_info.txt incluye información sobre el feed en sí, en lugar de los servicios que este describe. La especificación GTFS posee un archivo agency.txt para brindar información sobre las empresas que operan los servicios descritos en el feed. Sin embargo, algunas veces, el publicador del feed es una entidad diferente de cualquiera de las empresas, como en el caso de los agregadores regionales. Además, hay algunos campos que son opciones de configuración propias de los feeds y no de las empresas.

Nombre del campo Tipo Obligatorio Descripción
feed_publisher_name Texto Obligatorio Incluye el nombre completo de la organización que publica el conjunto de datos. Puede coincidir con uno de los valores de agency_name del archivo agency.txt.
feed_publisher_url URL Obligatorio Incluye la URL del sitio web de la organización que publica el conjunto de datos. Puede coincidir con uno de los valores de agency_url del archivo agency.txt.
feed_lang Código de idioma Obligatorio Especifica el idioma predeterminado utilizado para el texto en este conjunto de datos. Esta configuración ayuda a los usuarios de la especificación GTFS a elegir las reglas sobre el uso de mayúsculas y otros parámetros específicos de la configuración de idioma para el feed.
feed_start_date Fecha Opcional

El conjunto de datos brinda información completa y confiable de los horarios del servicio en el período desde el inicio del día feed_start_date hasta el final del día feed_end_date.

Si se incluyen ambos campos, feed_end_date y feed_start_date, la fecha de finalización no debe ser anterior a la fecha de inicio. Se recomienda que los proveedores de conjuntos de datos brinden datos sobre los horarios que se encuentren fuera de este período para informar a los pasajeros sobre posibles servicios futuros, pero los usuarios de los conjuntos de datos deben ser conscientes de que su estado no es relevante.

Si en los archivos calendar.txt y calendar_dates.txt se omiten fechas del calendario activo que se incluyen en el período definido en feed_start_date y feed_end_date, esto significa claramente que no se presta el servicio durante los días omitidos. Es decir, se supone que calendar.txt y calendar_dates.txt son listas exhaustivas de las fechas en las que se presta el servicio.

feed_end_date Fecha Opcional Para obtener más información sobre este campo, consulta la sección feed_start_date más arriba.
feed_version Texto Opcional Especifica una string que indica cuál es la versión actual del conjunto de datos GTFS. Es posible que las aplicaciones que usan la especificación GTFS muestren este valor para ayudar a los publicadores de conjuntos de datos a determinar si se incorporó la versión más reciente de su conjunto de datos.
feed_contact_email Correo electrónico Opcional Proporciona una dirección de correo electrónico para facilitar la comunicación relacionada con el conjunto de datos GTFS y las prácticas de publicación de datos. El campo feed_contact_email proporciona un contacto técnico para las aplicaciones que usan la especificación GTFS. Si deseas proporcionar la información de contacto de Atención al cliente, usa los campos del archivo agency.txt.
feed_contact_url URL Opcional Proporciona una URL de información de contacto, un formulario web, un servicio de asistencia, o bien otra herramienta para facilitar la comunicación relacionada con el conjunto de datos GTFS y las prácticas de publicación de datos. El campo feed_contact_url proporciona un contacto técnico para las aplicaciones que usan la especificación GTFS. Si deseas proporcionar la información de contacto de Atención al cliente, usa los campos del archivo agency.txt.