Sentido coerente com o padrão

Verifica se `direction_id` corresponde ao sentido indicado na segunda parte de `pattern_id`.

Propriedades da regra

PropriedadeValor
Rule IDtrips_direction_id_matches_feed_pattern_direction
Ficheirotrips.txt
Campospattern_id, direction_id
TipoIdentificador, Enumeração
SeveridadeObrigatório

Descrição dos campos:

  • pattern_id: identifica o padrão e deve ter três partes separadas por sublinhados.
  • direction_id: indica o sentido da viagem e tem de corresponder à segunda parte do padrão.

Mais informação em trips.txt.

Como funciona

O padrão tem de ter exatamente três partes. A segunda parte tem de ser 0 ou 1 e coincidir com direction_id. A regra não valida as restantes partes do padrão.

A regra avalia cada linha do trips.txt, seguindo os passos abaixo por ordem, até um deles dar o resultado.

#PerguntaSe simSe não
1pattern_id ou direction_id está vazio?Se a configuração da regra estiver ativa, reporta o problemaSegue para o passo 2
2A configuração da regra desativa a validação?✅ PassaSegue para o passo 3
3pattern_id tem exatamente três partes separadas por sublinhados?Segue para o passo 4❌ Reporta o problema: padrão inválido
4A segunda parte é o número 0 ou 1?Segue para o passo 5❌ Reporta o problema: sentido inválido no padrão
5A segunda parte coincide com direction_id?✅ Passa❌ Reporta o problema: sentidos diferentes

Como se relacionam

Em 1001_0_1, a segunda parte é 0. Por isso, a mesma linha tem de usar direction_id=0.

Exemplos

pattern_iddirection_idResultadoPorquê
1001_0_10✅ PassaSentidos iguais
Vazio0❌ ProblemaFalta o padrão
1001_00❌ ProblemaFaltam partes
1001_X_10❌ ProblemaSentido não numérico
1001_1_10❌ ProblemaSentidos diferentes

Como corrigir

ProblemaCausa provávelO que fazer
Campos em faltapattern_id ou direction_id está vazioPreencher pattern_id e direction_id em trips.txt
Padrão inválidopattern_id não tem três partesCorrigir pattern_id em trips.txt para três partes separadas por sublinhados
Sentido inválido no padrãoA segunda parte de pattern_id não é 0 nem 1Corrigir a segunda parte de pattern_id em trips.txt
Sentidos diferentesdirection_id difere da segunda parte de pattern_idAlinhar direction_id e pattern_id na linha de trips.txt

On this page