schema for community api

This commit is contained in:
Michele Artini 2023-06-09 15:31:30 +02:00
parent cfd40e15c1
commit f8b3643408
1 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,48 @@
CREATE TABLE communities (
id text PRIMARY KEY,
label text NOT NULL,
description text NOT NULL DEFFAULT '',
status text NOT NULL DEFAULT 'hidden', -- all, manager, hidden
type text NOT NULL, -- community, ri
subjects text[],
fos text[],
sdg text[],
adv_constraints json,
remove_constraints json,
main_zenodo_community text,
other_zenodo_communities text[],
creation_date timestamp NOT NULL DEFAULT now(),
logo_url text
);
CREATE TABLE community_projects (
community text NOT NULL REFERENCES communities(id),
project_id text NOT NULL,
project_code text NOT NULL,
project_name text NOT NULL,
project_acronym text,
project_funder text NOT NULL,
PRIMARY KEY (community, project_id)
);
CREATE TABLE community_datasources (
community text NOT NULL REFERENCES communities(id),
ds_id text NOT NULL,
ds_name text NOT NULL,
constraints json,
PRIMARY KEY (community, ds_id)
);
CREATE TABLE community_support_orgs (
community text REFERENCES communities(id),
org_name text NOT NULL,
org_url text NOT NULL,
org_logourl text NOT NULL,
PRIMARY KEY (community, org_name)
);
CREATE TABLE community_orgs (
community text REFERENCES communities(id),
org_id text NOT NULL,
PRIMARY KEY (community, org_id)
);