Sobre o projeto

Alioth é um modelo de dados construído sobre o mecanismo de herança de tabela do PostgreSQL, fundamentado na teoria de grupos e na ontologia de troca. Ele formaliza o comportamento econômico como operações simétricas dentro de um espaço ortogonal de quatro dimensões, `(Cena, Fator, Função, Estado)`, com o objetivo de fornecer uma base matematicamente rigorosa para a gestão de dados empresariais. ## Características Principais - **Arquitetura de Herança Estratificada**: Utiliza a herança de tabelas do PostgreSQL para construir uma hierarquia de tipos matemáticos abstratos (como `zc_ad_object`, `zc_ad_vector`) até objetos de negócios concretos (como `zc_id_order`). - **Sistema de Coordenadas Quadridimensional**: Cada entidade do ciclo de vida ocupa uma coordenada única `(Cena, Fator, Função)` no espaço `isahl`, com as três dimensões sendo completamente ortogonais, representando o contexto da transação, os elementos da transação e a função da transação, respectivamente. - **Completude de Cinco Domínios (LCGPF)**: A dimensão Fator é dividida em cinco domínios — Trabalho (Labor), Contêiner (Container), Mercadoria (Goods), Local (Place) e Finanças (Finance) — garantindo que qualquer instantâneo de troca completo cubra todas as perspectivas necessárias. - **Modelo de Referência Escalar**: Todas as quantidades contínuas mensuráveis (como montantes, datas, preços) não são armazenadas diretamente como tipos nativos, mas sim referenciadas indiretamente por meio de tabelas de referência escalar (como `zc_id_scalar-price`), assegurando consistência de dados e segurança de tipo. - **Publicação Versionada**: O modelo é publicado com versionamento SemVer, com cada diretório de versão contendo arquivos SQL em formato puro CREATE/ALTER e dados de seed, validados por meio de reconstrução automatizada para garantir compatibilidade DDL. ## Arquitetura Técnica - **Banco de Dados**: PostgreSQL 14+ - **Convenções de Nomenclatura**: Os nomes de tabelas usam prefixos como `zc_ad_*` (dados abstratos) e `zc_id_*` (dados de implementação), enquanto os nomes de colunas usam prefixos como `qk_*` (referência escalar) e `fk_*` (chave estrangeira). - **Geração de ID**: As tabelas do ciclo de vida usam geradores de ID globalmente únicos, enquanto as tabelas não pertencentes ao ciclo de vida usam geradores de ID determinísticos. - **Validação de Dados**: A completude dos cinco domínios é imposta por meio de triggers e um mecanismo de inferência de modelo, prevenindo rupturas de simetria. ## Casos de Uso - Modelagem de processos de transação empresarial - Design de arquitetura de dados para sistemas de negócios complexos - Governança de dados e gestão de metadados - Sistemas financeiros e econômicos que requerem rigor matemático