erDiagram futures_domain_categories { UUID category_id UUID project_id FK VARCHAR category_name UUID parent_id FK VARCHAR category_path } futures_driver_signals { INT id UUID driver_id FK UUID signal_id FK VARCHAR short_description DATE created_on UUID project_id FK } futures_drivers { UUID driver_id UUID driver_set_id FK INT driver_number VARCHAR driver_name VARCHAR driver_description FLOAT weight_past FLOAT push_present FLOAT pull_future DATE created_on DATE last_modified UUID project_id FK } futures_drivers_sets { UUID driver_set_id VARCHAR driver_set_status DATE created_on UUID project_id FK } futures_projects { UUID project_id VARCHAR domain VARCHAR client VARCHAR geography VARCHAR horizon VARCHAR questions DATE created_on BOOLEAN is_public } futures_scenario_drivers { INT id UUID scenario_id FK UUID driver_id FK VARCHAR driver_value DATE created_on DATE last_modified UUID project_id FK } futures_scenario_sets { UUID scenario_set_id VARCHAR scenario_set_status DATE created_on UUID project_id FK VARCHAR scenario_methodology UUID driver_set_id FK } futures_scenarios { UUID scenario_id UUID scenario_set_id FK VARCHAR scenario_logics VARCHAR scenario_title TEXT scenario_text UUID project_id FK DATE created_on DATE last_modified JSON scenario_sections } futures_signals { UUID signal_id VARCHAR title VARCHAR author VARCHAR source_name VARCHAR url DATE signal_date VARCHAR steep VARCHAR horizon JSON keywords VARCHAR signal_type VARCHAR description VARCHAR change_desc INT impact INT likelihood INT credibility INT novelty DATE created_on UUID project_id FK VARCHAR url_normalized } futures_stakeholders { UUID stakeholder_id UUID project_id FK VARCHAR stakeholder_name } futures_vision { UUID id UUID project_id FK TEXT statement JSON prompts VARCHAR status DATE updated_at DATE created_at } futures_projects ||--o{ futures_domain_categories : project_id futures_domain_categories ||--o{ futures_domain_categories : parent_id futures_drivers ||--o{ futures_driver_signals : driver_id futures_signals ||--o{ futures_driver_signals : signal_id futures_projects ||--o{ futures_driver_signals : project_id futures_drivers_sets ||--o{ futures_drivers : driver_set_id futures_projects ||--o{ futures_drivers : project_id futures_projects ||--o{ futures_drivers_sets : project_id futures_scenarios ||--o{ futures_scenario_drivers : scenario_id futures_drivers ||--o{ futures_scenario_drivers : driver_id futures_projects ||--o{ futures_scenario_drivers : project_id futures_projects ||--o{ futures_scenario_sets : project_id futures_drivers_sets ||--o{ futures_scenario_sets : driver_set_id futures_scenario_sets ||--o{ futures_scenarios : scenario_set_id futures_projects ||--o{ futures_scenarios : project_id futures_projects ||--o{ futures_signals : project_id futures_projects ||--o{ futures_stakeholders : project_id futures_projects ||--|| futures_vision : project_id