Principios rectores

Para preservar la visión original de la especificación GTFS, se establecieron una serie de principios rectores que se deben tener en cuenta al extender la especificación:

Crear y editar feeds debe ser un proceso fácil

Elegimos CSV como base de la especificación debido a que es fácil de ver y editar mediante programas de hojas de cálculo y editores de texto, lo cual es útil para las empresas más pequeñas. Además se puede generar fácilmente desde la mayoría de los lenguajes de programación y bases de datos, lo cual es bueno para los editores de feeds más grandes.

Analizar feeds debe ser un proceso sencillo

Los lectores de feeds deben ser capaces de extraer la información que buscan con el menor esfuerzo posible. Los cambios y las adiciones que se realicen en el feed deben ser lo más útiles posible a fin de reducir la cantidad de rutas de código que los lectores del feed deben implementar. (Sin embargo, se debe dar prioridad al proceso de facilitar la creación, ya que, en última instancia, habrá más editores que lectores de feeds).

Los cambios en la especificación deben ser compatibles con versiones anteriores

Al agregar funciones a la especificación, tenemos que evitar realizar cambios que invaliden los feeds existentes. No debemos generar más trabajo para los publicadores de feeds existentes hasta que sean ellos quienes deseen agregar funciones a sus feeds. Además, siempre que sea posible, los analizadores existentes deberían poder continuar leyendo las partes más antiguas de los feeds más nuevos.

No se recomiendan las funciones especulativas

Cada función nueva agrega complejidad a la creación y la lectura de los feeds. Por lo tanto, debemos ser cuidadosos de agregar solo funciones que sabemos que serán útiles. Idealmente, todas las propuestas se probarán mediante la generación de datos para un sistema de transporte público real que utilice la función nueva y a través de la escritura de software que permita leerlo y mostrarlo. Ten en cuenta que la especificación GTFS siempre admite extensiones del formato a través de la incorporación de columnas y archivos adicionales que los analizadores y validadores oficiales omiten. De este modo, las propuestas se pueden prototipar y probar fácilmente en los feeds existentes.