Referencia de GTFS Schedule¶
Revisado el 8 de diciembre de 2022. Véase el historial de revisiones para más detalles.
Este documento define el formato y la estructura de los archivos que componen un conjunto de datos GTFS.
Tabla de contenidos¶
- Convenciones del documento
- Archivos de conjuntos de datos
- Requisitos de los archivos
- Definiciones de campo
- agency.txt
- stops.txt
- routes.txt
- trips.txt
- stop_times.txt
- calendar.txt
- calendar_dates.txt
- fare_attributes.txt
- fare_rules.txt
- fare_media.txt
- fare_products.txt
- fare_leg_rules.txt
- fare_transfer_rules.txt
- areas.txt
- stop_areas.txt
- shapes.txt
- frequencies.txt
- transfers.txt
- pathways.txt
- levels.txt
- translations.txt
- feed_info.txt
- attributions.txt
Convenciones de los documentos¶
Las palabras clave "DEBE", "NO DEBE", "OBLIGATORIO", "DEBERÁ", "NO DEBERÁ", "DEBERÍA", "NO DEBERÍA", "RECOMENDADO", "PUEDE" y "OPCIONAL" en este documento serán interpretadas como se describe en RFC 2119.
Definiciones de los términos¶
En esta sección se definen los términos que se utilizan en este documento.
- Conjunto de datos: conjunto completo de archivos definidos por la referencia de esta especificación. La modificación del conjunto de datos crea una nueva versión del mismo. Los conjuntos de datos deben publicarse en una URL pública y permanente, incluyendo el nombre del archivo comprimido. (por ejemplo, https://www.agency.org/gtfs/gtfs.zip).
- Registro - Estructura de datos básica compuesta por una serie de valores de campo diferentes que describen una única entidad (por ejemplo, agencia de transporte, parada, ruta, etc.). Se representa, en una tabla, como una fila.
- Campo - Propiedad de un objeto o entidad. Se representa, en una tabla, como una columna.
- Valor de campo - Una entrada individual en un campo. Se representa, en una tabla, como una sola celda.
- Día de servicio - Un día de servicio es un período de tiempo utilizado para indicar la programación de una ruta. La definición exacta de día de servicio varía de una agencia a otra, pero los días de servicio a menudo no se corresponden con los días naturales. Un día de servicio puede exceder las 24:00:00 si el servicio comienza en un día y termina en el siguiente. Por ejemplo, un servicio que va desde las 08:00:00 del viernes hasta las 02:00:00 del sábado, podría indicarse como que va desde las 08:00:00 hasta las 26:00:00 en un solo día de servicio.
- Campo de texto - El campo debe contener la misma información que su campo padre (sobre el que recae si está vacío). El objetivo es que se lea como texto a voz, por lo que la abreviatura debe eliminarse ("St" debe leerse como "Street" o "Saint"; "Elizabeth I" debe ser "Elizabeth the first") o mantenerse para que se lea como tal ("JFK Airport" se dice abreviado).
- Tramo - Viaje en el que un pasajero sube y baja entre un par de lugares posteriores a lo largo de un viaje.
- Viaje - Viaje total desde el origen hasta el destino, incluyendo todos los tramos y transbordos entre ellos.
- Subviaje - Dos o más tramos que comprenden un subconjunto de un viaje.
- Producto tarifario - Productos tarifarios adquiribles que pueden utilizarse para pagar o validar el viaje.
Presencia¶
Condiciones de presencia aplicables a los campos y archivos:
- Obligatorio: el campo o archivo debe estar incluido en el conjunto de datos y contener un valor válido para cada registro.
- Opcional: el campo o el archivo puede omitirse en el conjunto de datos.
- Condicionalmente obligatorio: el campo o el archivo debe incluirse en las condiciones indicadas en la descripción del campo o del archivo.
- Condicionalmente Prohibido - El campo o archivo no debe incluirse bajo las condiciones indicadas en la descripción del campo o archivo.
Tipos de campo¶
- Color - Un color codificado como un número hexadecimal de seis dígitos. Consulte https://htmlcolorcodes.com para generar un valor válido (no debe incluirse el "#" inicial).
Ejemplo:FFFFFF
para el blanco,000000
para el negro o0039A6
para las líneas A,C,E en NYMTA. - Código de moneda - Un código de moneda alfabético ISO 4217. Para ver la lista de monedas actuales, consulte https://en.wikipedia.org/wiki/ISO_4217#Active_codes.
Ejemplo:CAD
para dólares canadienses,EUR
para euros oJPY
para yenes japoneses. - Importe de la moneda - Un valor decimal que indica un importe de moneda. El número de decimales se especifica en la norma ISO 4217 para el código de moneda correspondiente. Todos los cálculos financieros deben procesarse como decimales, moneda u otro tipo equivalente adecuado para los cálculos financieros en función del language programación utilizado para consumir los datos. Se desaconseja procesar los importes en moneda como flotante debido a las ganancias o pérdidas de dinero durante los cálculos.
- Fecha - Día de servicio en el formato AAAAMMDD. Dado que la hora dentro de un día de servicio puede ser superior a las 24:00:00, un día de servicio puede contener información para el día o los días siguientes.
Ejemplo:20180913
para el 13 de septiembre de 2018. - Correo electrónico - Una dirección de correo electrónico.
Ejemplo:example@example.com
- Enum - Una opción de un conjunto de constantes predefinidas definidas en la columna "Descripción".
Ejemplo: El campotipo de ruta
contiene un0
para el tranvía, un1
para el metro... - ID - Un valor de campo ID es un ID interno, no destinado a ser mostrado a los pasajeros, y es una secuencia de cualquier carácter UTF-8. Se recomienda utilizar sólo caracteres ASCII imprimibles. Un ID se denomina "ID único" cuando debe ser único dentro de un archivo. Los IDs definidos en un archivo .txt son a menudo referenciados en otro archivo .txt. Los IDs que hacen referencia a un ID en otra tabla se etiquetan como "ID extranjero".
Ejemplo: El campostop_id
en stops. stops.txt es un "ID único". El campoparent_station
en stops.txt es un "ID foráneo que hace referencia a stops.stop_id
". - código de language - Un código de language IETF BCP 47. Para una introducción al IETF BCP 47, consulte https://www.rfc-editor.org/rfc/bcp/bcp47.txt y https://www.w3.org/International/articles/language-tags/
Ejemplo:en
para el inglés,en-US
para el inglés americano ode
para el alemán. - Latitud - Latitud WGS84 en grados decimales. El valor debe ser mayor o igual a -90,0 y menor o igual a 90,0.
Ejemplo:41,890169
para el Coliseo de Roma. - Longitud - Longitud WGS84 en grados decimales. El valor debe ser mayor o igual a -180,0 y menor o igual a 180,0.
Ejemplo:12,492269
para el Coliseo de Roma. - Float - Un número en coma flotante.
- Entero - Un número entero.
- Número deteléfono - Un número de teléfono.
- Hora - Hora en el formato HH:MM:SS (también se acepta H:MM:SS). La hora se mide a partir del "mediodía menos las 12h" del día de servicio (efectivamente la medianoche, excepto en los días en los que se produce el cambio de horario de verano). Para las horas que se produzcan después de medianoche, introduzca la hora como un valor superior a las 24:00:00 en HH:MM:SS hora local del día en el que comienza el Schedule viaje.
Ejemplo:14:30:00
para las 2:30PM o25:35:00
para la 1:35AM del día siguiente. - Texto - Una cadena de caracteres UTF-8, cuyo objetivo es ser mostrada y que, por lo tanto, debe ser legible para las personas.
- Zona horaria - Zona horaria TZ de la https://www.iana.org/time-zones. Los nombres de las zonas horarias nunca contienen el carácter de espacio, pero pueden contener un guión bajo. Consulte https://en.wikipedia.org/wiki/List_of_tz_zones para obtener una lista de valores válidos.
Ejemplo:Asia/Tokio
,América/Los_Ángeles
oÁfrica/El Cairo
. - URL - Una URL completa que incluye http:// o https://, y cualquier carácter especial en la URL debe ser escapado correctamente. Consulte la siguiente dirección https://www.w3.org/Addressing/URL/4_URI_Recommentations.html para obtener una descripción de cómo crear valores de URL totalmente cualificados.
Signos de campo¶
Signos aplicables a los tipos de campo Float o Integer:
- No negativo - Mayor o igual que 0.
- No cero - No es igual a 0.
- Positivo - Mayor que 0.
Ejemplo: Float no negativo - Un número de coma flotante mayor o igual que 0.
Atributos del conjunto de datos¶
La clave primaria de un conjunto de datos es el campo o la combinación de campos que identifican de forma exclusiva una fila. La clave primaria (*)
se utiliza cuando todos los campos proporcionados para un archivo se utilizan para identificar de forma exclusiva una fila. Clave primaria (ninguna
) significa que el archivo sólo admite una fila.
Ejemplo: los campos trip_id
y stop_sequence
constituyen la clave primaria de stop_times.txt.
Archivos de conjuntos de datos¶
Esta especificación define los siguientes archivos:
Nombre del fichero | Presencia | Descripción |
---|---|---|
agency.txt | Obligatorio | Agencias de transporte con servicio representadas en este conjunto de datos. |
stops.txt | Exigida | Paradas donde los vehículos recogen o dejan a los pasajeros. También define las estaciones y las entradas a las estaciones. |
routes.txt | Exigida | Rutas de tránsito. Una ruta es un grupo de viajes que se muestra a los usuarios como un único servicio. |
trips.txt | Exigida | 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 | Exigida | Las horas de llegada y salida de las paradas de un vehículo para cada viaje. |
calendar.txt | Requerido condicionalmente | Fechas de servicio especificadas mediante un Schedule semanal con fechas de inicio y fin. Condicionalmente requerido: - Exigida a menos que todas las fechas de servicio estén definidas en calendar_dates.txt. - Opcional en caso contrario. |
calendar_dates.txt | Condicionalmente obligatorio | Las excepciones para los servicios definidos en el calendar.txt. Condicionalmente Obligatorio: - Exigida si calendar.txt se omite. En cuyo caso calendar_dates.txt debe contener todas las fechas de servicio. - Opcional en caso contrario. |
fare_attributes.txt | Opcional | Información sobre las tarifas de los itinerarios de una agencia de transporte. |
fare_rules.txt | Opcional | Normas de aplicación de las tarifas para los itinerarios. |
fare_media.txt | Opcional | Describir los medios tarifarios que pueden emplearse para utilizar productos tarifarios. El archivo fare_media.txt describe conceptos que no están representados en fare_attributes.txt y fare_rules.txt. Como tal, el uso de [fare_media.txt](#fare_mediatxt es totalmente independiente de los archivos fare_attributes.txt y fare_rules.txt. |
fare_products.txt | Opcional | Describir los diferentes tipos de billetes o tarifas que pueden ser adquiridos por los usuarios. Archivo fare_products.txt describe los productos tarifarios que no están representados en fare_attributes.txt y fare_rules.txt. Como tal, el uso de fare_products.txt es totalmente independiente de los archivos fare_attributes.txt y fare_rules.txt. |
fare_leg_rules.txt | Opcional | Normas tarifarias para tramos individuales de viaje. Archivo fare_leg_rules.txt proporciona un método más detallado para modelar las estructuras tarifarias. Así, el uso de fare_leg_rules.txt es totalmente independiente de los archivos fare_attributes.txt y fare_rules.txt. |
fare_transfer_rules.txt | Opcional | Reglas tarifarias para las transferencias entre tramos de viaje. Junto con fare_leg_rules.txtarchivo fare_transfer_rules.txt proporciona un método más detallado para modelar las estructuras tarifarias. Como tal, el uso de fare_transfer_rules.txt es totalmente independiente de los archivos fare_attributes.txt y fare_rules.txt. |
areas.txt | Opcional | Agrupación de localidades por áreas. |
stop_areas.txt | Opcional | Reglas para asignar paradas a las áreas. |
shapes.txt | Opcional | Reglas para asignar las trayectorias de viaje de los vehículos, a veces denominadas alineaciones de ruta. |
frequencies.txt | Opcional | Headway (tiempo entre viajes) para el servicio basado en headway o una representación comprimida del servicio de horario fijo. |
transfers.txt | Opcional | Reglas para hacer conexiones en puntos de transferencia entre rutas. |
pathways.txt | Opcional | Rutas que conectan lugares dentro de las estaciones. |
levels.txt | Condicionalmente obligatorio | Niveles dentro de las estaciones. Condicionalmente exigida: - Exigida Cuando se describen recorridos con ascensores ( pathway_mode=5 ).- Opcional en caso contrario. |
translations.txt | Opcional | Traducciones de los valores del conjunto de datos orientados al cliente. |
feed_info.txt | Opcional | Metadatos del conjunto de datos, incluida la información sobre el editor, la versión y la caducidad. |
attributions.txt | Opcional | Atribuciones del conjunto de datos. |
Requisitos del archivo¶
Los siguientes requisitos se aplican al formato y al contenido de los archivos del conjunto de datos:
- Todos los archivos deben guardarse como texto delimitado por comas.
- La primera línea de cada archivo debe contener los nombres de los campos. Cada subsección de la sección Definiciones de campo corresponde a uno de los archivos de un conjunto de datos GTFS y enumera los nombres de campo que pueden utilizarse en ese archivo.
- Todos los nombres de archivos y campos distinguen entre mayúsculas y minúsculas.
- Los valores de los campos no deben contener tabulaciones, retornos de carro ni líneas nuevas.
- Los valores de campo que contienen comillas o comas deben ir entre comillas. Además, cada comilla en el valor de campo debe ir precedida de una comilla. Esto es coherente con la forma en que Microsoft Excel genera los archivos delimitados por comas (CSV). Para más información sobre el formato de los archivos CSV, consulte https://tools.ietf.org/html/rfc4180.
- El siguiente ejemplo muestra cómo debe aparecer un valor de campo en un archivo delimitado por comas:
- Valor original del campo:
Contiene "comillas", comas y texto
- Valor del campo en el archivo CSV:
"Contiene ""comillas"", comas y texto"
- Los valores de los campos no deben contener etiquetas HTML, comentarios o secuencias de escape.
- Deben eliminarse los espacios adicionales entre los campos o los nombres de los campos. Muchos analizadores sintácticos consideran que los espacios forman parte del valor, lo que 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 aceptan archivos que incluyan el carácter de marca de orden de bytes (BOM) de Unicode. Consulte https://unicode.org/faq/utf_bom.html#BOM para obtener más información sobre el carácter BOM y UTF-8.
- Todos los archivos del conjunto de datos deben estar comprimidos.
Definiciones de los campos¶
agency.txt¶
Archivo: Obligatorio
Clave primaria (agency_id
)
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
agency_id |
ID único | Requerido condicionalmente | Identifica una marca de tránsito que a menudo es sinónimo de una agencia de tránsito. Tenga en cuenta que en algunos casos, como cuando una sola agencia opera múltiples servicios separados, las agencias y las marcas son distintas. En este documento se utiliza el término "agencia" en lugar de "marca". Un conjunto de datos puede contener datos de varias agencias. Condicionalmente requerido: Condicionalmente requerido: Condicionalmente requerido: Condicionalmente requerido - Exigida cuando el conjunto de datos contiene datos de múltiples agencias de transporte. - Facultativo en caso contrario. |
agency_name |
Texto | Exigida | Nombre completo de la agencia de transporte. |
agency_url |
URL | Exigida | URL de la agencia de transporte. |
agency_timezone |
Zona horaria | Exigida | Zona horaria en la que se encuentra la agencia de transporte. Si se especifican varias agencias en el conjunto de datos, cada una debe tener el mismo agency_timezone . |
agency_lang |
código delanguage | Opcional | language principal utilizado por esta agencia de transporte. Debe proporcionarse para ayudar a los consumidores GTFS a elegir las reglas de mayúsculas y otros ajustes language para el conjunto de datos. |
agency_phone |
Número de teléfono | Opcional | Un número de teléfono de voz para la agencia especificada. Este campo es un valor de cadena que presenta el número de teléfono típico del área de servicio de la agencia. Puede contener signos de puntuación para agrupar los dígitos del número. Se permite un texto marcable (por ejemplo, "503-238-RIDE" de TriMet), pero el campo no debe contener ningún otro texto descriptivo. |
agency_fare_url |
URL | Opcional | URL de una página web que permite a un usuario comprar billetes u otros instrumentos tarifarios para esa agencia en línea. |
agency_email |
Correo electrónico | Opcional | Dirección de correo electrónico controlada activamente por el departamento de atención al cliente de la agencia. Esta dirección de correo electrónico debe ser un punto de contacto directo en el que los usuarios del transporte público puedan ponerse en contacto con un representante del servicio de atención al cliente de la agencia. |
stops.txt¶
Archivo: Obligatorio
Clave primaria (stop_id
)
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
stop_id |
ID único | Exigida | Identifica una ubicación: parada/plataforma, estación, entrada/salida, nodo genérico o zona de embarque (véase location_type ). Varias rutas pueden utilizar el mismo stop_id . |
stop_code |
Texto | Opcional | Texto corto o un número que identifica la ubicación para los pasajeros. Estos códigos se utilizan a menudo en los sistemas de información de tránsito por teléfono o se imprimen en la señalización para facilitar a los usuarios la obtención de información sobre un lugar determinado. El stop_code puede ser el mismo que stop_id si es de cara al público. Este campo debe dejarse vacío en el caso de los lugares sin código que se presentan a los usuarios. |
stop_name |
Texto | Condicionalmente exigida | Nombre de la ubicación. El stop_name debe coincidir con el nombre de la ubicación de la agencia de cara al usuario, tal y como está impreso en un horario, publicado en línea o representado en la señalización. Para las traducciones a otros idiomas, utilice translations.txt .Si el lugar es una zona de embarque ( location_type=4 ), el stop_name debe contener el nombre de la zona de embarque tal y como lo muestra la agencia. Puede ser una sola letra (como en algunas estaciones de ferrocarril interurbanas europeas), o un texto como "Zona de embarque para sillas de ruedas" (metro de Nueva York) o "Cabecera de trenes cortos" (RER de París).Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para los lugares que son paradas ( location_type=0 ), estaciones (location_type=1 ) o entradas/salidas (location_type=2 ).- Opcional para ubicaciones que son nodos genéricos ( location_type=3 ) o zonas de embarque (location_type=4 ). |
tts_stop_name |
Texto | Opcional | Versión legible del stop_name . Véase "Campo de texto" en la sección Definiciones de términos para más. |
stop_desc |
Texto | Opcional | Descripción del lugar que proporciona información útil y de calidad. No debe ser un duplicado de stop_name . |
stop_lat |
Latitud | Condicionalmente exigida | Latitud del lugar. Para paradas/plataformas ( location_type=0 ) y zona de embarque (location_type=4 ), las coordenadas deben ser las del poste del autobús -si existe- y, en caso contrario, del lugar donde los viajeros suben al vehículo (en la acera o el andén, y no en la calzada o la vía donde se detiene el vehículo). Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para los lugares que son paradas ( location_type=0 ), estaciones (location_type=1 ) o entradas/salidas (location_type=2 ).- Opcional para ubicaciones que son nodos genéricos ( location_type=3 ) o zonas de embarque (location_type=4 ). |
stop_lon |
Longitud | Condicionalmente exigida | Longitud de la ubicación. Para las paradas/los andenes ( location_type=0 ) y zona de embarque (location_type=4 ), las coordenadas deben ser las del poste del autobús -si existe- y, en caso contrario, las del lugar donde los viajeros suben al vehículo (en la acera o el andén, y no en la calzada o la vía donde se detiene el vehículo). Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para los lugares que son paradas ( location_type=0 ), estaciones (location_type=1 ) o entradas/salidas (location_type=2 ).- Opcional para ubicaciones que son nodos genéricos ( location_type=3 ) o zonas de embarque (location_type=4 ). |
zone_id |
ID | Condicionalmente exigida | Identifica la zona tarifaria de una parada. Si este registro representa una estación o una entrada de estación, el zone_id se ignora.Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si se proporciona información sobre las tarifas mediante fare_rules.txt - Facultativo en caso contrario. |
stop_url |
URL | Opcional | URL de una página web sobre la ubicación. Debe ser diferente de la agency.agency_url y los routes.route_url valores del campo. |
location_type |
Enum | Opcional | Tipo de ubicación. Las opciones válidas son:0 (o en blanco) - Parada (o Plataforma). Lugar donde los pasajeros suben o bajan de un vehículo de tránsito. Se denomina andén cuando se define dentro de una parent_station .1 - Estación. Una estructura física o área que contiene uno o más andenes.2 - Entrada/Salida. Lugar donde los pasajeros pueden entrar o salir de una estación desde la calle. Si una entrada/salida pertenece a varias estaciones, puede estar vinculada por vías a ambas, pero el proveedor de datos debe elegir una de ellas como padre.3 - Nodo genérico. Una ubicación dentro de una estación, que no coincide con ninguna otra location_type que puede utilizarse para enlazar vías definidas en pathways.txt.4 - Zona de embarque. Lugar específico de un andén en el que los pasajeros pueden subir o bajar de los vehículos. |
parent_station |
Referencia de ID extranjero stops.stop_id |
Condicionalmente exigida | Define la jerarquía entre las diferentes ubicaciones definidas en stops.txt . Contiene el ID de la ubicación padre, como se indica a continuación:- Parada/plataforma ( location_type=0 ): el parent_station contiene el ID de una estación.- Estación ( location_type=1 ): este campo debe estar vacío.- Entrada/salida ( location_type=2 ) o nodo genérico (location_type=3 ): el parent_station el campo contiene el ID de una estación (location_type=1 )- Zona de embarque ( location_type=4 ): el campo parent_station contiene el ID de un andén.Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para las ubicaciones que son entradas ( location_type=2 ), nodos genéricos (location_type=3 ) o zonas de embarque (location_type=4 ).- Opcional para paradas/andenes ( location_type=0 ).- Prohibido para estaciones ( location_type=1 ). |
stop_timezone |
Zona horaria | Opcional | Zona horaria de la ubicación. Si la ubicación tiene una estación padre, hereda la zona horaria de la estación padre en lugar de aplicar la suya propia. Las estaciones y las paradas sin padre con stop_timezone heredan la zona horaria especificada por agency.agency_timezone . Si stop_timezone se proporcionan valores, las horas en stop_times.txt deben introducirse como la hora desde la medianoche en la zona horaria especificada por agency.agency_timezone . Esto asegura que los valores de tiempo en un viaje siempre se incrementan en el curso de un viaje, independientemente de las zonas horarias que el viaje cruza. |
wheelchair_boarding |
Enum | Opcional | Indica si es posible el embarque en silla de ruedas desde la ubicación. Las opciones válidas son: Para las paradas sin padres: 0 o vacía - No hay información de accesibilidad para la parada.1 - En esta parada puede subir a algunos vehículos un usuario en silla de ruedas.2 - En esta parada no se puede subir con silla de ruedas. Para las paradas de niños: 0 o vacío - La parada heredará su wheelchair_boarding comportamiento de la estación padre, si se especifica en el padre.1 - Existe algún camino accesible desde el exterior de la estación hasta la parada/plataforma específica.2 - No existe ningún camino accesible desde el exterior de la estación hasta la parada/plataforma específica.Para las entradas/salidas de la estación: 0 o vacío - La entrada de la estación heredará su wheelchair_boarding comportamiento de la estación principal, si se especifica para la principal.1 - La entrada de la estación es accesible para sillas de ruedas.2 - No hay camino accesible desde la entrada de la estación hasta las paradas/los andenes. |
level_id |
Referencia de ID extranjero levels.level_id |
Opcional | Nivel de la ubicación. El mismo nivel puede ser utilizado por varias estaciones no vinculadas. |
platform_code |
Texto | Opcional | Identificador de andén para una parada de andén (una parada perteneciente a una estación). Debe ser sólo el identificador del andén (por ejemplo, "G" o "3"). No deben incluirse palabras como "andén" o "vía" (o su equivalente language del canal). Esto permite a los consumidores de feeds internacionalizar y localizar más fácilmente el identificador de la plataforma en otros idiomas. |
routes.txt¶
Archivo: Obligatorio
Clave primaria (route_id
)
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
route_id |
ID único | Exigida | Identifica una ruta. |
agency_id |
Referencia de ID extranjero agency.agency_id |
Condicionalmente exigida | Agencia para la ruta especificada. Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si se definen varias agencias en agency.txt. - Opcional en caso contrario. |
route_short_name |
Texto | Condicionalmente exigida | Nombre corto de una ruta. Suele ser un identificador corto y abstracto (por ejemplo, "32", "100X", "Verde") que los usuarios utilizan para identificar una ruta. Ambos route_short_name y route_long_name puede definirse.Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si routes.route_long_name está vacío.- Opcional en caso contrario. |
route_long_name |
Texto | Condicionalmente exigida | Nombre completo de una ruta. Este nombre suele ser más descriptivo que el route_short_name y suele incluir el destino o la parada de la ruta. Ambos route_short_name y route_long_name puede definirse.Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si routes.route_short_name está vacío.- Opcional en caso contrario. |
route_desc |
Texto | Opcional | Descripción de una ruta que proporciona información útil y de calidad. No debe ser un duplicado de route_short_name o route_long_name . Ejemplo: Los trenes "A" circulan entre Inwood-207 St, en Manhattan, y Far Rockaway-Mott Avenue, en Queens, en todo momento. Además, desde las 6 de la mañana hasta la medianoche, hay trenes "A" adicionales que circulan entre Inwood-207 St y Lefferts Boulevard (los trenes suelen alternar entre Lefferts Blvd y Far Rockaway). |
route_type |
Enum | Exigida | Indica el tipo de transporte utilizado en una ruta. Las opciones válidas son: 0 - Tranvía, Tranvía, Tren ligero. Cualquier sistema de tren ligero o a nivel de calle dentro de un área metropolitana.1 - Metro. Cualquier sistema ferroviario subterráneo dentro de un área metropolitana.2 - Ferrocarril. Utilizado para viajes interurbanos o de larga distancia.3 - Autobús. Utilizado para las rutas de autobús de corta y larga distancia.4 - Ferry. Utilizado para el servicio de barcos de corta y larga distancia.5 - Tranvía. Utilizado para los vagones a nivel de calle en los que el cable pasa por debajo del vehículo (por ejemplo, el teleférico de San Francisco).6 - Ascensor aéreo, teleférico suspendido (por ejemplo, telecabina, tranvía aéreo). Transporte por cable en el que las cabinas, vagones, góndolas o sillas abiertas están suspendidas por medio de uno o varios cables.7 - Funicular. Cualquier sistema ferroviario diseñado para pendientes pronunciadas.11 - Trolebús. Autobuses eléctricos que se alimentan de cables aéreos mediante postes.12 - Monorraíl. Ferrocarril en el que la vía está formada por un solo raíl o una viga. |
route_url |
URL | Opcional | URL de una página web sobre la ruta en cuestión. Debe ser diferente del agency.agency_url valor. |
route_color |
Color | Opcional | Designación del color de la ruta que coincide con el material de cara al público. Por defecto es blanco (FFFFFF ) cuando se omite o se deja vacío. La diferencia de color entre route_color y route_text_color debería proporcionar suficiente contraste cuando se ve en una pantalla en blanco y negro. |
route_text_color |
Color | Opcional | El color legible que debe utilizarse para el texto dibujado sobre un fondo de route_color . Por defecto es el negro (000000 ) cuando se omite o se deja vacío. La diferencia de color entre route_color y route_text_color debe proporcionar suficiente contraste cuando se ve en una pantalla en blanco y negro. |
route_sort_order |
Número entero no negativo | Opcional | Ordena las rutas de forma ideal para su presentación a los clientes. Las rutas con valores route_sort_order deben mostrarse primero. |
continuous_pickup |
Enum | Opcional | Indica que el usuario puede subir al vehículo de tránsito en cualquier punto del recorrido del vehículo, tal como se describe en shapes.txt en cada viaje de la ruta. Las opciones válidas son: 0 - Recogida con parada continua. 1 o vacío - No hay recogida de parada continua. 2 - Debe llamar a la agencia para organizar la recogida con parada continua. 3 - Debe coordinarse con el conductor para organizar la recogida con paradas continuas. Valores para routes.continuous_pickup pueden anularse definiendo los valores en stop_times.continuous_pickup para específicos stop_time s a lo largo de la ruta. |
continuous_drop_off |
Enum | Opcional | Indica que el viajero puede bajarse del vehículo de tránsito en cualquier punto del recorrido del vehículo, tal como se describe en shapes.txt , en cada viaje de la ruta. Las opciones válidas son: 0 - Bajada con parada continua. 1 o vacío - No hay bajada de parada continua. 2 - Debe llamar a la agencia para concertar la bajada con parada continua. 3 - Debe coordinarse con el conductor para organizar la bajada con parada continua. Los valores para routes.continuous_drop_off pueden ser anulados definiendo los valores en stop_times.continuous_drop_off para específico stop_time s a lo largo de la ruta. |
network_id |
ID | Opcional | Identifica un grupo de rutas. Varias filas en routes.txt pueden tener la misma network_id . |
trips.txt¶
Archivo: Obligatorio
Clave primaria (trip_id
)
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
route_id |
Referencia de ID extranjero routes.route_id |
Exigida | Identifica una ruta. |
service_id |
Referencia de ID extranjero calendar.service_id o calendar_dates.service_id |
Exigida | Identifica un conjunto de fechas en las que el servicio está disponible para una o más rutas. |
trip_id |
ID único | Exigida | Identifica un viaje. |
trip_headsign |
Texto | Opcional | Texto que aparece en la señalización que identifica el destino del viaje para los usuarios. Debe utilizarse para distinguir entre diferentes patrones de servicio en la misma ruta. Si la señal de cabeza cambia durante un viaje, los valores de trip_headsign pueden anularse definiendo valores en stop_times.stop_headsign para específicos stop_time s a lo largo del viaje. |
trip_short_name |
Texto | Opcional | Texto de cara al público utilizado para identificar el viaje a los usuarios, por ejemplo, para identificar los números de los trenes de cercanías. Si los usuarios no suelen confiar en los nombres de los viajes, trip_short_name debería estar vacío. A trip_short_name si se proporciona, debe identificar de forma exclusiva un viaje dentro de un día de servicio; no debe utilizarse para nombres de destinos o designaciones limitadas/expresas. |
direction_id |
Enum | Opcional | Indica la dirección del viaje. Este campo no debe utilizarse en el enrutamiento; proporciona una forma de separar los viajes por dirección al publicar las tablas de horarios. Las opciones válidas son: 0 - Viaje en una dirección (por ejemplo, viaje de ida).1 - Viaje en la dirección opuesta (por ejemplo, viaje de entrada).Ejemplo: El trip_headsign y direction_id Los campos pueden utilizarse juntos para asignar un nombre a los viajes en cada dirección para un conjunto de viajes. A trips.txt archivo podría contener estos registros para su uso en tablas horarias: trip_id,...,trip_headsign,direction_id 1234,...,Airport,0 1505,...,Downtown,1 |
block_id |
ID | Opcional | Identifica el bloque al que pertenece el viaje. Un bloque consiste en un único viaje o en muchos viajes secuenciales realizados con el mismo vehículo, definidos por días de servicio compartidos y block_id . A block_id puede tener viajes con diferentes días de servicio, formando bloques distintos. Véase el ejemplo siguiente |
shape_id |
Referencia al ID extranjero shapes.shape_id |
Condicionalmente exigida | Identifica una forma geoespacial que describe la trayectoria del vehículo para un viaje. Se requiere condicionalmente: - Exigida si el viaje tiene un comportamiento continuo de recogida o entrega definido en routes.txt o en stop_times.txt . - Opcional en caso contrario. |
wheelchair_accessible |
Enum | Opcional | Indica la accesibilidad de la silla de ruedas. Las opciones válidas son0 o vacío - No hay información de accesibilidad para el viaje.1 - El vehículo que se utiliza en este viaje concreto puede acomodar al menos a un pasajero en silla de ruedas.2 - No se puede acomodar a ningún pasajero en silla de ruedas en este viaje. |
bikes_allowed |
Enum | Opcional | Indica si se permiten las bicicletas. Las opciones válidas son0 o vacío - No hay información sobre bicicletas para el viaje.1 - El vehículo que se está utilizando en este viaje en particular puede acomodar al menos una bicicleta.2 - No se permiten bicicletas en este viaje. |
Ejemplo: Bloques y día de servicio¶
El ejemplo siguiente es válido, con bloques distintos cada día de la semana.
route_id | trip_id | service_id | block_id | (hora de la primera parada) | (hora de la última parada) |
---|---|---|---|---|---|
rojo | trip_1 | lunes-tues-miércoles-viernes-sábado-domingo | red_loop | 22:00:00 | 22:55:00 |
rojo | viaje_2 | viernes-sábado-domingo | red_loop | 23:00:00 | 23:55:00 |
rojo | viaje_3 | fray-sábado | red_loop | 24:00:00 | 24:55:00 |
rojo | viaje_4 | lun-vie-jueves | red_loop | 20:00:00 | 20:50:00 |
rojo | viaje_5 | lunes-miércoles-jueves | red_loop | 21:00:00 | 21:50:00 |
Notas sobre la tabla anterior:
- El viernes hasta el sábado por la mañana, por ejemplo, un solo vehículo realiza el
viaje_1
, elviaje_2
yel viaje_3
(desde las 22:00 hasta las 12:55). Obsérvese que el último viaje se realiza el sábado, de 12:00 a 12:55, pero forma parte del "día de servicio" del viernes porque los horarios son de 24:00 a 24:55. - El lunes, martes, miércoles y jueves, un solo vehículo realiza el
viaje_1
, elviaje_4
y elviaje_5
en un bloque de 20:00 a 22:55.
stop_times.txt¶
Archivo: Obligatorio
Clave primaria (trip_id
, stop_sequence
)
Nombre del campo | Tipo | Presencia | Descripción | |
---|---|---|---|---|
trip_id |
Referencia al ID extranjero trips.trip_id |
Exigida | Identifica un viaje. | |
arrival_time |
Hora | Condicionalmente exigida | Hora de llegada a la parada (definida por stop_times.stop_id ) para un viaje específico (definido por stop_times.trip_id ). Si no hay horas separadas para la llegada y la salida en una parada, arrival_time y departure_time debe ser la misma. Para las horas que se produzcan después de medianoche en el día de servicio, introduzca la hora como un valor mayor que 24:00:00 en HH:MM:SS hora local para el día en que comienza el Schedule del viaje. Si las horas exactas de llegada y salida ( timepoint=1 o vacío) no están disponibles, las horas de llegada y salida estimadas o interpoladas (timepoint=0 ).Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para la primera y la última parada de un viaje (definidas por stop_times.stop_sequence ). - Exigida para timepoint=1 .- Opcional en caso contrario. |
|
departure_time |
Hora | Condicionalmente exigida | Hora de salida de la parada (definida por stop_times.stop_id ) para un viaje específico (definido por stop_times.trip_id ).Si no hay horas separadas para la llegada y la salida en una parada, arrival_time y departure_time debe ser la misma. Para las horas que se produzcan después de la medianoche del día de servicio, introduzca la hora como un valor superior a las 24:00:00 en HH:MM:SS hora local para el día en que comienza el programa Schedule viaje. Si las horas exactas de llegada y salida ( timepoint=1 o vacías) no están disponibles, deben indicarse las horas de llegada y salida estimadas o interpoladas (timepoint=0 ).Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida para timepoint=1 .- Opcional en caso contrario. |
|
stop_id |
Referencia al ID extranjero stops.stop_id |
Exigida | Identifica la parada a la que se presta servicio. Todas las paradas atendidas durante un viaje deben tener un registro en stop_times.txt. Las ubicaciones referenciadas deben ser paradas/plataformas, es decir, su stops.location_type debe ser 0 o vacíos. Una parada puede ser atendida varias veces en el mismo viaje, y varios viajes y rutas pueden atender la misma parada. |
|
stop_sequence |
Número entero no negativo | Exigida | Orden de las paradas para un viaje concreto. Los valores deben aumentar a lo largo del viaje, pero no es necesario que sean consecutivos. Ejemplo: La primera ubicación del viaje podría tener un stop_sequence =1 el segundo lugar del trayecto puede tener un stop_sequence =23 , la tercera ubicación podría tener un stop_sequence =40 y así sucesivamente. |
|
stop_headsign |
Texto | Opcional | Texto que aparece en la señalización que identifica el destino del viaje para los pasajeros. Este campo sustituye al predeterminado trips.trip_headsign cuando la señal de cabeza cambia entre paradas. Si la señal de cabeza se muestra durante todo el viaje, trips.trip_headsign debe utilizarse en su lugar. A stop_headsign valor especificado para una stop_time no se aplica a los siguientes stop_time s en el mismo viaje. Si desea anular los valores de trip_headsign para múltiples stop_time s en el mismo viaje, el valor stop_headsign valor debe repetirse en cada stop_time fila. |
|
pickup_type |
Enum | Opcional | Indica el método de recogida. Las opciones válidas son:0 o vacío - Recogida programada regularmente. 1 - No hay recogida disponible.2 - Debe llamar a la agencia para organizar la recogida.3 - Debe coordinarse con el conductor para organizar la recogida. |
|
drop_off_type |
Enum | Opcional | Indica el método de entrega. Las opciones válidas son:0 o vacío - Entrega programada regularmente.1 - No hay entrega disponible.2 - Debe llamar a la agencia para organizar la entrega.3 - Debe coordinarse con el conductor para organizar la entrega. |
|
continuous_pickup |
Enum | Opcional | Indica que el usuario puede subir al vehículo en cualquier punto del recorrido descrito por shapes.txt Desde este punto stop_time al siguiente stop_time en el viaje stop_sequence . Las opciones válidas son: 0 - Recogida con parada continua. 1 o vacío - No hay recogida con parada continua. 2 - Debe llamar a la agencia para organizar la recogida con parada continua. 3 - Debe coordinarse con el conductor para organizar la recogida con parada continua. Si este campo se rellena, anula cualquier comportamiento de recogida continua definido en routes.txt . Si este campo está vacío, el stop_time hereda cualquier comportamiento de recogida continua definido en routes.txt . |
|
continuous_drop_off |
Enum | Opcional | Indica que el pasajero puede bajarse del vehículo de tránsito en cualquier punto a lo largo de la ruta del vehículo como se describe en shapes.txt de este stop_time al siguiente stop_time en el viaje stop_sequence . Las opciones válidas son: : 0 - Bajada con parada continua. 1 o vacío - No hay bajada con parada continua. 2 - Debe llamar por teléfono a la agencia para organizar la bajada con parada continua. 3 - Debe coordinarse con el conductor para organizar la entrega con paradas continuas. Si este campo está poblado, anula cualquier comportamiento de bajada continua definido en routes.txt . Si este campo está vacío, el stop_time hereda cualquier comportamiento de bajada continua definido en routes.txt . |
|
shape_dist_traveled |
Flotador no negativo | Opcional | Distancia real recorrida a lo largo de la forma asociada, desde la primera parada hasta la parada especificada en este registro. Este campo especifica qué parte de la figura se dibuja entre dos paradas cualesquiera durante un viaje. Debe estar en las mismas unidades utilizadas en shapes.txt. Los valores utilizados para shape_dist_traveled deben aumentar junto con stop_sequence ; no deben utilizarse para mostrar el recorrido inverso a lo largo de una ruta.Ejemplo: Si un autobús recorre una distancia de 5,25 kilómetros desde el inicio de la forma hasta la parada, shape_dist_traveled =5.25 . |
|
timepoint |
Enum | Opcional | Indica si las horas de llegada y salida de una parada son estrictamente respetadas por el vehículo o si, por el contrario, son tiempos aproximados y/o interpolados. Este campo permite al productor de GTFS proporcionar tiempos de parada interpolados, indicando al mismo tiempo que los tiempos son aproximados. Las opciones válidas son:0 - Los tiempos se consideran aproximados.1 o vacía - Los tiempos se consideran exactos. |
calendar.txt¶
Archivo: Condicionalmente requerido
Clave primaria (service_id
)
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
service_id |
ID único | Exigida | Identifica un conjunto de fechas en las que el servicio está disponible para una o más rutas. Cada valor de service_id valor debe ser único en un calendar.txt archivo. |
monday |
Enum | Exigida | Indica si el servicio funciona todos los lunes en el intervalo de fechas especificado por los campos start_date y end_date campos. Tenga en cuenta que las excepciones para fechas concretas pueden aparecer en calendar_dates.txt. Las opciones válidas son:1 - El servicio está disponible para todos los lunes del intervalo de fechas.0 - El servicio no está disponible para los lunes del intervalo de fechas. |
tuesday |
Enum | Exigida | Funciona de la misma manera que monday excepto que se aplica a los martes |
wednesday |
Enum | Exigida | Funciona de la misma manera que monday excepto se aplica a los miércoles |
thursday |
Enum | Exigida | Funciona de la misma manera que monday excepto se aplica a los jueves |
friday |
Enum | Exigida | Funciones de la misma manera que monday excepto se aplica a los viernes |
saturday |
Enum | Exigida | Funciones de la misma manera que monday excepto se aplica a los sábados |
sunday |
Enum | Exigida | Funciones de la misma manera que monday excepto se aplica a los domingos. |
start_date |
Fecha | Exigida | Día de inicio del servicio para el intervalo de servicio. |
end_date |
Fecha | Exigida | Día de fin de servicio para el intervalo de servicio. Este día de servicio se incluye en el intervalo. |
calendar_dates.txt¶
Archivo: Condicionalmente requerido
Clave primaria (service_id
, date
)
La tabla calendar_dates.txt activa o desactiva explícitamente el servicio por fecha. Puede utilizarse de dos maneras.
- Recomendado: Utilice calendar_dates.txt junto con calendar.txt para definir excepciones a los patrones de servicio por defecto definidos en calendar.txt. Si el servicio es generalmente regular, con algunos cambios en fechas explícitas (por ejemplo, para acomodar servicios de eventos especiales, o un Schedule escolar), este es un buen enfoque. En este caso
calendar_dates.service_id
es un ID externo que hace referencia acalendar.service_id
. - Alternativa: Omitir calendar.txt, y especificar cada fecha de servicio en calendar_dates.txt. Esto permite una considerable variación del servicio y se adapta a los servicios sin horarios semanales normales. En este caso
service_id
es un ID.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
service_id |
Referencia al ID extranjero calendar.service_id o ID |
Exigida | Identifica un conjunto de fechas en las que se produce una excepción de servicio para una o varias rutas. Cada par (service_id , date ) sólo puede aparecer una vez en calendar_dates.txt si se utiliza calendar.txt y calendar_dates.txt en conjunto. Si un service_id valor aparece en ambos calendar.txt y calendar_dates.txtla información en calendar_dates.txt modifica la información de servicio especificada en calendar.txt. |
date |
Fecha | Exigida | Fecha en la que se produce la excepción del servicio. |
exception_type |
Enum | Exigida | Indica si el servicio está disponible en la fecha especificada en el campo de fecha. Las opciones válidas son:1 - Se ha añadido el servicio para la fecha especificada.2 - Se ha eliminado el servicio para la fecha especificada.Ejemplo: Supongamos que una ruta tiene un conjunto de viajes disponibles los días festivos y otro conjunto de viajes disponibles el resto de días. Un service_id podría corresponder al Schedule de servicio regular y otro service_id podría corresponder al horario Schedule vacaciones. Para un día festivo concreto, el calendar_dates.txt podría utilizarse para añadir el día festivo al horario de vacaciones service_id y para eliminar el día festivo del servicio regular service_id Schedule. |
fare_attributes.txt¶
Fichero: Opcional
Clave primaria (fare_id
)
Versiones
Hay dos opciones de modelización para describir las tarifas. GTFS V1 es la opción heredada para describir la información mínima de las tarifas. GTFS V2 es un método actualizado que permite una descripción más detallada de la estructura tarifaria de una agencia. Se permite la presencia de ambos métodos en un conjunto de datos, pero un consumidor de datos sólo debe utilizar uno de ellos para un determinado conjunto de datos. Se recomienda que GTFS-Fares V2 tenga prioridad sobre GTFS V1.
Los archivos asociados a GTFS V1 son
- fare_attributes.txt
- fare_rules.txt
Los archivos asociados a GTFS V2 son:
- fare_media.txt
-fare_products.txt
- fare_leg_rules.txt
- fare_transfer_rules.txt
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
fare_id |
ID único | Exigida | Identifica una clase de tarifa. |
price |
Flotador no negativo | Exigida | Precio de la tarifa, en la unidad especificada por currency_type . |
currency_type |
Código de moneda | Exigida | Moneda utilizada para pagar la tarifa. |
payment_method |
Enum | Exigida | Indica cuándo debe pagarse la tarifa. Las opciones válidas son:0 - La tarifa se paga a bordo.1 - La tarifa debe pagarse antes del embarque. |
transfers |
Enum | Exigida | Indica el número de transbordos permitidos en esta tarifa. Las opciones válidas son:0 - No se permiten transbordos en esta tarifa.1 - El pasajero puede hacer un transbordo.2 - Los pasajeros pueden hacer dos transbordos.Vacío - Se permiten transbordos ilimitados. |
agency_id |
Referencia al ID extranjero agency.agency_id |
Condicionalmente exigida | Identifica la agencia correspondiente a una tarifa. Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si se definen varias agencias en agency.txt .- Opcional en caso contrario. |
transfer_duration |
Entero no negativo | Opcional | Duración del tiempo en segundos antes de que caduque un transbordo. En transfers =0 este campo puede utilizarse para indicar el tiempo de validez de un billete o puede dejarse vacío. |
fare_rules.txt¶
Archivo: Opcional
Clave primaria (*
)
La tabla fare_rules.txt especifica cómo se aplican las tarifas de fare_attributes.txt a un itinerario. La mayoría de las estructuras de tarifas utilizan alguna combinación de las siguientes reglas:
- La tarifa depende de las estaciones de origen o destino.
- La tarifa depende de las zonas por las que pasa el itinerario.
- La tarifa depende de la ruta que utilice el itinerario.
Para ver ejemplos que demuestran cómo especificar una estructura de tarifas con fare_rules.txt y fare_attributes.txt, consulta FareExamples en la wiki del proyecto de código abierto GoogleTransitDataFeed.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
fare_id |
Referencia al ID extranjero fare_attributes.fare_id |
Exigida | Identifica una clase de tarifa. |
route_id |
Referencia al ID extranjero routes.route_id |
Opcional | Identifica un itinerario asociado a la clase de tarifa. Si existen varios itinerarios con los mismos atributos de tarifa, cree un registro en fare_rules.txt para cada ruta. Ejemplo: Si la clase de tarifa "b" es válida en la ruta "TSW" y "TSE", la fare_rules.txt El archivo contendría estos registros para la clase de tarifa: fare_id,route_id b,TSW b,TSE |
origin_id |
Referencia al ID extranjero stops.zone_id |
Opcional | Identifica una zona de origen. Si una clase de tarifa tiene varias zonas de origen, cree un registro en fare_rules.txt para cada origin_id .Ejemplo: Si la clase de tarifa "b" es válida para todos los viajes con origen en la zona "2" o en la zona "8", los campos fare_rules.txt El archivo contendría estos registros para la clase de tarifa: fare_id,...,origin_id b,...,2 b,...,8 |
destination_id |
Referencia al ID extranjero stops.zone_id |
Opcional | Identifica una zona de destino. Si una clase de tarifa tiene varias zonas de destino, cree un registro en fare_rules.txt para cada uno destination_id .Ejemplo: El origin_id y destination_id podrían utilizarse juntos para especificar que la clase de tarifa "b" es válida para los viajes entre las zonas 3 y 4, y para los viajes entre las zonas 3 y 5, el campo fare_rules.txt El archivo contendría estos registros para la clase de tarifa: fare_id,...,origin_id,destination_id b,...,3,4 b,...,3,5 |
contains_id |
Referencia al ID extranjero stops.zone_id |
Opcional | Identifica las zonas en las que entrará un pasajero cuando utilice una clase de tarifa determinada. Se utiliza en algunos sistemas para calcular la clase de tarifa correcta. Ejemplo: Si la clase de tarifa "c" está asociada a todos los viajes de la ruta GRT que pasan por las zonas 5, 6 y 7, las fare_rules.txt contendría estos registros: fare_id,route_id,...,contains_id c,GRT,...,5 c,GRT,...,6 c,GRT,...,7 Porque todos contains_id zonas deben coincidir para que se aplique la tarifa, un itinerario que pase por las zonas 5 y 6 pero no por la zona 7 no tendría la clase de tarifa "c". Para más detalles, consulte https://code.google.com/p/googletransitdatafeed/wiki/FareExamples en la wiki del proyecto GoogleTransitDataFeed. |
fare_media.txt¶
Archivo: Opcional
Clave primaria (fare_media_id
)
Describir los diferentes soportes de tarifas que pueden emplearse para utilizar productos tarifarios. Los medios tarifarios son soportes físicos o virtuales utilizados para la representación y/o validación de un producto tarifario.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
fare_media_id |
ID único | Exigida | Identifica un soporte tarifario. |
fare_media_name |
Texto | Opcional | Name of the fare media. For fare media which are transit cards ( fare_media_type =2 ) or mobile apps (fare_media_type =4 ), the fare_media_name should be included and should match the rider-facing name used by the organizations delivering them. |
fare_media_type |
Enum | Exigida | El tipo de medio de tarifa. Las opciones válidas son:0 - Ninguno. Se utiliza cuando no hay ningún medio de pago implicado en la compra o validación de un producto tarifario, como el pago en efectivo a un conductor o revisor sin billete físico.2 - Tarjeta de transporte física que ha almacenado billetes, pases o valor monetario.3 - cEMV (Europay, Mastercard y Visa sin contacto) como contenedor de tokens de bucle abierto para la emisión de billetes basada en cuentas.4 - Aplicación móvil que ha almacenado tarjetas de transporte virtuales, billetes, pases o valor monetario. |
fare_products.txt¶
Archivo: Opcional
Clave primaria (fare_product_id
, fare_media_id
)
Describir los diferentes tipos de billetes o tarifas que pueden ser adquiridos por los usuarios.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
fare_product_id |
ID | Exigida | Identifica un producto tarifario. |
fare_product_name |
Texto | Opcional | El nombre del producto tarifario que se muestra a los pasajeros. |
fare_media_id |
Referencia al ID extranjero fare_media.fare_media_id |
Opcional | Identifica un medio de tarifa que puede emplearse para utilizar el producto de tarifa durante el viaje. Cuando fare_media_id es vacío, se considera que el medio de tarifa es desconocido. |
amount |
Importe de la moneda | Exigida | El coste del producto tarifario. Puede ser negativo para representar los descuentos en los transbordos. Puede ser cero para representar un producto tarifario que es gratuito. |
currency |
Código de moneda | Exigida | La moneda del coste del producto tarifario. |
fare_leg_rules.txt¶
Archivo: Opcional
Clave primaria (network_id, from_area_id, to_area_id, fare_product_id
)
Reglas tarifarias para tramos individuales de viaje.
Las tarifas en fare_leg_rules.txt
deben consultarse filtrando todos los registros del archivo para encontrar las reglas que coincidan con el tramo que va a recorrer el pasajero.
Para procesar el coste de un tramo:
-
El archivo
fare_leg_rules.txt
debe ser filtrado por los campos que definen las características del viaje, estos campos son:fare_leg_rules.network_id
fare_leg_rules.from_area_id
fare_leg_rules.to_area_id
-
Si el tramo coincide exactamente con un registro de
fare_leg_rules.txt
basado en las características del viaje, ese registro debe procesarse para determinar el coste del tramo. - Si no se encuentran coincidencias exactas, se deben comprobar las entradas vacías en fare_leg_rules.
network_id
,fare_leg_rules.from_area_id
yfare_leg_rules.to_area_id
para procesar el coste del tramo: - Una entrada vacía en fare_leg_rules.
network_id
corresponde a todas las redes definidas enroutes.txt
excluyendo las que aparecen enfare_leg_rules.network_id
- Una entrada vacía en fare_leg_rules.
from_area_id
corresponde a todas las áreas definidas enareas.area_id
excluyendo las que aparecen enfare_leg_rules.from_area_id
-
Una entrada vacía en fare_leg_rules.
to_area_id
corresponde a todas las áreas definidas en areas.area_id
excluyendo las listadas enfare_leg_rules.to_area_id
. -
Si el tramo no coincide con ninguna de las reglas descritas anteriormente, la tarifa es desconocida.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
leg_group_id |
ID | Opcional | Identifica un grupo de entradas en fare_leg_rules.txt. Se utiliza para describir las reglas de transferencia de tarifas entre fare_transfer_rules.from_leg_group_id y fare_transfer_rules.to_leg_group_id .Varias entradas en fare_leg_rules.txt pueden pertenecer a la misma fare_leg_rules.leg_group_id .La misma entrada en fare_leg_rules.txt (sin incluir fare_leg_rules.leg_group_id ) no debe pertenecer a múltiples fare_leg_rules.leg_group_id . |
network_id |
Referencia al ID extranjero routes.network_id |
Opcional | Identifica una red de rutas que se aplica para la regla de tramo de tarifa. Si no hay coincidencias fare_leg_rules.network_id valores a la network_id filtrado, vacío fare_leg_rules.network_id se ajustará por defecto.Una entrada vacía en fare_leg_rules.network_id corresponde a todas las redes definidas en routes.txt excluyendo las enumeradas en fare_leg_rules.network_id |
from_area_id |
Referencia al ID extranjero areas.area_id |
Opcional | Identifica una zona de salida. Si no hay coincidencias fare_leg_rules.from_area_id valores a la area_id filtrado, vacío fare_leg_rules.from_area_id se ajustará por defecto. Una entrada vacía en fare_leg_rules.from_area_id corresponde a todas las áreas definidas en areas.area_id excluyendo las enumeradas en fare_leg_rules.from_area_id |
to_area_id |
Referencia al ID extranjero areas.area_id |
Opcional | Identifica un área de llegada. Si no hay coincidencias fare_leg_rules.to_area_id valores a los area_id filtrado, vacío fare_leg_rules.to_area_id se ajustará por defecto.Una entrada vacía en fare_leg_rules.to_area_id corresponde a todas las zonas definidas en areas.area_id excluyendo las enumeradas en fare_leg_rules.to_area_id |
fare_product_id |
Referencia al ID extranjero fare_products.fare_product_id |
Exigida | El producto de tarifa requerido para viajar en el tramo. |
fare_transfer_rules.txt¶
Archivo: Opcional
Clave primaria (from_leg_group_id, to_leg_group_id, fare_product_id, transfer_count, duration_limit
)
Las reglas tarifarias para los transbordos entre tramos de viaje se definen en fare_leg_rules.txt
.
Para procesar el coste de un viaje de varios tramos:
-
Los grupos de tramos de tarifa aplicables definidos en
fare_leg_rules.txt
deben determinarse para todos los tramos individuales de viaje basados en el viaje del ciclista. -
El archivo
fare_transfer_rules.txt
debe ser filtrado por los campos que definen las características del traslado, estos campos sonfare_transfer_rules.from_leg_group_id
fare_transfer_rules.to_leg_group_id
-
Si la transferencia coincide exactamente con un registro en
fare_transfer_rules.txt
basado en las características de la transferencia, entonces ese registro debe ser procesado para determinar el coste de la transferencia. -
Si no se encuentran coincidencias exactas, se deben comprobar las entradas vacías en
from_leg_group_id
o ento_leg_group_id
para procesar el coste de la transferencia:- Una entrada vacía en
fare_transfer_rules.from_leg_group_id
corresponde a todos los grupos de tramos definidos enfare_leg_rules.leg_group_id
excluyendo los listados enfare_transfer_rules.from_leg_group_id
- Una entrada vacía en
fare_transfer_rules.to_leg_group_id
corresponde a todos los grupos de tramos definidos enfare_leg_rules.leg_group_id
excluyendo los enumerados enfare_transfer_rules.to_leg_group_id
- Una entrada vacía en
-
Si la transferencia no coincide con ninguna de las reglas descritas anteriormente, no hay acuerdo de transferencia y los tramos se consideran separados.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
from_leg_group_id |
Referencia al ID extranjero fare_leg_rules.leg_group_id |
Opcional | Identifica un grupo de reglas de tramos de tarifas anteriores a la transferencia. Si no hay coincidencias fare_transfer_rules.from_leg_group_id valores a los leg_group_id filtrado, vacío fare_transfer_rules.from_leg_group_id se ajustará por defecto. Una entrada vacía en fare_transfer_rules.from_leg_group_id corresponde a todos los grupos de tramos definidos en fare_leg_rules.leg_group_id excluyendo las enumeradas en fare_transfer_rules.from_leg_group_id |
to_leg_group_id |
Referencia al ID extranjero fare_leg_rules.leg_group_id |
Opcional | Identifica un grupo de reglas de tramos de tarifa post-transferencia. Si no hay valores coincidentes fare_transfer_rules.to_leg_group_id valores a los leg_group_id filtrado, vacío fare_transfer_rules.to_leg_group_id se ajustará por defecto.Una entrada vacía en fare_transfer_rules.to_leg_group_id corresponde a todos los grupos de tramos definidos en fare_leg_rules.leg_group_id excluyendo las enumeradas en fare_transfer_rules.to_leg_group_id |
transfer_count |
Número entero no nulo | Condicionalmente prohibido | Define el número de transbordos consecutivos a los que se puede aplicar la regla de transferencia. Las opciones válidas son: -1 - No hay límite.1 o más - Define cuántos transbordos puede abarcar la regla de transferencia.Si un subviaje coincide con varios registros con diferentes transfer_count s, entonces la regla con el mínimo transfer_count que sea mayor o igual que el recuento de transferencias actual del subtrayecto se seleccionará.Condicionalmente prohibido: - Prohibido si fare_transfer_rules.from_leg_group_id no es igual a fare_transfer_rules.to_leg_group_id .- Exigida si fare_transfer_rules.from_leg_group_id es igual a fare_transfer_rules.to_leg_group_id . |
duration_limit |
Entero positivo | Opcional | Define el límite de duración de la transferencia. Debe expresarse en incrementos enteros de segundos. Si no hay límite de duración, fare_transfer_rules.duration_limit debe estar vacío. |
duration_limit_type |
Enum | Condicionalmente exigida | Define el inicio y el final relativos de fare_transfer_rules.duration_limit .Las opciones válidas son: : 0 - Entre la validación de la tarifa de salida del tramo actual y la validación de la tarifa de llegada del tramo siguiente.1 - Entre la validación de la tarifa de salida del tramo actual y la validación de la tarifa de salida del tramo siguiente.2 - Entre la validación de la tarifa de llegada del tramo actual y la validación de la tarifa de salida del tramo siguiente.3 - Entre la validación de la tarifa de llegada del tramo actual y la validación de la tarifa de llegada del tramo siguiente.Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Exigida si fare_transfer_rules.duration_limit se define.- Prohibido si fare_transfer_rules.duration_limit está vacío. |
fare_transfer_type |
Enum | Exigida | Indica el método de procesamiento de costes de la transferencia entre tramos en un viaje: Las opciones válidas son: : 0 - Desde el tramo fare_leg_rules.fare_product_id más fare_transfer_rules.fare_product_id A + AB1 - Desde el tramo fare_leg_rules.fare_product_id más fare_transfer_rules.fare_product_id más a-leg fare_leg_rules.fare_product_id ; A + AB + B.2 - fare_transfer_rules.fare_product_id ; AB. Interacciones de procesamiento de costes entre múltiples transferencias en un viaje: |
Procesamiento A > B | Procesamiento B > C | ||
A + AB | S + BC | ||
A + AB +B | S + BC + C | ||
AB | S + BC |
fare_product_id
fare_products.fare_product_id
areas.txt¶
Archivo: Opcional
Clave primaria (area_id
)
Define los identificadores de área.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
area_id |
ID único | Exigida | Identifica un área. Debe ser único en areas.txt. |
area_name |
Texto | Opcional | El nombre del área tal y como se muestra al piloto. |
stop_areas.txt¶
Fichero: Opcional
Clave primaria (*
)
Asigna las paradas de stops.txt txt a las zonas.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
area_id |
Referencia al ID extranjero areas.area_id |
Exigida | Identifica un área a la que pertenecen uno o varios stop_id s pertenecen. La misma stop_id puede definirse en muchos area_id s. |
stop_id |
Referencia al ID extranjero stops.stop_id |
Exigida | Identifica una parada. Si una estación (es decir, una parada con stops.location_type=1 ) se define en este campo, se supone que todos sus andenes (es decir, todas las paradas con stops.location_type=0 que tienen esta estación definida como stops.parent_station ) forman parte de la misma zona. Este comportamiento puede anularse asignando andenes a otras áreas. |
shapes.txt¶
Fichero: Opcional
Clave primaria (shape_id
, shape_pt_sequence
)
Las formas describen el camino que recorre un vehículo a lo largo de una alineación de ruta, y se definen en el archivo shapes.txt. Los Shapes están asociados a los Viajes, y consisten en una secuencia de puntos por los que el vehículo pasa en orden. No es necesario que las formas intercepten exactamente la ubicación de las paradas, pero todas las paradas de un viaje deben estar a una distancia pequeña de la forma para ese viaje, es decir, cerca de los segmentos de línea recta que conectan los puntos de la forma.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
shape_id |
ID | Exigida | Identifica una forma. |
shape_pt_lat |
Latitud | Exigida | Latitud de un punto de la forma. Cada registro en shapes.txt representa un punto shape utilizado para definir la forma. |
shape_pt_lon |
Longitud | Exigida | Longitud de un punto shape. |
shape_pt_sequence |
Entero no negativo | Exigida | Secuencia en la que los puntos shape se conectan para formar la forma. Los valores deben aumentar a lo largo del recorrido pero no es necesario que sean consecutivos. Ejemplo: Si la forma "A_shp" tiene tres puntos en su definición, el archivo shapes.txt El archivo puede contener estos registros 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 |
Float no negativo | Opcional | Distancia real recorrida a lo largo de la forma desde el primer punto shape hasta el punto especificado en este registro. Utilizado por los planificadores de viajes para mostrar la parte correcta de la forma en un mapa. Los valores deben aumentar junto con shape_pt_sequence Los valores deben aumentar con el tiempo; no deben utilizarse para mostrar el recorrido inverso a lo largo de una ruta. Las unidades de distancia deben ser coherentes con las utilizadas en stop_times.txt.Ejemplo: Si un autobús recorre los tres puntos definidos anteriormente para A_shp, los valores adicionales shape_dist_traveled (mostrados aquí en kilómetros) tendrían el siguiente aspecto: 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¶
Fichero: Opcional
Clave primaria (trip_id
, start_time
)
frequencies.txt representa los viajes que funcionan con intervalos regulares (tiempo entre viajes). Este archivo puede utilizarse para representar dos tipos de servicio diferentes.
- Servicio basado en la frecuencia
(exact_times=0
) en el que el servicio no sigue un Schedule fijo a lo largo del día. En su lugar, los operadores intentan mantener estrictamente los intervalos predeterminados para los viajes. - Una representación comprimida del servicio Schedule en el horario (
exact_times=1
) que tiene exactamente el mismo recorrido para los viajes durante un período de tiempo específico. En el servicio Schedule en horarios, los operadores tratan de cumplir estrictamente con un Schedule.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
trip_id |
Referencia al ID extranjero trips.trip_id |
Exigida | Identifica un viaje al que se aplica el intervalo de servicio especificado. |
start_time |
Hora | Exigida | Hora a la que el primer vehículo sale de la primera parada del viaje con la frecuencia especificada. |
end_time |
Hora | Exigida | Hora a la que el servicio cambia a una vía diferente (o cesa) en la primera parada del viaje. |
headway_secs |
Entero positivo | Exigida | Tiempo, en segundos, entre las salidas de la misma parada (paso por la cabecera) del trayecto, durante el intervalo de tiempo especificado por start_time y end_time . Pueden definirse múltiples intervalos para el mismo viaje, pero no deben superponerse. Los nuevos intervalos pueden comenzar en el momento exacto en que finaliza el intervalo anterior. |
exact_times |
Enum | Opcional | Indica el tipo de servicio de un viaje. Consulte la descripción del archivo para obtener más información. Las opciones válidas son0 o vacío - Viajes basados en la frecuencia.1 - Viajes Schedule en el horario con la misma frecuencia durante todo el día. En este caso el end_time valor debe ser mayor que el último viaje deseado start_time pero menor que el último viaje deseado start_time + headway_secs . |
transfers.txt¶
Fichero: Opcional
Clave primaria (from_stop_id
, to_stop_id
, from_trip_id
, to_trip_id
, from_route_id
, to_route_id
)
Al calcular un itinerario, las aplicaciones GTFS interpolan los transbordos basándose en el tiempo permitido y la proximidad de las paradas. transfers.txt especifica reglas adicionales y anulaciones para los transbordos seleccionados.
Los campos from_trip_id
, to_trip_id
, from_route_id
y to_route_id
permiten un mayor grado de especificidad para las reglas de transferencia. Junto con from_stop_id
y to_stop_id
, el orden de especificidad es el siguiente:
- Ambos
trip_id
definidos:from_trip_id
yto_trip_id
. - Un conjunto de
trip_id
yroute_id
definido:from_trip_id
yto_route_id
) ofrom_route_id
yto_trip_id
). - Un
trip_id
definido:from_trip_id
oto_trip_id
. - Ambos
route_id
definidos:from_route_id
yto_route_id
. - Un
route_id
definido:from_route_id
oto_route_id
. - Sólo se definen
from_stop_id
yto_stop_id
: no se establecen campos relacionados con la ruta o el viaje.
Para un par ordenado de viaje de llegada y viaje de salida, se elige el traslado con la mayor especificidad que se aplica entre estos dos viajes. Para cualquier par de viajes, no debe haber dos transbordos con igual especificidad máxima que puedan aplicarse.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
from_stop_id |
Referencia al ID extranjero stops.stop_id |
Exigida | Identifica una parada o estación donde comienza una conexión entre rutas. Si este campo se refiere a una estación, la regla de transbordo se aplica a todas sus paradas secundarias. |
to_stop_id |
Referencia al ID extranjero stops.stop_id |
Exigida | Identifica una parada o estación donde termina una conexión entre rutas. Si este campo se refiere a una estación, la regla de transferencia se aplica a todas las paradas hijas. |
from_route_id |
Referencia al ID extranjero routes.route_id |
Opcional | Identifica una ruta donde comienza una conexión. Si from_route_id Si se define la regla de transferencia, ésta se aplicará al viaje que llegue a la ruta para la que se ha definido la regla de transferencia. from_stop_id .Si ambos from_trip_id y from_route_id están definidos, el trip_id debe pertenecer al route_id y from_trip_id tendrá prioridad. |
to_route_id |
Referencia al ID extranjero routes.route_id |
Opcional | Identifica una ruta donde termina una conexión. Si to_route_id se define, la transferencia se aplicará al viaje de salida en la ruta para el to_stop_id .Si ambos to_trip_id y to_route_id están definidos, los trip_id debe pertenecer al route_id , y to_trip_id tendrá prioridad. |
from_trip_id |
Referencia al ID extranjero trips.trip_id |
Opcional | Identifica un viaje donde comienza una conexión entre rutas. Si from_trip_id Si se define una conexión, la transferencia se aplicará al viaje de llegada para la ruta en cuestión. from_stop_id .Si ambos from_trip_id y from_route_id están definidos, los trip_id debe pertenecer al route_id , y from_trip_id tendrá prioridad. |
to_trip_id |
Referencia al ID extranjero trips.trip_id |
Opcional | Identifica un viaje en el que termina una conexión entre rutas. Si to_trip_id Si se define, la transferencia se aplicará al viaje de salida para la ruta en cuestión. to_stop_id .Si ambos to_trip_id y to_route_id están definidos, el trip_id debe pertenecer al route_id y to_trip_id tendrá prioridad. |
transfer_type |
Enum | Exigida | Indica el tipo de conexión para el par (from_stop_id , to_stop_id ) especificado. Las opciones válidas son:0 o vacío - Punto de transferencia recomendado entre rutas.1 - Punto de transferencia temporizado entre dos rutas. Se espera que el vehículo que sale espere al que llega y que deje tiempo suficiente para que el ciclista haga el transbordo entre rutas.2 - El transbordo requiere un tiempo mínimo entre la llegada y la salida para garantizar la conexión. El tiempo necesario para el transbordo se especifica en min_transfer_time .3 - No es posible realizar transbordos entre rutas en el lugar. |
min_transfer_time |
Entero no negativo | Opcional | Cantidad de tiempo, en segundos, que debe estar disponible para permitir un transbordo entre rutas en las paradas especificadas. El min_transfer_time debe ser suficiente para permitir que un ciclista típico se mueva entre las dos paradas, incluyendo el tiempo de amortiguación para permitir la variación de Schedule en cada ruta. |
pathways.txt¶
Fichero: Opcional
Clave primaria (pathway_id
)
Los archivos pathways.txt y levels.txt utilizan una representación gráfica para describir las estaciones de metro o tren, con nodos que representan ubicaciones y aristas que representan recorridos.
Para desplazarse desde la entrada/salida de la estación (un nodo representado como una ubicación con location_type=2
) hasta un andén (un nodo representado como una ubicación con location_type=0
o vacía), el viajero se moverá a través de pasillos, puertas de acceso, escaleras y otros bordes representados como caminos. Los nodos genéricos (nodos representados con location_type=3
) pueden utilizarse para conectar vías en toda la estación.
Los recorridos deben definirse exhaustivamente en una estación. Si se definen caminos, se asume que todos los caminos de la estación están representados. Por lo tanto, se aplican las siguientes directrices:
- No hay ubicaciones colgantes: Si cualquier ubicación dentro de una estación tiene una vía de acceso, entonces todas las ubicaciones dentro de esa estación deben tener vías de acceso, excepto los andenes que tienen zonas de embarque
(location_type=4
, véase la directriz más abajo). - No hay vías de acceso para un andén con zonas de embarque: Un andén
(location_type=0
o vacío) que tiene zonas de embarque (location_type=4
) se trata como un objeto padre, no como un punto. En estos casos, el andén no debe tener asignadas vías de acceso. Todas las vías deben ser asignadas para cada una de las zonas de embarque del andén. - No hay andenes bloqueados: Cada andén
(location_type=0
o vacío) o zona de embarque(location_type=4
) debe estar conectado con al menos una entrada/salida(location_type=2
) a través de alguna cadena de vías. Son raras las estaciones que no permiten una vía de acceso al exterior de la estación desde un andén determinado.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
pathway_id |
ID único | Exigida | Identifica una vía de acceso. Utilizado por los sistemas como identificador interno del registro. Debe ser único en el conjunto de datos. Diferentes vías pueden tener los mismos valores para from_stop_id y to_stop_id .Ejemplo: Cuando dos escaleras mecánicas están una al lado de la otra en direcciones opuestas, o cuando un conjunto de escaleras y un ascensor van del mismo lugar al mismo lugar, diferentes pathway_id pueden tener la misma from_stop_id y to_stop_id valores. |
from_stop_id |
Referencia al ID extranjero stops.stop_id |
Exigida | Lugar en el que comienza el recorrido. Debe contener un stop_id que identifique una plataforma (location_type=0 o vacío), entrada/salida (location_type=2 ), nodo genérico (location_type=3 ) o zona de embarque (location_type=4 ).Valores para stop_id que identifican las estaciones (location_type=1 ) están prohibidos. |
to_stop_id |
Referenciación del ID extranjero stops.stop_id |
Exigida | Ubicación en la que termina el trayecto. Debe contener un stop_id que identifique un andén (location_type=0 o vacío), entrada/salida (location_type=2 ), nodo genérico (location_type=3 ) o zona de embarque (location_type=4 ).Valores para stop_id que identifican estaciones (location_type=1 ) están prohibidos. |
pathway_mode |
Enum | Exigida | Tipo de vía entre el par especificado (from_stop_id , to_stop_id ) especificado. Las opciones válidas son: 1 - Pasillo. 2 - Escalera. 3 - Acera móvil/viajero. 4 - Escalera mecánica. 5 - Ascensor. 6 - Puerta de acceso (o puerta de pago): Camino que cruza a una zona de la estación en la que se requiere una prueba de pago para cruzar. Las puertas tarifarias pueden separar las zonas de pago de la estación de las que no lo son, o separar entre sí diferentes zonas de pago dentro de la misma estación. Esta información puede utilizarse para evitar dirigir a los pasajeros a través de las estaciones utilizando atajos que requerirían que los pasajeros hicieran pagos innecesarios, como por ejemplo dirigir a un pasajero para que camine a través de una plataforma de metro para llegar a una vía de autobús. 7 - Puerta de salida: Una vía que sale de una zona de pago hacia una zona de no pago en la que no se requiere una prueba de pago para cruzar. |
is_bidirectional |
Enum | Exigida | Indica la dirección en la que se puede tomar la vía:0 - Vía unidireccional que sólo puede utilizarse desde from_stop_id a to_stop_id .1 - Vía bidireccional que puede utilizarse en ambas direcciones.Las puertas de salida ( pathway_mode=7 ) no deben ser bidireccionales. |
length |
Float no negativo | Opcional | Longitud horizontal en metros del recorrido desde la ubicación de origen (definida en from_stop_id ) a la ubicación de destino (definida en to_stop_id ).Este campo se recomienda para las pasarelas ( pathway_mode=1 ), puertas de acceso (pathway_mode=6 ) y puertas de salida (pathway_mode=7 ). |
traversal_time |
Entero positivo | Opcional | Tiempo medio en segundos necesario para recorrer el camino desde la ubicación de origen (definida en from_stop_id ) a la ubicación de destino (definida en to_stop_id ).Este campo se recomienda para las aceras móviles ( pathway_mode=3 ), escaleras mecánicas (pathway_mode=4 ) y ascensores (pathway_mode=5 ). |
stair_count |
Entero no nulo | Opcional | Número de escaleras del recorrido. Un valor positivo stair_count implica que el viajero sube desde from_stop_id a to_stop_id . Y un negativo stair_count implica que el ciclista baja desde from_stop_id a to_stop_id .Este campo se recomienda para las escaleras ( pathway_mode=2 ).Si sólo se puede proporcionar un recuento estimado de escaleras, se recomienda aproximar 15 escaleras para 1 piso. |
max_slope |
Float | Opcional | Relación máxima de la pendiente del camino. Las opciones válidas son0 o vacío - Sin pendiente.Float - Proporción de la pendiente del camino, positiva para el ascenso y negativa para el descenso.Este campo sólo debe utilizarse con las pasarelas ( pathway_mode=1 ) y aceras móviles (pathway_mode=3 ).Ejemplo: En EE.UU., 0,083 (también escrito 8,3%) es la relación de pendiente máxima para las sillas de ruedas de propulsión manual, lo que significa un aumento de 0,083m (es decir, 8,3cm) por cada 1m. |
min_width |
Flotador positivo | Opcional | Anchura mínima del camino en metros. Este campo se recomienda si la anchura mínima es inferior a 1 metro. |
signposted_as |
Texto | Opcional | Texto de cara al público de la señalización física que es visible para los ciclistas. Puede utilizarse para proporcionar indicaciones textuales a los ciclistas, como "siga las señales hasta '. El texto en singposted_as debe aparecer exactamente como está impreso en las señales.Si la señalización física es multilingüe, este campo puede rellenarse y traducirse siguiendo el ejemplo de stops.stop_name en la definición del campo de feed_info.feed_lang . |
reversed_signposted_as |
Texto | Opcional | Igual que signposted_as pero cuando se utiliza la vía del to_stop_id al from_stop_id . |
levels.txt¶
Fichero: Condicionalmente obligatorio
Clave primaria (level_id
)
Describe los niveles de una estación. Es útil junto con pathways.txt
, y es necesario para navegar por las vías con ascensores(pathway_mode=5
).
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
level_id |
ID único | Exigida | Identifica un nivel en una estación. |
level_index |
Float | Exigida | Índice numérico del nivel que indica su posición relativa. El nivel del suelo debe tener el índice 0 , indicándose los niveles por encima del suelo con índices positivos y los niveles por debajo del suelo con índices negativos. |
level_name |
Texto | Opcional | Nombre del nivel tal y como lo ve el conductor dentro del edificio o la estación. Ejemplo: Tome el ascensor hasta "Mezzanine" o "Platform" o "-1". |
translations.txt¶
Fichero: Opcional
Clave primaria (table_name
, field_name
, language
, record_id
, record_sub_id
, field_value
)
En las regiones que tienen varias lenguas oficiales, las agencias/operadores de transporte suelen tener nombres y páginas web language. Para prestar un mejor servicio a los usuarios de esas regiones, es útil que el conjunto de datos incluya estos valores language idioma.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
table_name |
Enum | Exigida | Define la tabla que contiene el campo a traducir. Los valores permitidos son: - agency - stops - routes - trips - stop_times - pathways - levels - feed_info - attributions Cualquier archivo añadido a GTFS tendrá un table_name valor equivalente al nombre del archivo, tal y como se ha indicado anteriormente (es decir, sin incluir la .txt extensión del archivo). |
field_name |
Texto | Exigida | Nombre del campo a traducir. Los campos de tipo Text pueden ser traducidos, los campos con tipo URL , Email y Phone number también pueden ser "traducidos" para proporcionar recursos en el language correcto. Los campos con otros tipos no deben ser traducidos. |
language |
código delanguage | Exigida | language de la traducción. Si el language es el mismo que en feed_info.feed_lang el valor original del campo se asumirá como el valor por defecto a utilizar en los idiomas sin traducciones específicas (si default_lang no especifica lo contrario).Ejemplo: En Suiza, una ciudad de un cantón oficialmente bilingüe se llama oficialmente "Biel/Bienne", pero se llamaría simplemente "Bienne" en francés y "Biel" en alemán. |
translation |
Texto o URL o correo electrónico o número de teléfono | Exigida | Valor traducido. |
record_id |
ID extranjero | Condicionalmente exigida | Define el registro que corresponde al campo a traducir. El valor en record_id debe ser el primer o único campo de la clave primaria de una tabla, tal y como se define en el atributo de clave primaria de cada tabla y a continuación:- agency_id para agency.txt - stop_id para stops.txt ;- route_id para routes.txt ;- trip_id para trips.txt ;- trip_id para stop_times.txt ;- pathway_id para pathways.txt ;- level_id para levels.txt ;- attribution_id para attribution.txt .Los campos de las tablas no definidas anteriormente no deben traducirse. Sin embargo, los productores a veces añaden campos adicionales que están fuera de la especificación oficial y estos campos no oficiales pueden ser traducidos. A continuación se recomienda utilizar record_id para esas tablas:- service_id para calendar.txt ;- service_id para calendar_dates.txt ;- fare_id para fare_attributes.txt ;- fare_id para fare_rules.txt ;- shape_id para shapes.txt ;- trip_id para frequencies.txt ;- from_stop_id para transfers.txt .Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Prohibido si table_name es feed_info .- Prohibido si field_value está definido.- Exigida si field_value está vacío. |
record_sub_id |
ID extranjero | Condicionalmente exigida | Ayuda al registro que contiene el campo a traducir cuando la tabla no tiene un ID único. Por lo tanto, el valor en record_sub_id es el ID secundario de la tabla, como se define en la tabla siguiente:- Ninguno para agency.txt ;- Ninguno para stops.txt ;- Ninguno para routes.txt ;- Ninguno para trips.txt ;- stop_sequence para stop_times.txt ;- Ninguno para pathways.txt ;- Ninguno para levels.txt ;- Ninguno para attributions.txt .Los campos de las tablas no definidas anteriormente no deben traducirse. Sin embargo, los productores a veces añaden campos adicionales que están fuera de la especificación oficial y estos campos no oficiales pueden ser traducidos. A continuación se recomienda el uso de record_sub_id para esas tablas:- Ninguno para calendar.txt ;- date para calendar_dates.txt ;- Ninguno para fare_attributes.txt ;- route_id para fare_rules.txt ;- Ninguno para shapes.txt ;- start_time para frequencies.txt ;- to_stop_id para transfers.txt .Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido: Condicionalmente exigido - Prohibido si table_name es feed_info .- Prohibido si field_value está definido.- Exigida si table_name=stop_times y record_id está definido. |
field_value |
Texto o URL o correo electrónico o número de teléfono | Condicionalmente obligatorio | En lugar de definir qué registro debe traducirse mediante record_id y record_sub_id este campo puede utilizarse para definir el valor que debe traducirse. Cuando se utiliza, la traducción se aplicará cuando los campos identificados por table_name y field_name contenga exactamente el mismo valor definido en field_value.El campo debe tener exactamente el valor definido en field_value . Si sólo un subconjunto del valor coincide con field_value la traducción no se aplicará.Si dos reglas de traducción coinciden con el mismo registro (una con field_value y la otra con record_id ), la regla con record_id tiene prioridad.Condicionalmente Exigida: - Prohibido si table_name es feed_info .- Prohibido si record_id se define.- Exigida si record_id está vacío. |
feed_info.txt¶
Archivo: Opcional(Obligatorio si se proporciona translations.txt
)
Clave primaria (ninguna)
El archivo contiene información sobre el propio conjunto de datos, más que sobre los servicios que describe el conjunto de datos. En algunos casos, el editor del conjunto de datos es una entidad diferente a cualquiera de las agencias.
Si se utilizan ambos métodos de referenciaciónrecord_id
record_id, record_sub_id
) y field_value
para traducir el mismo valor en 2 filas diferentes, la traducción proporcionada conrecord_id
, record_sub_id
) tiene preferencia.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
feed_publisher_name |
Texto | Exigida | Nombre completo de la organización que publica el conjunto de datos. Puede ser el mismo que una de las agency.agency_name valores. |
feed_publisher_url |
URL | Exigida | URL del sitio web de la organización que publica el conjunto de datos. Puede ser el mismo que uno de los agency.agency_url valores. |
feed_lang |
código delanguage | Exigida | language por defecto utilizado para el texto de este conjunto de datos. Este ajuste ayuda a los consumidores de GTFS a elegir las reglas de mayúsculas y otros ajustes language para el conjunto de datos. El archivo translations.txt puede utilizarse si el texto necesita ser traducido a otros idiomas distintos del predeterminado.El language por defecto puede ser multilingüe para conjuntos de datos con el texto original en varios idiomas. En estos casos, el campo feed_lang debe contener el código de language mul definido por la norma ISO 639-2, y debe proporcionarse una traducción para cada language utilizado en el conjunto de datos en translations.txt . Si todo el texto original del conjunto de datos está en la misma language, entonces mul no debe utilizarse.Ejemplo: Considere un conjunto de datos de un país multilingüe como Suiza, con el campo original stops.stop_name con nombres de paradas en diferentes idiomas. Cada nombre de parada se escribe según la language dominante en la ubicación geográfica de esa parada, por ejemplo Genève para la ciudad francófona de Ginebra, Zürich para la ciudad germanófona de Zúrich, y Biel/Bienne para la ciudad bilingüe de Biel/Bienne. El conjunto de datos feed_lang debe ser mul y las traducciones se proporcionarían en translations.txt en alemán Genf , Zürich y Biel ; en francés: Genève , Zurich y Bienne ; en italiano: Ginevra , Zurigo y Bienna ; y en inglés: Geneva , Zurich y Biel/Bienne . |
default_lang |
código delanguage | Opcional | Define el language que debe utilizarse cuando el consumidor de datos no conoce el language del piloto. A menudo será en (inglés). |
feed_start_date |
Fecha | Opcional | El conjunto de datos proporciona información completa y fiable sobre Schedule horario del servicio en el periodo comprendido entre el inicio del feed_start_date día hasta el final del feed_end_date día. Ambos días pueden dejarse vacíos si no están disponibles. El feed_end_date no debe preceder a la fecha feed_start_date fecha si se indican ambas. Se recomienda que los proveedores de conjuntos de datos den los datos Schedule fuera de este periodo para avisar de un posible servicio futuro, pero los consumidores de los conjuntos de datos deben tratarlos teniendo en cuenta su condición de no autorizados. Si feed_start_date o feed_end_date se extiende más allá de las fechas del calendario activo definidas en calendar.txt y calendar_dates.txtel conjunto de datos afirma explícitamente que no hay servicio para las fechas dentro del rango feed_start_date o feed_end_date pero que no están incluidas en las fechas del calendario activo. |
feed_end_date |
Fecha | Opcional | (véase más arriba) |
feed_version |
Texto | Opcional | Cadena que indica la versión actual de su conjunto de datos GTFS. Las aplicaciones GTFS GTFS pueden mostrar este valor para ayudar a los editores de conjuntos de datos a determinar si se ha incorporado el último conjunto de datos. |
feed_contact_email |
Correo electrónico | Opcional | Dirección de correo electrónico para la comunicación relativa al conjunto de datos GTFS y a las prácticas de publicación de datos. feed_contact_email es un contacto técnico para las aplicaciones GTFS consumen GTFS. Proporciona información de contacto del servicio de atención al cliente a través de agency.txt. |
feed_contact_url |
URL | Opcional | URL para la información de contacto, un formulario web, un servicio de asistencia u otras herramientas para la comunicación en relación con el conjunto de datos GTFS y las prácticas de publicación de datos. feed_contact_url es un contacto técnico para las aplicaciones GTFS consumen GTFS. Proporciona información de contacto del servicio de atención al cliente a través de agency.txt. |
attributions.txt¶
Fichero: Opcional
Clave primaria (attribution_id
)
Define las atribuciones aplicadas al conjunto de datos.
Nombre del campo | Tipo | Presencia | Descripción |
---|---|---|---|
attribution_id |
ID único | Opcional | Identifica una atribución para el conjunto de datos o un subconjunto del mismo. Esto es útil sobre todo para las traducciones. |
agency_id |
Referenciación del ID extranjero agency.agency_id |
Opcional | Organismo al que se aplica la atribución. Si se define una agency_id , route_id , o trip_id atribución, las demás deben estar vacías. Si no se especifica ninguna, la atribución se aplicará a todo el conjunto de datos. |
route_id |
Referenciación del ID extranjero routes.route_id |
Opcional | Funciones de la misma manera que agency_id salvo que la atribución se aplique a una ruta. Se pueden aplicar varias atribuciones a la misma ruta. |
trip_id |
Referencia de ID extranjero trips.trip_id |
Opcional | Funciones de la misma manera que agency_id excepto que la atribución se aplique a un viaje. Se pueden aplicar varias atribuciones al mismo viaje. |
organization_name |
Texto | Exigida | Nombre de la organización a la que se atribuye el conjunto de datos. |
is_producer |
Enum | Opcional | El papel de la organización es productor. Las opciones válidas son:0 o vacía - La organización no tiene este rol.1 - La organización sí tiene este rol.Al menos uno de los campos is_producer , is_operator o is_authority debe estar establecido en 1 . |
is_operator |
Enum | Opcional | Funciones de la misma manera que is_producer salvo que el rol de la organización sea de operador. |
is_authority |
Enum | Opcional | Funciones de la misma manera que is_producer salvo que el rol de la organización sea de autoridad. |
attribution_url |
URL | Opcional | URL de la organización. |
attribution_email |
Correo electrónico | Opcional | Correo electrónico de la organización. |
attribution_phone |
Número de teléfono | Opcional | Número de teléfono de la organización. |