LAC · FundaçãoPerguntas em travessia, conhecimento em evolução.
Máquina de Conhecimento · Persistência estruturada

Modelo Lógico Relacional da Máquina de Conhecimento do LAC

Tradução do modelo conceitual de dados e metadados para tabelas, chaves, cardinalidades, restrições e estruturas associativas, preservando identidade conceitual, proveniência, versionamento, validação, publicação e governança.

Nível: lógicoParadigma: relacionalDialeto de referência: PostgreSQLVersão 1.0

1. Propósito

Este documento estabelece como as entidades do modelo conceitual serão representadas em um banco relacional. Ele não escolhe servidor, infraestrutura ou política de operação, mas define a estrutura lógica necessária para preservar o significado e as regras essenciais da Máquina de Conhecimento.

Modelo lógico relacional: representação das entidades e relações do domínio por meio de tabelas, atributos, chaves, restrições e associações, ainda independente de detalhes físicos como particionamento, espaço em disco e configuração de servidor.

2. Posição na cadeia de derivação

Teoria → Modelo da Máquina → Arquitetura → Modelo conceitual de dados → Dicionário → Perfil de aplicação → Modelo lógico relacional → Modelo físico

O modelo lógico deve ser derivável dos documentos anteriores e deve permanecer compatível com o JSON Schema do Objeto de Conhecimento.

3. Premissas de modelagem

Identidade em duas camadas

Cada entidade central possui chave técnica BIGINT e identificador público estável, como OC-MC-0001.

Objeto ≠ representação

O Objeto de Conhecimento existe conceitualmente; HTML, knowgrama, JSON e grafo ficam em representacao.

Histórico preservado

Versões, decisões, validações e publicações são registros próprios, não campos sobrescritos sem memória.

Vocabulários governados

Códigos de estado, tipo, papel, relação e ambiente devem ser controlados por vocabulários.

4. Convenções

PK · chave primáriaFK · chave estrangeiraNN · não nulo
  • _pk: chave técnica interna.
  • _id: identificador público persistente.
  • _codigo: termo de vocabulário controlado.
  • _em: data e hora com fuso.
  • _id em tabelas associativas é substituído por FKs técnicas.

5. Visão relacional integrada

Diagrama lógico relacional da Máquina de ConhecimentoObjeto de Conhecimento no centro, ligado a agente, jornada, domínio, representação, conceito, fonte, evidência, versão, validação, publicação, decisão e relação conceitual. objeto_conhecimentoPK objeto_conhecimento_pkUQ objeto_conhecimento_idFK responsavel_pkFK jornada_origem_pk agente / papel jornada dominio vocabulario conceito fonte / evidencia versao_objeto validacao publicacao representacao decisao relacao_conceitual

6. Grupos de tabelas

Núcleo

objeto_conhecimento, representacao, conceito e relacao_conceitual.

Proveniência

fonte, evidencia e suas associações.

Evolução

versao_objeto e versao_representacao.

Governança

jornada, decisao, validacao e publicacao.

Atores e contexto

agente, papel, dominio.

Metadados

vocabulario, termo_vocabulario e extensão governada.

7. Entidade central: objeto_conhecimento

ColunaTipoRegraFinalidade
objeto_conhecimento_pkBIGINTPK, identidadeChave técnica interna.
objeto_conhecimento_idVARCHAR(100)UQ, NN, padrão OC-…Identidade pública persistente.
titulo_preferidoVARCHAR(250)NNNome humano principal.
descricaoTEXTNN, mínimo 20 caracteresDelimitação conceitual.
tipo_objeto_codigoVARCHAR(60)NN, vocabulárioTeoria, modelo, página, knowgrama etc.
estado_codigoVARCHAR(40)NN, vocabulárioEstado no ciclo de vida.
responsavel_pkBIGINTFK, NNResponsabilidade conceitual.
jornada_origem_pkBIGINTFK, opcional/condicionalRastreabilidade de origem.
dominio_principal_pkBIGINTFKContexto principal.
objeto_sucessor_pkBIGINTFK autorreferenteContinuidade após substituição.
criado_em / atualizado_emTIMESTAMPTZNN; atualizado ≥ criadoHistórico temporal.

8. Cardinalidades principais

OrigemRelaçãoDestinoCardinalidadeImplementação
Agenteresponsabiliza-se porObjeto1:NFK em objeto_conhecimento.
Jornadaproduz/usaObjetoN:Njornada_objeto.
ObjetopossuiRepresentação1:NFK em representacao.
Objetoassocia-se aConceitoN:Nobjeto_conceito.
ObjetousaFonteN:Nobjeto_fonte.
FonteoriginaEvidência1:NFK em evidencia.
ObjetopossuiVersão1:NFK em versao_objeto.
Representaçãoé implantada porPublicação1:NFK em publicacao.
Objetorelaciona-se aObjetoN:N dirigidarelacao_conceitual.

9. Normalização

O núcleo foi estruturado predominantemente em terceira forma normal:

  • listas multivaloradas foram separadas em tabelas associativas;
  • títulos alternativos, idiomas e palavras-chave não ocupam colunas repetidas;
  • versões e publicações mantêm histórico próprio;
  • conceitos e fontes são reutilizáveis entre vários objetos;
  • atributos derivados, como quantidade de representações, são expostos por views.
Exceção controlada: JSONB é usado apenas para estruturas de apoio variáveis, como alternativas de decisão e não conformidades, sem substituir as entidades centrais do modelo.

10. Regras de integridade

  1. Identificadores públicos são únicos e não reutilizáveis.
  2. Todo objeto possui responsável e ao menos um idioma.
  3. Toda representação pertence a exatamente um objeto.
  4. Uma evidência pertence a uma fonte e sustenta um objeto.
  5. Somente uma versão conceitual pode estar marcada como vigente por objeto.
  6. Uma publicação deve apontar para representação existente.
  7. Estados de suspensão, substituição ou obsolescência exigem motivo.
  8. Acesso restrito ou confidencial exige informação de direitos ou restrição.

11. Versionamento e temporalidade

O modelo distingue:

Versão conceitual

Registra mudança de significado, estrutura, escopo ou regra do Objeto de Conhecimento.

Versão da representação

Registra mudança em HTML, imagem, JSON ou outro suporte sem presumir mudança conceitual.

Essa separação impede que uma correção visual seja confundida com uma nova versão do conhecimento.

12. Validação e publicação

Representação → versão da representação → validação → publicação → ambiente

A publicação é um evento governado. Ela registra a representação, a versão implantada, a validação precedente, o ambiente, a localização, o responsável e a possibilidade de reversão.

13. Vocabulários controlados

Os campos terminados em _codigo devem, na implementação plena, referenciar termos ativos de vocabulários registrados. Na versão inicial do DDL, alguns permanecem como VARCHAR para facilitar implantação incremental.

Decisão evolutiva: depois de estabilizados os vocabulários, podem ser introduzidas FKs compostas para termo_vocabulario ou tabelas de domínio específicas.

14. Metadados extensíveis

A tabela valor_metadado_extensivel oferece extensão governada para necessidades ainda não incorporadas ao núcleo. Ela não deve ser usada para evitar evolução adequada do modelo.

  • cada definição de metadado é registrada em definicao_metadado;
  • exatamente um tipo de valor pode ser preenchido;
  • o tipo de entidade e o identificador público permitem associação transversal;
  • campos amplamente usados devem migrar para colunas ou tabelas normais.

15. Mapeamento do JSON Schema

JSONRelacionalObservação
objeto_conhecimento_idobjeto_conhecimento.objeto_conhecimento_idCorrespondência direta.
titulo_alternativo[]objeto_titulo_alternativoUma linha por título.
idioma_codigo[]objeto_idiomaPermite marcar idioma principal.
palavra_chave[]objeto_palavra_chaveUma linha por termo.
conceito_id[]objeto_conceito + conceitoAssociação N:N.
fonte_id[]objeto_fonte + fonteAssociação com tipo de uso.
representacao_id[]representacaoFK para o objeto.
decisao_id[]decisao_objetoAssociação com tipo de impacto.

16. Visões de apoio

O DDL inclui:

  • vw_objeto_conhecimento_resumo: visão consolidada para consulta e painéis;
  • vw_objeto_publicado_sem_validacao: auditoria de publicações que não possuem validação associada.

17. Regras fora do esquema declarativo

Algumas regras exigem trigger, serviço de aplicação ou auditoria:

  • confirmar que objeto publicado possui representação efetivamente publicada;
  • impedir alteração de identificadores públicos após criação;
  • verificar existência e atividade de códigos em vocabulários;
  • assegurar validação aprovada antes da produção;
  • preservar exclusão lógica e histórico;
  • sincronizar versão vigente do objeto com a tabela de versões.

18. Tecnologia de referência

O DDL foi escrito para PostgreSQL 16 ou superior por usar:

  • GENERATED ALWAYS AS IDENTITY;
  • TIMESTAMPTZ;
  • JSONB;
  • expressões regulares em CHECK;
  • índices únicos parciais;
  • num_nonnulls.

O modelo pode ser adaptado a MariaDB, MySQL ou SQLite, mas algumas restrições precisarão ser reescritas.

19. Estratégia de implementação incremental

  1. Implantar agente, papel, domínio e vocabulários.
  2. Implantar objeto_conhecimento e representação.
  3. Importar os objetos existentes do LAC.
  4. Implantar conceitos, relações, fontes e evidências.
  5. Ativar versões, validações, decisões e publicações.
  6. Criar rotinas de auditoria e sincronização com Memgraph.
  7. Somente depois incorporar metadados extensíveis.

20. Exemplo de inserção

INSERT INTO lac_mc.objeto_conhecimento (
    objeto_conhecimento_id,
    titulo_preferido,
    descricao,
    tipo_objeto_codigo,
    estado_codigo,
    responsavel_pk,
    dominio_principal_pk,
    criado_em,
    atualizado_em
) VALUES (
    'OC-MC-0001',
    'Modelo da Máquina de Conhecimento do LAC',
    'Formaliza os elementos, relações, estados e transformações da Máquina de Conhecimento.',
    'modelo_conceitual',
    'publicado',
    :responsavel_pk,
    :dominio_fundacao_pk,
    '2026-07-27T14:30:00-03:00',
    '2026-07-27T17:10:00-03:00'
);

21. Critérios de validação do modelo

  • todas as entidades conceituais possuem correspondência relacional;
  • relações N:N foram resolvidas por tabelas associativas;
  • identidade conceitual foi separada da localização física;
  • proveniência, versão e governança são rastreáveis;
  • não existem grupos repetitivos no núcleo;
  • restrições do JSON Schema possuem correspondência no banco ou regra complementar;
  • o modelo admite sincronização futura com o grafo.

22. Próximas derivações

  1. Produzir o modelo físico PostgreSQL, com triggers e dados iniciais.
  2. Produzir o modelo lógico de grafo para Memgraph.
  3. Criar scripts de carga dos HTML existentes.
  4. Criar API de objetos, representações e metadados.
  5. Criar painel de conformidade do perfil de aplicação.

23. Síntese

Conclusão: o modelo relacional mantém o Objeto de Conhecimento como núcleo estável e organiza ao redor dele suas representações, relações, fontes, evidências, versões, jornadas, decisões, validações e publicações.

24. Estado do documento

Versão inicial consolidada

Apto a orientar a criação do banco PostgreSQL e o detalhamento do modelo físico.

Modelo lógico