Princípios de orientação

Para preservar a visão original da GTFS, foram estabelecidos vários princípios de orientação que devem ser levados em consideração ao se estender a especificação:

Deve ser fácil criar e editar os feeds.

Escolhemos CSV como base para a especificação porque, com esse formato, fica fácil visualizar e editar com programas de planilhas e editores de texto, o que é útil para agências menores. Esse recurso também é simples de gerar na maioria das linguagens de programação e bancos de dados, o que é bom para editores de feeds maiores.

Deve ser fácil analisar os feeds.

Os leitores de feeds devem poder extrair as informações que estão procurando com o mínimo de trabalho possível. Alterações e adições ao feed devem ser as mais úteis possíveis para minimizar o número de caminhos de código que os leitores de feed precisam implementar. (No entanto, a prioridade deve ser facilitar o processo de criação, já que haverá mais editores do que leitores de feed.)

As alterações feitas na especificação precisam funcionar com as versões anteriores.

Quando recursos são adicionados à especificação, devemos evitar mudanças que invalidam os feeds. Não queremos dar mais trabalho para os editores até que eles queiram adicionar recursos aos seus feeds. Além disso, sempre que possível, queremos que os analisadores existentes continuem a ler as partes mais antigas dos feeds mais recentes.

Não é recomendável adicionar recursos especulativos.

Cada novo recurso aumenta a complexidade de criação e leitura de feeds. Portanto, queremos adicionar apenas recursos reconhecidamente úteis. O ideal é que todas as propostas tenham sido testadas pela geração de dados usando um sistema de transporte público real que use os novos recursos e pela criação de um software que leia e mostre esses recursos. A GTFS permite criar extensões imediatamente adicionando colunas e arquivos extras que são ignorados pelos analisadores e validadores oficiais. Dessa maneira, é fácil criar protótipos e testar as propostas em feeds atuais.