Uma forma por padrão
Verifica se cada `pattern_id` está associado a um único `shape_id`.
Propriedades da regra
| Propriedade | Valor |
|---|---|
| Rule ID | trips_one_shape_id_per_pattern_id_group |
| Ficheiro | trips.txt |
| Campos | pattern_id, shape_id |
| Tipo | Identificador |
| Severidade | Condicional |
Descrição dos campos:
pattern_id: identifica o padrão da viagem.shape_id: identifica a forma geográfica da viagem.
Mais informação em trips.txt.
Como funciona
Todas as viagens do mesmo padrão têm de usar uma única forma. Valores vazios não contam como associações. A regra não verifica se os identificadores existem noutros dados.
A regra avalia cada grupo de viagens com o mesmo pattern_id, seguindo os passos abaixo por ordem, até um deles dar o resultado.
| # | Pergunta | Se sim | Se não |
|---|---|---|---|
| 1 | O grupo está vazio? | ✅ Passa | Segue para o passo 2 |
| 2 | Existe mais de um shape_id não vazio no padrão? | Segue para o passo 3 | ✅ Passa |
| 3 | A configuração da regra desativa a validação? | ✅ Passa | ❌ Reporta o problema e regista as associações para não as repetir na regra inversa |
Como se relacionam
pattern_id e shape_id devem formar uma associação de um para um. O validador avalia primeiro o lado do padrão para evitar reportar duas vezes a mesma associação incorreta.
Exemplos
pattern_id | shape_id no grupo | Resultado | Porquê |
|---|---|---|---|
P1 | S1, S1 | ✅ Passa | Uma única forma |
P1 | S1, S2 | ❌ Problema | Duas formas distintas |
P1 | S1, vazio | ✅ Passa | O vazio é ignorado |
Como corrigir
| Problema | Causa provável | O que fazer |
|---|---|---|
| Várias formas no mesmo padrão | Viagens com o mesmo pattern_id usam vários shape_id | Corrigir shape_id ou pattern_id nas linhas afetadas de trips.txt |