Duração de validade do transbordo
Verifica se a duração indicada em fare_attributes.txt está expressa em segundos e não é negativa.
Propriedades da regra
| Propriedade | Valor |
|---|---|
| Rule ID | fare_attributes_transfer_duration_valid_seconds_range |
| Ficheiro | fare_attributes.txt |
| Campo | transfer_duration |
| Tipo | Número inteiro não negativo |
| Severidade | Opcional |
Descrição do campo: duração, em segundos, até um transbordo expirar. Quando transfers é 0, pode indicar a validade do título ou ficar vazio.
Mais informação em fare_attributes.txt.
Como funciona
Se existir uma duração, o valor tem de ser um número inteiro igual ou superior a zero. A configuração da regra pode exigir, recomendar ou proibir o campo. A regra não verifica o valor de transfers nem impõe um limite máximo.
A regra avalia cada linha do fare_attributes.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 é inferior a zero? | ❌ Reporta o problema: duração negativa | ✅ Passa |
O valor é interpretado como número inteiro antes desta regra. Os espaços não são removidos antes dessa interpretação.
Exemplos
| Valor | Resultado | Porquê |
|---|---|---|
3600 | ✅ Passa | Uma hora em segundos |
0 | ✅ Passa | Zero é aceite |
-1 | ❌ Problema | Valor negativo |
3600 quando o campo é proibido | ❌ Problema | Campo preenchido indevidamente |
Como corrigir
| Problema | Causa provável | O que fazer |
|---|---|---|
| Duração negativa | O valor é inferior a zero | Corrigir transfer_duration em fare_attributes.txt para zero ou um número positivo de segundos |
| Campo em falta | A configuração da regra exige ou recomenda este campo | Preencher transfer_duration em fare_attributes.txt com a duração em segundos |
| Campo preenchido quando não devia | A configuração da regra define que este campo não deve ter valor | Remover o valor de transfer_duration em fare_attributes.txt |