Los errores de validación son bloqueos críticos que hay que corregir para que Google pueda procesar el feed.
Intervalos de salida-llegada superiores a 24 horasError in English: Departure-arrival intervals over 24 hours
No se admiten intervalos de tiempo entre los horarios de stop
de 24 horas o superiores. Las herramientas de validación e importación de GTFS informan de los viajes con dichos intervalos como errores.
Nota: Muy pocos sistemas de transporte público tienen trayectos en los que pasan 24 horas entre dos paradas, por lo que estas situaciones no suelen darse.
Ejemplos
Ejemplo 1
Un trip
sale de la parada A a las 9:00. Durante las próximas 24 horas, el trip
podría realizar una serie de paradas hasta que llegue a su destino final en la parada B a las 10:00 del día siguiente. Los pasajeros no pueden salir del vehículo en las paradas intermedias porque dichas paradas tienen un valor drop_off_type
de 1
. Así, la duración total del viaje entre las paradas es de 25 horas y tiene como resultado un error.
- Medimos el intervalo máximo desde que los pasajeros empiezan el trayecto hasta donde se les permite bajar. Si este intervalo es superior a 24 horas, el trayecto se marca como un error.
Ejemplo 2
Un trip
sale de la parada A a las 9:00. Durante las próximas 24 horas, el trip
podría realizar una serie de paradas hasta que llegue a su destino final en la parada B a las 10:00 del día siguiente. En este trayecto no se especifican los horarios de llegada ni de salida de las paradas intermedias. Como no se especifican estas paradas, consideramos que el intervalo de tiempo del trayecto será de 25 horas.
Puedes corregirlo si especificas los horarios de llegada y de salida de las paradas intermedias.
Este error se produce cuando se suben archivos con el formato incorrecto. Las líneas deben terminar con un carácter de salto de línea "CRLF" o "LF".
La mayoría de los lectores de texto muestran líneas que terminan en CR correctamente, pero nuestros sistemas no las procesan correctamente.
Detectamos un identificador con valores duplicados cuando esos valores deben ser únicos en todo el conjunto de datos.
Por ejemplo, si el archivo trips.txt
tiene más de un trayecto con el mismo trip_id
, enviaremos ese error.
La falta de un valor de referencia es un error grave que impide que se pueda utilizar el feed.
Cuando los valores de una columna de un archivo hacen referencia a valores de una columna de otro archivo, cada valor de la primera columna debe coincidir con un valor de la segunda. Si un valor de la primera columna no coincide con uno de la segunda, el validador del feed devuelve el error "Falta un valor de referencia".
Ejemplo
El archivo fare_rules.txt
hace referencia a un route_id
que no existe en el archivo routes.txt
.
El archivo fare_rules.txt:
routes.txt
route_id, route_short_name, route_type
r1,S1,3
r2,S2,3
El archivo routes.txt:
trips.txt
route_id, trip_id, service_id
r3,t0,weekly
Este feed no se puede analizar ni validar. GTFS requiere que un valor de la columna route_id
del archivo trips.txt
coincida con un valor de la columna route_id
del archivo routes.txt
. En el ejemplo, el valor trips.txt route_id
de r3
no coincide con ninguno de los valores route_id
del archivo routes.txt
. No se pueden validar los archivos.
Hay muchas restricciones de valor-referencia como esta definidas en la especificación GTFS. Debes asegurarte de que los valores coinciden correctamente entre diferentes archivos de GTFS.
No podemos leer el archivo de feed que has proporcionado.
El error suele deberse a problemas de codificación o a si los archivos están agrupados en un directorio dentro del archivo zip. El archivo zip solo debe contener archivos individuales de un solo nivel, sin una estructura de directorios.
El idioma del feed no está especificado, lo que hace difícil presentarlo a los usuarios que hablan diferentes idiomas.
Para especificar un idioma: añade el campo agency_lang
en el archivo agency.txt
o un archivo feed_info.txt
.
En un feed GTFS, dos trayectos del archivo trips.txt
se pueden vincular con el campo block_id
. Puedes vincular dos o más trayectos atendidos por el mismo vehicle
, especialmente en los casos en los que un pasajero podría permanecer en el vehicle
entre los trayectos.
Importante: Debes corregir esta situación porque dos trayectos no pueden pertenecer al mismo block
si sus horarios de stop
se solapan.
Ejemplo
Hay dos trayectos vinculados con el mismo block_id.
Los dos trayectos en el mismo bloque:
trip_id,route_id,service_id,block_id
t0,r0,weekday,block0
t1,r0,weekday,block0
Los dos trayectos con los horarios de paradas:
trip_id,stop_id,stop_sequence,arrival_time,departure_time
t0,stop0,0,09:00:00,09:00:00
t0,stop1,1,09:30:00,09:30:00
t1,stop2,0,09:25:00,09:25:00
t1,stop3,1,10:00:00,10:00:00
Los trayectos no son válidos porque se encuentran en el mismo bloque, están activos en la misma fecha de servicio y tienen horarios de parada que se solapan.
El trip t0
empieza a las 9:00 y termina a las 9:30, y el trip t1
empieza a las 9:25 y termina a las 10:00. Esto significa que el vehículo tendría que terminar el trip t0
y, a continuación, volver atrás en el tiempo para empezar el trip t1
.
Debes ordenar los trayectos de tal manera que la última stop
de un trip
sea antes que el primer horario de stop
del otro trip
.
Para solucionar este problema: puedes hacer que el horario de la última stop
del trip t0
coincida con el horario de la primerastop
del trip t1
.
Si ves advertencias relativas a "Solapamiento de horarios de parada para trayectos en bloque", responde a las siguientes preguntas para intentar solucionar el problema:
- ¿Los horarios de las
stop
son correctos para los dos trayectos solapados? - ¿Los dos trayectos solapados están en el mismo
block
?- Los trayectos en el mismo
block
indican que el mismovehicle
de servicio atiende ambos trayectos.
- Los trayectos en el mismo
- ¿Los
service_ids
de los dos trayectos son correctos?- Si dos trayectos no están activos en la misma fecha de servicio, los trayectos pueden tener los mismos
block_id
y horarios destop
solapados. Para crear distintas fechas de servicio, debes introducir valores deservice_id
diferentes para cadatrip
y fechas de servicio diferentes en el archivocalendar.txt
.
- Si dos trayectos no están activos en la misma fecha de servicio, los trayectos pueden tener los mismos
Se muestra una advertencia cuando la validación detecta una stop
que está a más de 100 metros, pero a menos de 1000 metros de la station
principal. La stop
y la station
se enlazan mediante la columna parent_station
del archivo stops.txt
.
Normalmente, una stop
que forma parte del complejo de una station
no está tan lejos de la station
principal. Si se detecta que una stop
está a una gran distancia de la station
principal, es posible que haya un problema con el feed GTFS.
Para resolver las advertencias relativas a "Parada demasiado lejos de la estación principal", confirma que:
- La ubicación de la
stop
sea correcta. - La ubicación de la
station
principal sea correcta. - La
stop
pertenezca a una estación especificada.
Recuerda:
- Si la
stop
no forma parte del complejo de lastation
principal, debes actualizar el complejo de lastation
principal. - Si una entrada del metro está lejos del centro de la
station
correspondiente, puedes omitir la advertencia. - Si una
stop
está a más de 1000 metros de sustation
principal, se activa un error de validación.