Regularidade exata das partidas
Verifica se exact_times de frequencies.txt tem o valor 0 ou 1 e, quando configurado, se consta da lista permitida.
Propriedades da regra
| Propriedade | Valor |
|---|---|
| Rule ID | frequencies_exact_times_zero_when_timed_trip_uses_frequencies |
| Ficheiro | frequencies.txt |
| Campo | exact_times |
| Tipo | Enumeração |
| Severidade | Opcional |
Descrição do campo: indica se o intervalo entre veículos é exatamente regular. O valor 0, ou o campo vazio, representa viagens baseadas em frequências. O valor 1 representa viagens com partidas definidas por horário e com o mesmo intervalo ao longo do dia.
Mais informação em frequencies.txt.
Como funciona
Quando a regra passa, exact_times está vazio ou tem o valor 0 ou 1. Se existir uma lista de valores permitidos, o valor também consta dessa lista. Apesar do nome da regra, esta não verifica start_time, end_time, headway_secs nem os horários da viagem.
A regra avalia cada linha do frequencies.txt, seguindo os passos abaixo por ordem, até um deles dar o resultado.
| # | Pergunta | Se sim | Se não |
|---|---|---|---|
| 1 | O campo está vazio? | Verifica se a configuração da regra exige ou recomenda este campo. Se sim, reporta o problema. Se não, aceita | Segue para o passo 2 |
| 2 | A configuração da regra define que este campo não deve ser preenchido? | ❌ Reporta o problema | Segue para o passo 3 |
| 3 | O valor é 0 ou 1? | Segue para o passo 4 | ❌ Reporta o problema: valor inválido |
| 4 | A configuração da regra tem uma lista de valores permitidos? | Segue para o passo 5 | ✅ Passa |
| 5 | O valor está na lista, ou a lista aceita qualquer valor? | ✅ Passa | ❌ Reporta o problema: valor não permitido |
O valor não é arredondado. Um valor que não possa ser lido como número inteiro é reportado pela validação de leitura de frequencies.txt, antes desta regra.
Exemplos
| Valor | Resultado | Porquê |
|---|---|---|
1 | ✅ Passa | Representa uma viagem com partidas definidas por horário |
2 | ❌ Problema | O valor não é 0 nem 1 |
1 (lista permitida = 0) | ❌ Problema | O valor não consta da lista |
0 com o campo proibido | ❌ Problema | A configuração proíbe o campo |
Como corrigir
| Problema | Causa provável | O que fazer |
|---|---|---|
| Valor inválido | exact_times tem um valor diferente de 0 e 1 | Corrigir exact_times em frequencies.txt para 0 ou 1 |
| Valor não permitido | exact_times é válido, mas não consta da lista permitida | Usar em exact_times de frequencies.txt um valor permitido ou rever a configuração da regra |
| Campo em falta | A configuração da regra exige ou recomenda exact_times | Preencher exact_times em frequencies.txt com 0 ou 1 |
| Campo preenchido quando não devia | A configuração da regra proíbe exact_times | Remover o valor de exact_times em frequencies.txt ou rever a configuração da regra |