aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2018-07-20 19:06:00 -0700
committerBryan Newbold <bnewbold@robocracy.org>2018-07-20 19:58:49 -0700
commitd6a8ffbfa7cef75beb84655386dfe31188bca901 (patch)
tree5f52e15672da8ccaa195e9234095defe1089e859
parentf597cb6c6db592fc338d6d41446748f201966f2e (diff)
downloadfatcat-d6a8ffbfa7cef75beb84655386dfe31188bca901.tar.gz
fatcat-d6a8ffbfa7cef75beb84655386dfe31188bca901.zip
update schema (sql and api) for rev ids, editor_id, editgroup_id
-rw-r--r--fatcat-openapi2.yml36
-rw-r--r--rust/migrations/2018-05-12-001226_init/up.sql225
2 files changed, 130 insertions, 131 deletions
diff --git a/fatcat-openapi2.yml b/fatcat-openapi2.yml
index c0f684ca..61e61265 100644
--- a/fatcat-openapi2.yml
+++ b/fatcat-openapi2.yml
@@ -21,20 +21,20 @@ x-entity-props: &ENTITYPROPS
enum: ["wip", "active", "redirect", "deleted"]
ident:
type: string
- #format: ident
+ #format: custom
example: "q3nouwy3nnbsvo3h5klxsx4a7y"
revision:
- type: integer
- example: 42
- format: int64
- redirect:
type: string
#format: uuid
+ example: "86daea5b-1b6b-432a-bb67-ea97795f80fe"
+ redirect:
+ type: string
+ #format: custom
example: "q3nouwy3nnbsvo3h5klxsx4a7y"
editgroup_id:
- type: integer
- example: 16
- format: int64
+ type: string
+ #format: custom
+ example: "q3nouwy3nnbsvo3h5klxsx4a7y"
extra:
type: object
additionalProperties: {}
@@ -209,17 +209,16 @@ definitions:
type: string
example: "q3nouwy3nnbsvo3h5klxsx4a7y"
revision:
- type: integer
- example: 42
- format: int64
+ type: string
+ #format: uuid
+ example: "86daea5b-1b6b-432a-bb67-ea97795f80fe"
redirect_ident:
type: string
example: "q3nouwy3nnbsvo3h5klxsx4a7y"
#format: ident
editgroup_id:
- type: integer
- example: 16
- format: int64
+ type: string
+ example: "q3nouwy3nnbsvo3h5klxsx4a7y"
extra:
type: object
additionalProperties: {}
@@ -240,8 +239,9 @@ definitions:
type: integer
format: int64
editor_id:
- type: integer
- format: int64
+ type: string
+ #format: custon
+ example: "q3nouwy3nnbsvo3h5klxsx4a7y"
description:
type: string
extra:
@@ -281,8 +281,8 @@ definitions:
type: integer
format: int64
editgroup_id:
- type: integer
- format: int64
+ type: string
+ example: "q3nouwy3nnbsvo3h5klxsx4a7y"
timestamp:
type: string
format: date-time
diff --git a/rust/migrations/2018-05-12-001226_init/up.sql b/rust/migrations/2018-05-12-001226_init/up.sql
index 5717a818..57938534 100644
--- a/rust/migrations/2018-05-12-001226_init/up.sql
+++ b/rust/migrations/2018-05-12-001226_init/up.sql
@@ -1,5 +1,4 @@
--- written for Postgres 9.6 with OSSP extension for UUIDs
--- ... but actually runs on Postgres 10 in qa/production
+-- written for Postgres 9.6 with OSSP extension for UUIDs -- ... but actually runs on Postgres 10 in qa/production
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
@@ -10,16 +9,16 @@ CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
-- NB: could use LIKE clause, or "composite types"
CREATE TABLE editor (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
username TEXT NOT NULL UNIQUE,
is_admin BOOLEAN NOT NULL DEFAULT false,
- active_editgroup_id BIGINT -- REFERENCES( editgroup(id) via ALTER below
+ active_editgroup_id UUID -- REFERENCES( editgroup(id) via ALTER below
);
CREATE TABLE editgroup (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
- editor_id BIGSERIAL REFERENCES editor(id) NOT NULL,
+ editor_id UUID REFERENCES editor(id) NOT NULL,
description TEXT
);
@@ -29,7 +28,7 @@ ALTER TABLE editor
CREATE TABLE changelog (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
timestamp TIMESTAMP WITHOUT TIME ZONE DEFAULT now() NOT NULL
);
@@ -38,7 +37,7 @@ CREATE INDEX changelog_editgroup_idx ON changelog(editgroup_id);
-------------------- Creators -----------------------------------------------
CREATE TABLE creator_rev (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
display_name TEXT NOT NULL,
@@ -56,7 +55,7 @@ CREATE INDEX creator_rev_orcid_idx ON creator_rev(orcid) WHERE orcid IS NOT NULL
CREATE TABLE creator_ident (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
is_live BOOL NOT NULL DEFAULT false,
- rev_id BIGINT REFERENCES creator_rev(id),
+ rev_id UUID REFERENCES creator_rev(id),
redirect_id UUID REFERENCES creator_ident(id)
);
@@ -64,9 +63,9 @@ CREATE INDEX creator_ident_rev_idx ON creator_ident(rev_id);
CREATE TABLE creator_edit (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
ident_id UUID REFERENCES creator_ident(id) NOT NULL,
- rev_id BIGINT REFERENCES creator_rev(id),
+ rev_id UUID REFERENCES creator_rev(id),
redirect_id UUID REFERENCES creator_ident(id),
extra_json JSON
);
@@ -75,7 +74,7 @@ CREATE INDEX creator_edit_idx ON creator_edit(editgroup_id);
-------------------- Containers --------------------------------------------
CREATE TABLE container_rev (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
name TEXT NOT NULL,
@@ -90,7 +89,7 @@ CREATE INDEX container_rev_issnl_idx ON container_rev(issnl) WHERE issnl IS NOT
CREATE TABLE container_ident (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
is_live BOOL NOT NULL DEFAULT false,
- rev_id BIGINT REFERENCES container_rev(id),
+ rev_id UUID REFERENCES container_rev(id),
redirect_id UUID REFERENCES container_ident(id)
);
@@ -98,9 +97,9 @@ CREATE INDEX container_ident_rev_idx ON container_ident(rev_id);
CREATE TABLE container_edit (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
ident_id UUID REFERENCES container_ident(id) NOT NULL,
- rev_id BIGINT REFERENCES container_rev(id),
+ rev_id UUID REFERENCES container_rev(id),
redirect_id UUID REFERENCES container_ident(id),
extra_json JSON
);
@@ -109,7 +108,7 @@ CREATE INDEX container_edit_idx ON container_edit(editgroup_id);
-------------------- Files -------------------------------------------------
CREATE TABLE file_rev (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
size BIGINT,
@@ -127,7 +126,7 @@ CREATE INDEX file_rev_sha256_idx ON file_rev(sha256) WHERE sha256 IS NOT NULL;
CREATE TABLE file_ident (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
is_live BOOL NOT NULL DEFAULT false,
- rev_id BIGINT REFERENCES file_rev(id),
+ rev_id UUID REFERENCES file_rev(id),
redirect_id UUID REFERENCES file_ident(id)
);
@@ -135,9 +134,9 @@ CREATE INDEX file_ident_rev_idx ON file_ident(rev_id);
CREATE TABLE file_edit (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
ident_id UUID REFERENCES file_ident(id) NOT NULL,
- rev_id BIGINT REFERENCES file_rev(id),
+ rev_id UUID REFERENCES file_rev(id),
redirect_id UUID REFERENCES file_ident(id),
extra_json JSON
);
@@ -146,7 +145,7 @@ CREATE INDEX file_edit_idx ON file_edit(editgroup_id);
-------------------- Release -----------------------------------------------
CREATE TABLE release_rev (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
work_ident_id UUID NOT NULL, -- FOREIGN KEY; see ALRTER below
@@ -172,7 +171,7 @@ CREATE INDEX release_rev_work_idx ON release_rev(work_ident_id) WHERE work_ident
CREATE TABLE release_ident (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
is_live BOOL NOT NULL DEFAULT false,
- rev_id BIGINT REFERENCES release_rev(id),
+ rev_id UUID REFERENCES release_rev(id),
redirect_id UUID REFERENCES release_ident(id)
);
@@ -180,9 +179,9 @@ CREATE INDEX release_ident_rev_idx ON release_ident(rev_id);
CREATE TABLE release_edit (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
ident_id UUID REFERENCES release_ident(id) NOT NULL,
- rev_id BIGINT REFERENCES release_rev(id),
+ rev_id UUID REFERENCES release_rev(id),
redirect_id UUID REFERENCES release_ident(id),
extra_json JSON
);
@@ -191,7 +190,7 @@ CREATE INDEX release_edit_idx ON release_edit(editgroup_id);
-------------------- Works --------------------------------------------------
CREATE TABLE work_rev (
- id BIGSERIAL PRIMARY KEY,
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
extra_json JSON,
-- not even a work, for now
@@ -202,7 +201,7 @@ CREATE TABLE work_rev (
CREATE TABLE work_ident (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
is_live BOOL NOT NULL DEFAULT false,
- rev_id BIGINT REFERENCES work_rev(id),
+ rev_id UUID REFERENCES work_rev(id),
redirect_id UUID REFERENCES work_ident(id)
);
@@ -210,9 +209,9 @@ CREATE INDEX work_ident_rev_idx ON work_ident(rev_id);
CREATE TABLE work_edit (
id BIGSERIAL PRIMARY KEY,
- editgroup_id BIGINT REFERENCES editgroup(id) NOT NULL,
+ editgroup_id UUID REFERENCES editgroup(id) NOT NULL,
ident_id UUID REFERENCES work_ident(id) NOT NULL,
- rev_id BIGINT REFERENCES work_rev(id),
+ rev_id UUID REFERENCES work_rev(id),
redirect_id UUID REFERENCES work_ident(id),
extra_json JSON
);
@@ -227,7 +226,7 @@ ALTER TABLE release_rev
CREATE TABLE release_contrib (
id BIGSERIAL PRIMARY KEY,
- release_rev BIGSERIAL REFERENCES release_rev(id) NOT NULL,
+ release_rev UUID REFERENCES release_rev(id) NOT NULL,
creator_ident_id UUID REFERENCES creator_ident(id),
role TEXT, -- TODO: enum?
index BIGINT,
@@ -239,7 +238,7 @@ CREATE INDEX release_contrib_creator_idx ON release_contrib(creator_ident_id);
CREATE TABLE release_ref (
id BIGSERIAL PRIMARY KEY,
- release_rev BIGSERIAL REFERENCES release_rev(id) NOT NULL,
+ release_rev UUID REFERENCES release_rev(id) NOT NULL,
target_release_ident_id UUID REFERENCES release_ident(id), -- or work?
index BIGINT,
key TEXT,
@@ -254,7 +253,7 @@ CREATE INDEX release_ref_rev_idx ON release_ref(release_rev);
CREATE INDEX release_ref_target_release_idx ON release_ref(target_release_ident_id);
CREATE TABLE file_release (
- file_rev BIGSERIAL REFERENCES file_rev(id) NOT NULL,
+ file_rev UUID REFERENCES file_rev(id) NOT NULL,
target_release_ident_id UUID REFERENCES release_ident(id) NOT NULL,
PRIMARY KEY (file_rev, target_release_ident_id)
);
@@ -273,123 +272,123 @@ CREATE INDEX file_release_target_release_idx ON file_release(target_release_iden
BEGIN;
-INSERT INTO editor (username, is_admin) VALUES
- ('admin', true),
- ('demo-user', true),
- ('claire', false);
+INSERT INTO editor (id, username, is_admin) VALUES
+ ('00000000-0000-0000-AAAA-000000000001', 'admin', true), -- aaaaaaaaaaaabkvkaaaaaaaaae
+ ('00000000-0000-0000-AAAA-000000000002', 'demo-user', true), -- aaaaaaaaaaaabkvkaaaaaaaaai
+ ('00000000-0000-0000-AAAA-000000000003', 'claire', false); -- aaaaaaaaaaaabkvkaaaaaaaaam
-INSERT INTO editgroup (editor_id, description) VALUES
- (1, 'first edit ever!'),
- (1, 'another one!'),
- (3, 'user edit'),
- (2, 'uncommited edit'),
- (1, 'journal edit'),
- (1, 'another journal edit');
+INSERT INTO editgroup (id, editor_id, description) VALUES
+ ('00000000-0000-0000-BBBB-000000000001', '00000000-0000-0000-AAAA-000000000001', 'first edit ever!'), -- aaaaaaaaaaaabo53aaaaaaaaae
+ ('00000000-0000-0000-BBBB-000000000002', '00000000-0000-0000-AAAA-000000000001', 'another one!'), -- aaaaaaaaaaaabo53aaaaaaaaai
+ ('00000000-0000-0000-BBBB-000000000003', '00000000-0000-0000-AAAA-000000000003', 'user edit'), -- aaaaaaaaaaaabo53aaaaaaaaam
+ ('00000000-0000-0000-BBBB-000000000004', '00000000-0000-0000-AAAA-000000000002', 'uncommited edit'), -- aaaaaaaaaaaabo53aaaaaaaaaq
+ ('00000000-0000-0000-BBBB-000000000005', '00000000-0000-0000-AAAA-000000000001', 'journal edit'), -- aaaaaaaaaaaabo53aaaaaaaaau
+ ('00000000-0000-0000-BBBB-000000000006', '00000000-0000-0000-AAAA-000000000001', 'another journal edit'); -- aaaaaaaaaaaabo53aaaaaaaaay
-INSERT INTO editor (username, is_admin, active_editgroup_id) VALUES
- ('bnewbold', true, 4);
+INSERT INTO editor (id, username, is_admin, active_editgroup_id) VALUES
+ ('00000000-0000-0000-AAAA-000000000004', 'bnewbold', true, '00000000-0000-0000-BBBB-000000000004');
INSERT INTO changelog (editgroup_id) VALUES
- (1),
- (2),
- (3),
- (4),
- (5);
+ ('00000000-0000-0000-BBBB-000000000001'),
+ ('00000000-0000-0000-BBBB-000000000002'),
+ ('00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-BBBB-000000000004'),
+ ('00000000-0000-0000-BBBB-000000000005');
-INSERT INTO container_rev (name, publisher, issnl, abbrev, coden, extra_json) VALUES
- ('MySpace Blog', null, null, null, null, null),
- ('Journal of Trivial Results', 'bogus publishing group', '1234-5678', 'Triv. Res.', 'CDNXYZ', '{"is_oa": false, "in_doaj": false}'),
- ('PLOS Medicine', 'Public Library of Science', '1549-1277', 'PLoS med.', null, '{"is_oa": true, "in_doaj": true}');
+INSERT INTO container_rev (id, name, publisher, issnl, abbrev, coden, extra_json) VALUES
+ ('00000000-0000-0000-1111-FFF000000001', 'MySpace Blog', null, null, null, null, null),
+ ('00000000-0000-0000-1111-FFF000000002', 'Journal of Trivial Results', 'bogus publishing group', '1234-5678', 'Triv. Res.', 'CDNXYZ', '{"is_oa": false, "in_doaj": false}'),
+ ('00000000-0000-0000-1111-FFF000000003', 'PLOS Medicine', 'Public Library of Science', '1549-1277', 'PLoS med.', null, '{"is_oa": true, "in_doaj": true}');
INSERT INTO container_ident (id, is_live, rev_id, redirect_id) VALUES
- ('00000000-0000-0000-1111-000000000001', true, 1, null), -- aaaaaaaaaaaaaeiraaaaaaaaae
- ('00000000-0000-0000-1111-000000000002', true, 2, null), -- aaaaaaaaaaaaaeiraaaaaaaaai
- ('00000000-0000-0000-1111-000000000003', true, 3, null); -- aaaaaaaaaaaaaeiraaaaaaaaam
+ ('00000000-0000-0000-1111-000000000001', true, '00000000-0000-0000-1111-FFF000000001', null), -- aaaaaaaaaaaaaeiraaaaaaaaae
+ ('00000000-0000-0000-1111-000000000002', true, '00000000-0000-0000-1111-FFF000000002', null), -- aaaaaaaaaaaaaeiraaaaaaaaai
+ ('00000000-0000-0000-1111-000000000003', true, '00000000-0000-0000-1111-FFF000000003', null); -- aaaaaaaaaaaaaeiraaaaaaaaam
INSERT INTO container_edit (ident_id, rev_id, redirect_id, editgroup_id) VALUES
- ('00000000-0000-0000-1111-000000000001', 1, null, 3),
- ('00000000-0000-0000-1111-000000000002', 2, null, 4),
- ('00000000-0000-0000-1111-000000000003', 3, null, 5);
+ ('00000000-0000-0000-1111-000000000001', '00000000-0000-0000-1111-FFF000000001', null, '00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-1111-000000000002', '00000000-0000-0000-1111-FFF000000002', null, '00000000-0000-0000-BBBB-000000000004'),
+ ('00000000-0000-0000-1111-000000000003', '00000000-0000-0000-1111-FFF000000003', null, '00000000-0000-0000-BBBB-000000000005');
-INSERT INTO creator_rev (display_name, given_name, surname, orcid) VALUES
- ('Grace Hopper', null, null, null),
- ('Christine Moran', 'Christine', 'Moran', '0000-0003-2088-7465'),
- ('John P. A. Ioannidis', 'John', 'Ioannidis', '0000-0003-3118-6859');
+INSERT INTO creator_rev (id, display_name, given_name, surname, orcid) VALUES
+ ('00000000-0000-0000-2222-FFF000000001', 'Grace Hopper', null, null, null),
+ ('00000000-0000-0000-2222-FFF000000002', 'Christine Moran', 'Christine', 'Moran', '0000-0003-2088-7465'),
+ ('00000000-0000-0000-2222-FFF000000003', 'John P. A. Ioannidis', 'John', 'Ioannidis', '0000-0003-3118-6859');
INSERT INTO creator_ident (id, is_live, rev_id, redirect_id) VALUES
- ('00000000-0000-0000-2222-000000000001', true, 1, null), -- aaaaaaaaaaaaaircaaaaaaaaae
- ('00000000-0000-0000-2222-000000000002', true, 2, null), -- aaaaaaaaaaaaaircaaaaaaaaai
- ('00000000-0000-0000-2222-000000000003', true, 3, null), -- aaaaaaaaaaaaaircaaaaaaaaam
- ('00000000-0000-0000-2222-000000000004', false, 2, null); -- aaaaaaaaaaaaaircaaaaaaaaaq
+ ('00000000-0000-0000-2222-000000000001', true, '00000000-0000-0000-2222-FFF000000001', null), -- aaaaaaaaaaaaaircaaaaaaaaae
+ ('00000000-0000-0000-2222-000000000002', true, '00000000-0000-0000-2222-FFF000000002', null), -- aaaaaaaaaaaaaircaaaaaaaaai
+ ('00000000-0000-0000-2222-000000000003', true, '00000000-0000-0000-2222-FFF000000003', null), -- aaaaaaaaaaaaaircaaaaaaaaam
+ ('00000000-0000-0000-2222-000000000004', false, '00000000-0000-0000-2222-FFF000000002', null); -- aaaaaaaaaaaaaircaaaaaaaaaq
INSERT INTO creator_edit (ident_id, rev_id, redirect_id, editgroup_id) VALUES
- ('00000000-0000-0000-2222-000000000001', 1, null, 1),
- ('00000000-0000-0000-2222-000000000002', 2, null, 2),
- ('00000000-0000-0000-2222-000000000003', 3, null, 3),
- ('00000000-0000-0000-2222-000000000004', 2, null, 4);
+ ('00000000-0000-0000-2222-000000000001', '00000000-0000-0000-2222-FFF000000001', null, '00000000-0000-0000-BBBB-000000000001'),
+ ('00000000-0000-0000-2222-000000000002', '00000000-0000-0000-2222-FFF000000002', null, '00000000-0000-0000-BBBB-000000000002'),
+ ('00000000-0000-0000-2222-000000000003', '00000000-0000-0000-2222-FFF000000003', null, '00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-2222-000000000004', '00000000-0000-0000-2222-FFF000000002', null, '00000000-0000-0000-BBBB-000000000004');
-INSERT INTO file_rev (size, sha1, sha256, md5, url, mimetype) VALUES
- (null, null, null, null, null, null),
- (4321, '7d97e98f8af710c7e7fe703abc8f639e0ee507c4', null, null, 'http://archive.org/robots.txt', 'text/plain'),
- (255629, '3f242a192acc258bdfdb151943419437f440c313', 'ffc1005680cb620eec4c913437dfabbf311b535cfe16cbaeb2faec1f92afc362', 'f4de91152c7ab9fdc2a128f962faebff', 'http://journals.plos.org/plosmedicine/article/file?id=10.1371/journal.pmed.0020124&type=printable', 'application/pdf');
+INSERT INTO file_rev (id, size, sha1, sha256, md5, url, mimetype) VALUES
+ ('00000000-0000-0000-3333-FFF000000001', null, null, null, null, null, null),
+ ('00000000-0000-0000-3333-FFF000000002', 4321, '7d97e98f8af710c7e7fe703abc8f639e0ee507c4', null, null, 'http://archive.org/robots.txt', 'text/plain'),
+ ('00000000-0000-0000-3333-FFF000000003', 255629, '3f242a192acc258bdfdb151943419437f440c313', 'ffc1005680cb620eec4c913437dfabbf311b535cfe16cbaeb2faec1f92afc362', 'f4de91152c7ab9fdc2a128f962faebff', 'http://journals.plos.org/plosmedicine/article/file?id=10.1371/journal.pmed.0020124&type=printable', 'application/pdf');
INSERT INTO file_ident (id, is_live, rev_id, redirect_id) VALUES
- ('00000000-0000-0000-3333-000000000001', true, 1, null), -- aaaaaaaaaaaaamztaaaaaaaaae
- ('00000000-0000-0000-3333-000000000002', true, 2, null), -- aaaaaaaaaaaaamztaaaaaaaaai
- ('00000000-0000-0000-3333-000000000003', true, 3, null); -- aaaaaaaaaaaaamztaaaaaaaaam
+ ('00000000-0000-0000-3333-000000000001', true, '00000000-0000-0000-3333-FFF000000001', null), -- aaaaaaaaaaaaamztaaaaaaaaae
+ ('00000000-0000-0000-3333-000000000002', true, '00000000-0000-0000-3333-FFF000000002', null), -- aaaaaaaaaaaaamztaaaaaaaaai
+ ('00000000-0000-0000-3333-000000000003', true, '00000000-0000-0000-3333-FFF000000003', null); -- aaaaaaaaaaaaamztaaaaaaaaam
INSERT INTO file_edit (ident_id, rev_id, redirect_id, editgroup_id) VALUES
- ('00000000-0000-0000-3333-000000000001', 1, null, 3),
- ('00000000-0000-0000-3333-000000000002', 2, null, 4),
- ('00000000-0000-0000-3333-000000000003', 3, null, 5);
+ ('00000000-0000-0000-3333-000000000001', '00000000-0000-0000-3333-FFF000000001', null, '00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-3333-000000000002', '00000000-0000-0000-3333-FFF000000002', null, '00000000-0000-0000-BBBB-000000000004'),
+ ('00000000-0000-0000-3333-000000000003', '00000000-0000-0000-3333-FFF000000003', null, '00000000-0000-0000-BBBB-000000000005');
-INSERT INTO work_rev (work_type, primary_release_id) VALUES
- (null, null),
- ('pre-print', null),
- ('journal-article', null);
+INSERT INTO work_rev (id, work_type, primary_release_id) VALUES
+ ('00000000-0000-0000-5555-FFF000000001', null, null),
+ ('00000000-0000-0000-5555-FFF000000002', 'pre-print', null),
+ ('00000000-0000-0000-5555-FFF000000003', 'journal-article', null);
INSERT INTO work_ident (id, is_live, rev_id, redirect_id) VALUES
- ('00000000-0000-0000-5555-000000000001', true, 1, null), -- aaaaaaaaaaaaavkvaaaaaaaaae
- ('00000000-0000-0000-5555-000000000002', true, 2, null), -- aaaaaaaaaaaaavkvaaaaaaaaai
- ('00000000-0000-0000-5555-000000000003', true, 3, null); -- aaaaaaaaaaaaavkvaaaaaaaaam
+ ('00000000-0000-0000-5555-000000000001', true, '00000000-0000-0000-5555-FFF000000001', null), -- aaaaaaaaaaaaavkvaaaaaaaaae
+ ('00000000-0000-0000-5555-000000000002', true, '00000000-0000-0000-5555-FFF000000002', null), -- aaaaaaaaaaaaavkvaaaaaaaaai
+ ('00000000-0000-0000-5555-000000000003', true, '00000000-0000-0000-5555-FFF000000003', null); -- aaaaaaaaaaaaavkvaaaaaaaaam
INSERT INTO work_edit (ident_id, rev_id, redirect_id, editgroup_id) VALUES
- ('00000000-0000-0000-5555-000000000001', 1, null, 3),
- ('00000000-0000-0000-5555-000000000002', 2, null, 4),
- ('00000000-0000-0000-5555-000000000002', 3, null, 5);
+ ('00000000-0000-0000-5555-000000000001', '00000000-0000-0000-5555-FFF000000001', null, '00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-5555-000000000002', '00000000-0000-0000-5555-FFF000000002', null, '00000000-0000-0000-BBBB-000000000004'),
+ ('00000000-0000-0000-5555-000000000002', '00000000-0000-0000-5555-FFF000000003', null, '00000000-0000-0000-BBBB-000000000005');
-INSERT INTO release_rev (work_ident_id, container_ident_id, title, release_type, release_status, release_date, doi, isbn13, volume, issue, pages, publisher, language) VALUES
- ('00000000-0000-0000-5555-000000000001', null, 'example title', null, null, null, null, null, null, null, null, null, null),
- ('00000000-0000-0000-5555-000000000002', '00000000-0000-0000-1111-000000000001', 'bigger example', 'journal-article', null,'2018-01-01', '10.123/abc', '99999-999-9-X', '12', 'IV', '5-9', 'bogus publishing group', 'cn'),
- ('00000000-0000-0000-5555-000000000003', '00000000-0000-0000-1111-000000000003', 'Why Most Published Research Findings Are False', 'journal-article', 'published', '2005-08-30', '10.1371/journal.pmed.0020124', null, '2', '8', 'e124', 'Public Library of Science', 'en');
+INSERT INTO release_rev (id, work_ident_id, container_ident_id, title, release_type, release_status, release_date, doi, isbn13, volume, issue, pages, publisher, language) VALUES
+ ('00000000-0000-0000-4444-FFF000000001', '00000000-0000-0000-5555-000000000001', null, 'example title', null, null, null, null, null, null, null, null, null, null),
+ ('00000000-0000-0000-4444-FFF000000002', '00000000-0000-0000-5555-000000000002', '00000000-0000-0000-1111-000000000001', 'bigger example', 'journal-article', null,'2018-01-01', '10.123/abc', '99999-999-9-X', '12', 'IV', '5-9', 'bogus publishing group', 'cn'),
+ ('00000000-0000-0000-4444-FFF000000003', '00000000-0000-0000-5555-000000000003', '00000000-0000-0000-1111-000000000003', 'Why Most Published Research Findings Are False', 'journal-article', 'published', '2005-08-30', '10.1371/journal.pmed.0020124', null, '2', '8', 'e124', 'Public Library of Science', 'en');
INSERT INTO release_ident (id, is_live, rev_id, redirect_id) VALUES
- ('00000000-0000-0000-4444-000000000001', true, 1, null), -- aaaaaaaaaaaaarceaaaaaaaaae
- ('00000000-0000-0000-4444-000000000002', true, 2, null), -- aaaaaaaaaaaaarceaaaaaaaaai
- ('00000000-0000-0000-4444-000000000003', true, 3, null); -- aaaaaaaaaaaaarceaaaaaaaaam
+ ('00000000-0000-0000-4444-000000000001', true, '00000000-0000-0000-4444-FFF000000001', null), -- aaaaaaaaaaaaarceaaaaaaaaae
+ ('00000000-0000-0000-4444-000000000002', true, '00000000-0000-0000-4444-FFF000000002', null), -- aaaaaaaaaaaaarceaaaaaaaaai
+ ('00000000-0000-0000-4444-000000000003', true, '00000000-0000-0000-4444-FFF000000003', null); -- aaaaaaaaaaaaarceaaaaaaaaam
INSERT INTO release_edit (ident_id, rev_id, redirect_id, editgroup_id) VALUES
- ('00000000-0000-0000-4444-000000000001', 1, null, 3),
- ('00000000-0000-0000-4444-000000000002', 2, null, 4),
- ('00000000-0000-0000-4444-000000000003', 3, null, 5);
+ ('00000000-0000-0000-4444-000000000001', '00000000-0000-0000-4444-FFF000000001', null, '00000000-0000-0000-BBBB-000000000003'),
+ ('00000000-0000-0000-4444-000000000002', '00000000-0000-0000-4444-FFF000000002', null, '00000000-0000-0000-BBBB-000000000004'),
+ ('00000000-0000-0000-4444-000000000003', '00000000-0000-0000-4444-FFF000000003', null, '00000000-0000-0000-BBBB-000000000005');
INSERT INTO release_contrib (release_rev, creator_ident_id, raw, role, index) VALUES
- (2, null, null, null, null),
- (2, '00000000-0000-0000-2222-000000000002', 'some contrib', 'editor', 4),
- (3, '00000000-0000-0000-2222-000000000003', 'John P. A. Ioannidis', 'author', 0);
+ ('00000000-0000-0000-4444-FFF000000002', null, null, null, null),
+ ('00000000-0000-0000-4444-FFF000000002', '00000000-0000-0000-2222-000000000002', 'some contrib', 'editor', 4),
+ ('00000000-0000-0000-4444-FFF000000003', '00000000-0000-0000-2222-000000000003', 'John P. A. Ioannidis', 'author', 0);
INSERT INTO release_ref (release_rev, target_release_ident_id, index, raw) VALUES
- (2, null, null, null),
- (2, '00000000-0000-0000-4444-000000000001', 4, 'citation note'),
- (3, null, 0, 'Ioannidis JP, Haidich AB, Lau J. Any casualties in the clash of randomised and observational evidence? BMJ. 2001;322:879–880'),
- (3, null, 1, 'Lawlor DA, Davey Smith G, Kundu D, Bruckdorfer KR, Ebrahim S. Those confounded vitamins: What can we learn from the differences between observational versus randomised trial evidence? Lancet. 2004;363:1724–1727.'),
- (3, null, 2, 'Vandenbroucke JP. When are observational studies as credible as randomised trials? Lancet. 2004;363:1728–1731.'),
- (3, null, 3, 'Michiels S, Koscielny S, Hill C. Prediction of cancer outcome with microarrays: A multiple random validation strategy. Lancet. 2005;365:488–492.'),
- (3, null, 4, 'Ioannidis JPA, Ntzani EE, Trikalinos TA, Contopoulos-Ioannidis DG. Replication validity of genetic association studies. Nat Genet. 2001;29:306–309.'),
- (3, null, 5, 'Colhoun HM, McKeigue PM, Davey Smith G. Problems of reporting genetic associations with complex outcomes. Lancet. 2003;361:865–872.');
+ ('00000000-0000-0000-4444-FFF000000002', null, null, null),
+ ('00000000-0000-0000-4444-FFF000000002', '00000000-0000-0000-4444-000000000001', 4, 'citation note'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 0, 'Ioannidis JP, Haidich AB, Lau J. Any casualties in the clash of randomised and observational evidence? BMJ. 2001;322:879–880'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 1, 'Lawlor DA, Davey Smith G, Kundu D, Bruckdorfer KR, Ebrahim S. Those confounded vitamins: What can we learn from the differences between observational versus randomised trial evidence? Lancet. 2004;363:1724–1727.'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 2, 'Vandenbroucke JP. When are observational studies as credible as randomised trials? Lancet. 2004;363:1728–1731.'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 3, 'Michiels S, Koscielny S, Hill C. Prediction of cancer outcome with microarrays: A multiple random validation strategy. Lancet. 2005;365:488–492.'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 4, 'Ioannidis JPA, Ntzani EE, Trikalinos TA, Contopoulos-Ioannidis DG. Replication validity of genetic association studies. Nat Genet. 2001;29:306–309.'),
+ ('00000000-0000-0000-4444-FFF000000003', null, 5, 'Colhoun HM, McKeigue PM, Davey Smith G. Problems of reporting genetic associations with complex outcomes. Lancet. 2003;361:865–872.');
INSERT INTO file_release (file_rev, target_release_ident_id) VALUES
- (2, '00000000-0000-0000-4444-000000000002'),
- (3, '00000000-0000-0000-4444-000000000003');
+ ('00000000-0000-0000-3333-FFF000000002', '00000000-0000-0000-4444-000000000002'),
+ ('00000000-0000-0000-3333-FFF000000003', '00000000-0000-0000-4444-000000000003');
commit;