ERD

Videlicet Entity Relationship Diagram

Chunks

erDiagram
    chunks {
        TEXT content 
        TEXT created 
        TEXT id PK 
        INT index UK 
        TEXT page_id FK,UK 
        TEXT type FK,UK 
        TEXT type FK,UK 
        TEXT updated 
    }

    chunks_fts_data {
        BLOB block 
        INTEGER id PK 
    }

    chunks_fts_docsize {
        INTEGER id PK 
        BLOB sz 
    }
    chunks }o--|| page_content_types : "type"
    chunks }o--|| page_contents : "page_id"
    chunks }o--|| page_contents : "type"

Evals

erDiagram
eval_scorers {
        TEXT eval_id PK,FK 
        TEXT scorer_name PK,FK 
    }

    evals {
        TEXT created 
        TEXT id PK 
        TEXT name UK 
        TEXT prompt_name FK 
        TEXT updated 
    }

    extractions {
        TEXT content 
        TEXT created 
        TEXT id PK 
        TEXT page_id FK,UK 
        TEXT prompt_id FK,UK 
        INT run UK 
        TEXT updated 
    }

    goose_db_version {
        INTEGER id PK 
        INTEGER is_applied 
        TIMESTAMP tstamp 
        INTEGER version_id 
    }

    eval_scorers }o--|| evals : "eval_id"
    eval_scorers }o--|| scorers : "scorer_name"
    evals }o--|| prompt_names : "prompt_name"
    results }o--|| evals : "eval_id"
    extractions }o--|| pages : "page_id"
    extractions }o--|| prompts : "prompt_id"
    results }o--|| extractions : "extraction_id"

Pages

erDiagram

page_content_types {
        TEXT type PK 
    }

    page_contents {
        TEXT content 
        TEXT created 
        TEXT id PK,FK 
        TEXT type PK,FK 
        TEXT updated 
    }

    page_labels {
        TEXT created 
        TEXT label PK,FK 
        TEXT page_id PK,FK 
        TEXT updated 
    }

    page_metadata {
        TEXT created 
        TEXT id PK,FK 
        INT is_cursive 
        TEXT notes 
        TEXT other 
        INT page_number 
        TEXT publication_id FK 
        TEXT published 
        TEXT updated 
    }

    pages {
        TEXT created 
        TEXT id PK 
        TEXT name UK 
        TEXT updated 
    }

    permissions {
        TEXT permission PK 
    }



 page_labels }o--|| labels : "label"
    models }o--|| model_types : "type"
    page_contents }o--|| page_content_types : "type"
    page_contents }o--|| pages : "id"
    page_labels }o--|| pages : "page_id"
    page_metadata |o--|| pages : "id"
    page_metadata }o--|| publications : "publication_id"

Prompts

erDiagram


    prompt_names {
        TEXT name PK 
    }

    prompts {
        TEXT content 
        TEXT created 
        TEXT id PK 
        TEXT label FK 
        TEXT model_id FK 
        TEXT name FK 
        TEXT updated 
        TEXT user_id FK 
    }

    publications {
        TEXT id PK 
        TEXT metadata 
        TEXT name UK 
    }

    results {
        TEXT created 
        INT duration 
        TEXT eval_id FK,UK 
        TEXT extraction_id FK,UK 
        TEXT id PK 
        INT run UK 
        REAL score 
        TEXT scorer_name FK,UK 
        TEXT updated 
    }


    prompts }o--|| labels : "label"
    models }o--|| model_types : "type"
    prompts }o--|| models : "model_id"
    prompts }o--|| prompt_names : "name"
    prompts }o--|| users : "user_id"
    results }o--|| scorers : "scorer_name"

User Roles

erDiagram
roles {
        TEXT role PK 
    }

    roles_permissions {
        TEXT permission PK,FK 
        TEXT role PK,FK 
    }

    scorers {
        TEXT config 
        TEXT name PK 
    }

    sqlite_sequence {
         name 
         seq 
    }

    tokens {
        TEXT created 
        TEXT expires 
        TEXT updated 
        INT used 
        TEXT user_id FK 
        TEXT value PK 
    }

    users {
        INT active 
        INT confirmed 
        TEXT created 
        TEXT email UK 
        TEXT id PK 
        TEXT name 
        TEXT updated 
    }

    users_roles {
        TEXT role PK,FK 
        TEXT user_id PK,FK 
    }
roles_permissions }o--|| roles : "role"
    users_roles }o--|| roles : "role"
    tokens }o--|| users : "user_id"
    users_roles }o--|| users : "user_id"

Complete ERD

erDiagram
    chunks {
        TEXT content 
        TEXT created 
        TEXT id PK 
        INT index UK 
        TEXT page_id FK,UK 
        TEXT type FK,UK 
        TEXT type FK,UK 
        TEXT updated 
    }

    chunks_fts_data {
        BLOB block 
        INTEGER id PK 
    }

    chunks_fts_docsize {
        INTEGER id PK 
        BLOB sz 
    }



    eval_scorers {
        TEXT eval_id PK,FK 
        TEXT scorer_name PK,FK 
    }

    evals {
        TEXT created 
        TEXT id PK 
        TEXT name UK 
        TEXT prompt_name FK 
        TEXT updated 
    }

    extractions {
        TEXT content 
        TEXT created 
        TEXT id PK 
        TEXT page_id FK,UK 
        TEXT prompt_id FK,UK 
        INT run UK 
        TEXT updated 
    }

    goose_db_version {
        INTEGER id PK 
        INTEGER is_applied 
        TIMESTAMP tstamp 
        INTEGER version_id 
    }

    labels {
        TEXT label PK 
    }

    model_types {
        TEXT type PK 
    }

    models {
        TEXT config 
        TEXT created 
        TEXT id PK 
        TEXT name UK 
        TEXT type FK,UK 
        TEXT updated 
    }

    page_content_types {
        TEXT type PK 
    }

    page_contents {
        TEXT content 
        TEXT created 
        TEXT id PK,FK 
        TEXT type PK,FK 
        TEXT updated 
    }

    page_labels {
        TEXT created 
        TEXT label PK,FK 
        TEXT page_id PK,FK 
        TEXT updated 
    }

    page_metadata {
        TEXT created 
        TEXT id PK,FK 
        INT is_cursive 
        TEXT notes 
        TEXT other 
        INT page_number 
        TEXT publication_id FK 
        TEXT published 
        TEXT updated 
    }

    pages {
        TEXT created 
        TEXT id PK 
        TEXT name UK 
        TEXT updated 
    }

    permissions {
        TEXT permission PK 
    }

    prompt_names {
        TEXT name PK 
    }

    prompts {
        TEXT content 
        TEXT created 
        TEXT id PK 
        TEXT label FK 
        TEXT model_id FK 
        TEXT name FK 
        TEXT updated 
        TEXT user_id FK 
    }

    publications {
        TEXT id PK 
        TEXT metadata 
        TEXT name UK 
    }

    results {
        TEXT created 
        INT duration 
        TEXT eval_id FK,UK 
        TEXT extraction_id FK,UK 
        TEXT id PK 
        INT run UK 
        REAL score 
        TEXT scorer_name FK,UK 
        TEXT updated 
    }

    roles {
        TEXT role PK 
    }

    roles_permissions {
        TEXT permission PK,FK 
        TEXT role PK,FK 
    }

    scorers {
        TEXT config 
        TEXT name PK 
    }

    sqlite_sequence {
         name 
         seq 
    }

    tokens {
        TEXT created 
        TEXT expires 
        TEXT updated 
        INT used 
        TEXT user_id FK 
        TEXT value PK 
    }

    users {
        INT active 
        INT confirmed 
        TEXT created 
        TEXT email UK 
        TEXT id PK 
        TEXT name 
        TEXT updated 
    }

    users_roles {
        TEXT role PK,FK 
        TEXT user_id PK,FK 
    }

    chunks }o--|| page_content_types : "type"
    chunks }o--|| page_contents : "page_id"
    chunks }o--|| page_contents : "type"
    eval_scorers }o--|| evals : "eval_id"
    eval_scorers }o--|| scorers : "scorer_name"
    evals }o--|| prompt_names : "prompt_name"
    results }o--|| evals : "eval_id"
    extractions }o--|| pages : "page_id"
    extractions }o--|| prompts : "prompt_id"
    results }o--|| extractions : "extraction_id"
    page_labels }o--|| labels : "label"
    prompts }o--|| labels : "label"
    models }o--|| model_types : "type"
    prompts }o--|| models : "model_id"
    page_contents }o--|| page_content_types : "type"
    page_contents }o--|| pages : "id"
    page_labels }o--|| pages : "page_id"
    page_metadata |o--|| pages : "id"
    page_metadata }o--|| publications : "publication_id"
    roles_permissions }o--|| permissions : "permission"
    prompts }o--|| prompt_names : "name"
    prompts }o--|| users : "user_id"
    results }o--|| scorers : "scorer_name"
    roles_permissions }o--|| roles : "role"
    users_roles }o--|| roles : "role"
    tokens }o--|| users : "user_id"
    users_roles }o--|| users : "user_id"