Sequência única por padrão

A regra compara as sequências validadas das viagens do mesmo padrão.

Propriedades da regra

PropriedadeValor
Rule IDtrips_pattern_single_signature
Ficheirostrips.txt, stop_times.txt
Campospattern_id, trip_id, stop_id, stop_sequence, shape_dist_traveled
TipoIdentificador, Identificador único, Identificador de referência, Número inteiro, Número decimal
SeveridadeObrigatório

Descrição dos campos:

  • pattern_id: identifica o padrão a que a viagem pertence.
  • trip_id: identifica uma viagem.
  • stop_id: identifica a paragem servida pela viagem.
  • stop_sequence: indica a ordem da paragem na viagem.
  • shape_dist_traveled: indica a distância percorrida ao longo do traçado até à paragem.

Mais informação em trips.txt, stop_times.txt.

Como funciona

A regra compara as sequências validadas das viagens do mesmo padrão. Não compara horários, destinos ou linhas.

A regra avalia cada grupo de viagens com o mesmo pattern_id, seguindo os passos abaixo por ordem, até um deles dar o resultado.

#PerguntaSe simSe não
1A configuração da regra ignora esta verificação ou marca-a como proibida?✅ PassaContinua
2O padrão está vazio?✅ PassaReúne as viagens do padrão
3As sequências validadas têm mais de uma assinatura distinta?Assinala sequências diferentes✅ Passa

A assinatura é um resumo calculado por trips_stop_sequence. Inclui cada identificador de paragem, distância e número de ordem, depois da ordenação numérica. A comparação normaliza números, mas preserva o texto dos identificadores. Uma distância vazia usa internamente o mesmo valor que -1. Uma viagem sem assinatura usa um valor vazio: todas sem assinatura passam, mas misturar uma assinatura disponível com outra ausente pode gerar uma mensagem. Configure as dependências para validar primeiro as sequências.

O resultado depende da configuração da regra: obrigatório reprova; recomendado passa com aviso; informativo passa com informação. O aviso antecipa uma futura exigência, mas só reprova quando a configuração passar a obrigatório. Os exemplos de reprovação pressupõem configuração obrigatória. As condições de execução e as dependências configuradas têm de estar cumpridas.

Como se relacionam

pattern_id reúne viagens. trip_id liga cada viagem às paragens em stop_times.txt, onde a sequência é calculada.

Exemplos

pattern_idtrip_idstop_idstop_sequenceshape_dist_traveledResultadoPorquê
P1T1, T2A,B / A,B1,2 / 1,20,1000 / 0,1000✅ PassaSequências iguais
P1T1, T2A,B / A,C1,2 / 1,20,1000 / 0,1000❌ ReprovaParagens diferentes
P1T1, T2A,B / A,B1,2 / 1,20,1000 / 0,1100❌ ReprovaDistâncias diferentes
P1T1, T2A,B / A,B1,2 / 1,30,1000 / 0,1000❌ ReprovaNúmeros de ordem diferentes

Como corrigir

ProblemaCausa provávelO que fazer
Sequências diferentesAs viagens do padrão têm assinaturas distintasAlinhar stop_id, stop_sequence e shape_dist_traveled em stop_times.txt ou corrigir pattern_id em trips.txt.

On this page