Skip to main content
O arquivo tem três blocos: nodes, edges e, opcionalmente, timeline. Esta página cobre os dois primeiros, que é onde está toda a modelagem. Antes de escrever, leia Conceitos da ontologia — sobretudo a diferença entre id_field e er_fields.

Um nó

Campo a campo


Normalizadores

A regra sai do nome do campo. cpf vira só dígitos porque se chama cpf.
O padrão text mantém a pontuação. Uma coluna chamada documento guardando CPF cai no padrão, e 111.222.333-44 vira uma entidade diferente de 11122233344.Declare a regra: normalizers: {documento: cpf}. O worker avisa no log quando detecta isso, mas é melhor declarar de cara.

Quando a coluna tem outro nome

Uma fonte estrangeira chama o CPF de ID_BRAZIL. Sem dizer nada, ela chaveia como id_brazil e nunca encontra quem chama de cpf:
A chave é o nome do identificador; o valor é a coluna desta fonte. O normalizador continua seguindo o nomeID_BRAZIL é tratado como CPF porque é um CPF.

Várias fontes, um label

É o caso normal: o mesmo conceito visto por vários sistemas. Repita o label, mude o source.
As listas não precisam ser iguais. Precisam formar uma cadeia: folha de pagamento e mailing podem não ter nada em comum, desde que o ERP conheça os dois. O que é recusado é o conjunto desconexo — duas ilhas sem caminho entre si não são uma entidade, são duas.

Uma aresta

Por vários campos

Quando metade das linhas tem um identificador e a outra metade tem outro:
Tenta na ordem; vence o primeiro que realmente resolve.

join_key em vez de match_field

Quando a coluna aponta direto para o id_field do outro lado:

Exemplo completo que roda

Uma pessoa vista por três sistemas, com o carro dela:
Resultado: o CPF em três formatos vira uma pessoa; a placa em duas caixas vira um carro, com o chassi do DETRAN e a cor da seguradora no mesmo nó.

Aplicando

reset: true apaga o grafo inteiro antes de aplicar. Não é o caminho normal.
Para o dado que já existe ficar achável pelos identificadores novos, é preciso um re-scan: POST /v1/memory/full-refresh. O procedimento completo, com os estados de versão e como reverter, está em Gerenciar a ontologia.

O que não vai aqui

Nada de visualização. Não existe display_field, e display_tier e display_color estão depreciados — aceitos e ignorados. O rótulo do nó é derivado (um campo de nome, senão o primeiro er_field, senão o id_field) e a cor sai do label. Duas pessoas lendo a mesma ontologia podem querer coisas diferentes na tela; isso não é do negócio. Nada de transformação. Limpar, converter, juntar colunas — camada clean, em dbt. Se você precisa de um campo composto, crie a coluna lá e declare ela aqui.

Campos pesquisáveis

Por que você não acha uma coisa, e o que declarar para achar.

Padrões e armadilhas

A regra de ouro, os erros que já aconteceram e o checklist antes do apply.