Project

General

Profile

1
ALTER TABLE datasources
2
	ADD COLUMN issn CHARACTER VARYING(20);
3
ALTER TABLE datasources
4
	ADD COLUMN eissn CHARACTER VARYING(20);
5
ALTER TABLE datasources
6
	ADD COLUMN lissn CHARACTER VARYING(20);
7
ALTER TABLE datasources
8
	ALTER COLUMN databaseaccesstype TYPE VARCHAR(32);
9
ALTER TABLE datasources
10
	ALTER COLUMN datauploadtype TYPE VARCHAR(32);
11
ALTER TABLE datasources
12
	ALTER COLUMN databaseaccessrestriction TYPE VARCHAR(32);
13
ALTER TABLE datasources
14
	ALTER COLUMN datauploadrestriction TYPE VARCHAR(32);
15
ALTER TABLE datasources
16
	ALTER COLUMN qualitymanagementkind TYPE VARCHAR(32);
17

    
18
ALTER TABLE datasources
19
	ADD COLUMN registeredby CHARACTER VARYING(255);
20

    
21
DELETE FROM apicollections
22
WHERE api NOT LIKE 'api_________::%';
23
DELETE FROM api
24
WHERE id NOT LIKE 'api_________::%';
25

    
26
ALTER TABLE apicollections
27
	DROP COLUMN name;
28
ALTER TABLE apicollections
29
	RENAME COLUMN accessparam TO param;
30
ALTER TABLE apicollections
31
	RENAME COLUMN accessvalue TO original;
32
ALTER TABLE apicollections
33
	ADD COLUMN edited VARCHAR(255) DEFAULT NULL;
34
ALTER TABLE apicollections
35
	ADD COLUMN accessparam BOOLEAN DEFAULT TRUE;
36
ALTER TABLE apicollections
37
	DROP CONSTRAINT apicollection_pkey;
38
ALTER TABLE apicollections
39
	ALTER COLUMN original SET DEFAULT '';
40

    
41
UPDATE apicollections
42
SET param = 'set'
43
WHERE param = 'SET';
44
UPDATE apicollections
45
SET param = 'format'
46
WHERE param = 'FORMAT';
47
UPDATE apicollections
48
SET param = 'baseUrl'
49
WHERE param = 'BASEURL';
50

    
51
-- FIX A PROBLEM WITH MULTIPLE SET
52
DELETE FROM apicollections
53
WHERE api = 'api_________::opendoar____::1560::1' AND param = 'set';
54
INSERT INTO apicollections (param, original, api) VALUES
55
	('set', 'hdl_10251_3829, hdl_10251_321, hdl_10251_11256, hdl_10251_11206, hdl_10251_8702, hdl_10251_3026, hdl_10251_11076',
56
	 'api_________::opendoar____::1560::1');
57
DELETE FROM apicollections
58
WHERE api = 'api_________::driver______::d0b68287-678d-4efc-b354-c47cbacaed3c::0' AND param = 'set';
59
INSERT INTO apicollections (param, original, api) VALUES
60
	('set', 'pub-type:article, pub-type:conf-proceeding, pub-type:lecture, pub-type:paper, pub-type:report',
61
	 'api_________::driver______::d0b68287-678d-4efc-b354-c47cbacaed3c::0');
62
DELETE FROM apicollections
63
WHERE api = 'api_________::driver______::79476713-c428-4f23-bf97-8f27500f754a::0' AND param = 'set';
64
INSERT INTO apicollections (param, original, api)
65
VALUES ('set', 'dad:SIQG, jhs,sal:CNF+PA', 'api_________::driver______::79476713-c428-4f23-bf97-8f27500f754a::0');
66
DELETE FROM apicollections
67
WHERE api = 'api_________::opendoar____::202::0' AND param = 'set';
68
INSERT INTO apicollections (param, original, api) VALUES ('set', 'hdl_1887_4540, hdl_1887_4951', 'api_________::opendoar____::202::0');
69
DELETE FROM apicollections
70
WHERE api = 'api_________::driver______::c75b9f23-25a8-4e45-aadd-ba449211e2a8::0' AND param = 'set';
71
INSERT INTO apicollections (param, original, api) VALUES ('set', 'ijdc:ART, ijdc:PAP', 'api_________::driver______::c75b9f23-25a8-4e45-aadd-ba449211e2a8::0');
72
-- AND FIX
73

    
74
ALTER TABLE apicollections
75
	ADD CONSTRAINT apicollection_pkey PRIMARY KEY (api, param);
76

    
77
INSERT INTO apicollections (param, original, edited, api) SELECT
78
	                                                          'baseUrl',
79
	                                                          COALESCE(original, ''),
80
	                                                          COALESCE(edited, ''),
81
	                                                          id
82
                                                          FROM api
83
                                                          WHERE originalprotocolclass = editedprotocolclass;
84
INSERT INTO apicollections (param, original, api) SELECT
85
	                                                  'baseUrl',
86
	                                                  COALESCE(original, ''),
87
	                                                  id
88
                                                  FROM api
89
                                                  WHERE originalprotocolclass != editedprotocolclass OR editedprotocolclass IS NULL;
90
UPDATE apicollections
91
SET edited = NULL
92
WHERE edited = '';
93

    
94
UPDATE datasources
95
SET datasourceclass = 'websource'
96
WHERE id = 'openaire____::webcrawl';
97

    
98
INSERT INTO apicollections (param, original, api) VALUES ('splitOnElement', 'repository', 'api_________::opendoar::0');
99
INSERT INTO apicollections (param, original, api) VALUES ('splitOnElement', 'ROW', 'api_________::re3data::0');
100
INSERT INTO apicollections (param, original, api) VALUES ('splitOnElement', 'Record', 'api_________::wellcometrust::0');
101
INSERT INTO apicollections (param, original, api) VALUES ('splitOnElement', 'ROW', 'api_________::corda::0');
102

    
103
UPDATE apicollections
104
SET _dnet_resource_identifier_ = api || '@@' || param;
105

    
106
INSERT INTO scheme (_dnet_resource_identifier_, code, name)
107
VALUES ('dnet:content_description_typologies', 'dnet:content_description_typologies', 'D-Net Content Description Typologies');
108

    
109
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('UNKNOWN', 'UNKNOWN', 'UNKNOWN');
110

    
111
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('native', 'native', 'native');
112
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('native@@dnet:compatibilityLevel', 'native', 'dnet:compatibilityLevel');
113
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('files', 'files', 'files');
114
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('files@@dnet:compatibilityLevel', 'files', 'dnet:compatibilityLevel');
115

    
116
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('metadata', 'metadata', 'metadata');
117
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('file::WoS', 'file::WoS', 'file::WoS');
118
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('file::PDF', 'file::PDF', 'file::PDF');
119
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('file::EuropePMC', 'file::EuropePMC', 'file::EuropePMC');
120

    
121
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme)
122
VALUES ('metadata@@dnet:content_description_typologies', 'metadata', 'dnet:content_description_typologies');
123
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme)
124
VALUES ('file::WoS@@dnet:content_description_typologies', 'file::WoS', 'dnet:content_description_typologies');
125
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme)
126
VALUES ('file::PDF@@dnet:content_description_typologies', 'file::PDF', 'dnet:content_description_typologies');
127
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme)
128
VALUES ('file::EuropePMC@@dnet:content_description_typologies', 'file::EuropePMC', 'dnet:content_description_typologies');
129

    
130
ALTER TABLE api
131
	ADD COLUMN contentdescriptionclass VARCHAR(255) DEFAULT 'metadata';
132
ALTER TABLE api
133
	ADD COLUMN contentdescriptionscheme VARCHAR(255) DEFAULT 'dnet:content_description_typologies';
134
ALTER TABLE api
135
	DROP COLUMN editedprotocolclass;
136
ALTER TABLE api
137
	DROP COLUMN editedprotocolscheme;
138
ALTER TABLE api
139
	DROP COLUMN original;
140
ALTER TABLE api
141
	DROP COLUMN edited;
142
ALTER TABLE api
143
	DROP COLUMN useedited;
144
ALTER TABLE api
145
	RENAME COLUMN originalprotocolclass TO protocolclass;
146
ALTER TABLE api
147
	RENAME COLUMN originalprotocolscheme TO protocolscheme;
148
ALTER TABLE api
149
	ADD COLUMN active BOOLEAN DEFAULT FALSE;
150
ALTER TABLE api
151
	ADD COLUMN removable BOOLEAN DEFAULT FALSE;
152
ALTER TABLE api
153
	ADD COLUMN typologyclass VARCHAR(255) DEFAULT 'UNKNOWN';
154
ALTER TABLE api
155
	ADD COLUMN typologyscheme VARCHAR(255) DEFAULT 'dnet:datasource_typologies';
156
ALTER TABLE api
157
	ADD CONSTRAINT api_typologyclass_fkey FOREIGN KEY (typologyclass) REFERENCES class (code);
158
ALTER TABLE api
159
	ADD CONSTRAINT api_typologyscheme_fkey FOREIGN KEY (typologyscheme) REFERENCES scheme (code);
160
ALTER TABLE api
161
	ADD COLUMN compatibilityclass VARCHAR(255) DEFAULT 'UNKNOWN';
162
ALTER TABLE api
163
	ADD COLUMN compatibilityscheme VARCHAR(255) DEFAULT 'dnet:compatibilityLevel';
164
ALTER TABLE api
165
	ADD CONSTRAINT api_compatibilityclass_fkey FOREIGN KEY (compatibilityclass) REFERENCES class (code);
166
ALTER TABLE api
167
	ADD CONSTRAINT api_compatibilityscheme_fkey FOREIGN KEY (compatibilityscheme) REFERENCES scheme (code);
168

    
169
ALTER TABLE api
170
	ADD CONSTRAINT api_contentdescriptionclass_fkey FOREIGN KEY (contentdescriptionclass) REFERENCES class (code);
171
ALTER TABLE api
172
	ADD CONSTRAINT api_contentdescriptionscheme_fkey FOREIGN KEY (contentdescriptionscheme) REFERENCES scheme (code);
173

    
174
UPDATE api
175
SET typologyclass = d.datasourceclass FROM datasources d
176
WHERE datasource = d.id;
177
--UPDATE api SET compatibilityclass = 'driver' where typology = 'driver';
178
--UPDATE api SET compatibilityclass = 'openaire2.0' FROM apicollections ac WHERE typology = 'openaire' AND id = ac.api AND ac.param = 'set' AND ac.original like '%ec_fundedresources%';
179
--UPDATE api SET compatibilityclass = 'openaire3.0' FROM apicollections ac WHERE typology = 'openaire' AND id = ac.api AND ac.param = 'set' AND ac.original like '%openaire%';
180

    
181
-- Jochen version
182
UPDATE api
183
SET compatibilityclass = ds.openairecompatibilityclass FROM datasources ds
184
WHERE ds.id = api.datasource;
185
UPDATE api
186
SET compatibilityclass = 'driver'
187
WHERE compatibilityclass = 'driver-openaire2.0' AND typology = 'driver';
188
UPDATE api
189
SET compatibilityclass = 'openaire2.0'
190
WHERE compatibilityclass = 'driver-openaire2.0' AND typology = 'openaire';
191
UPDATE api
192
SET compatibilityclass = 'UNKNOWN'
193
WHERE compatibilityclass = 'openaire2.0-openaire3.0'
194
-- END Jochen
195

    
196
UPDATE api
197
SET (typologyclass, compatibilityclass) = ('entityregistry', 'native')
198
WHERE id = 'api_________::opendoar::0';
199
UPDATE api
200
SET (typologyclass, compatibilityclass) = ('entityregistry', 'native')
201
WHERE id = 'api_________::re3data::0';
202
UPDATE api
203
SET (typologyclass, compatibilityclass) = ('entityregistry', 'native')
204
WHERE id = 'api_________::wellcometrust::0';
205
UPDATE api
206
SET (typologyclass, compatibilityclass) = ('entityregistry', 'native')
207
WHERE id = 'api_________::corda::0';
208

    
209
ALTER TABLE api
210
	DROP COLUMN typology;
211
ALTER TABLE datasources
212
	DROP COLUMN openairecompatibilityclass;
213
ALTER TABLE datasources
214
	DROP COLUMN openairecompatibilityscheme;
215

    
216
DELETE FROM class_scheme
217
WHERE scheme = 'dnet:compatibilityLevel' AND class = 'driver-openaire2.0';
218
DELETE FROM class_scheme
219
WHERE scheme = 'dnet:compatibilityLevel' AND class = 'driver-openaire2.0-openaire3.0';
220
DELETE FROM class_scheme
221
WHERE scheme = 'dnet:compatibilityLevel' AND class = 'driver-openaire3.0';
222
DELETE FROM class_scheme
223
WHERE scheme = 'dnet:compatibilityLevel' AND class = 'openaire2.0-openaire3.0';
224
DELETE FROM class
225
WHERE code = 'driver-openaire2.0';
226
DELETE FROM class
227
WHERE code = 'driver-openaire2.0-openaire3.0';
228
DELETE FROM class
229
WHERE code = 'driver-openaire3.0';
230
DELETE FROM class
231
WHERE code = 'openaire2.0-openaire3.0';
232

    
233
DELETE FROM apicollections
234
WHERE api = 'api_________::openaire____::webcrawl::0';
235
DELETE FROM api
236
WHERE id = 'api_________::openaire____::webcrawl::0';
237

    
238
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('fileCSV', 'fileCSV', 'fileCSV');
239
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('fileCSV@@dnet:protocols', 'fileCSV', 'dnet:protocols');
240
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('files_from_mdstore', 'files_from_mdstore', 'files_from_mdstore');
241
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('files_from_mdstore@@dnet:protocols', 'files_from_mdstore', 'dnet:protocols');
242
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('files_from_metadata', 'files_from_metadata', 'files_from_metadata');
243
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('files_from_metadata@@dnet:protocols', 'files_from_metadata', 'dnet:protocols');
244
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('files_by_rpc', 'files_by_rpc', 'files_by_rpc');
245
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('files_by_rpc@@dnet:protocols', 'files_by_rpc', 'dnet:protocols');
246
INSERT INTO class (_dnet_resource_identifier_, code, name) VALUES ('filesystem', 'filesystem', 'filesystem');
247
INSERT INTO class_scheme (_dnet_resource_identifier_, class, scheme) VALUES ('filesystem@@dnet:protocols', 'filesystem', 'dnet:protocols');
248

    
249
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass)
250
VALUES ('api_________::openaire____::webcrawl::csv', 'api_________::openaire____::webcrawl::csv', 'fileCSV', 'openaire____::webcrawl', 'websource', 'native');
251
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
252
	('api_________::openaire____::webcrawl::files', 'api_________::openaire____::webcrawl::files', 'files_from_mdstore', 'openaire____::webcrawl', 'websource',
253
	 'files', 'file::WoS');
254
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
255
	('api_________::opendoar____::18::files', 'api_________::opendoar____::18::files', 'files_from_metadata', 'opendoar____::18', 'pubsrepository::unknown',
256
	 'files', 'file::PDF');
257
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
258
	('api_________::opendoar____::908::files', 'api_________::opendoar____::908::files', 'files_from_metadata', 'opendoar____::908', 'pubsrepository::unknown',
259
	 'files', 'file::PDF');
260
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
261
	('api_________::opendoar____::2367::files', 'api_________::opendoar____::2367::files', 'files_from_metadata', 'opendoar____::2367', 'pubsrepository::unknown',
262
	 'files', 'file::PDF');
263
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
264
	('api_________::opendoar____::165::files', 'api_________::opendoar____::165::files', 'files_from_metadata', 'opendoar____::165', 'pubsrepository::unknown',
265
	 'files', 'file::PDF');
266
INSERT INTO api (_dnet_resource_identifier_, id, protocolclass, datasource, typologyclass, compatibilityclass, contentdescriptionclass) VALUES
267
	('api_________::infrastruct_::openaire::jdbc', 'api_________::infrastruct_::openaire::jdbc', 'jdbc', 'infrastruct_::openaire', 'scholarcomminfra',
268
	 'openaire2.0', 'metadata');
269

    
270
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', 'jdbc:postgresql://localhost:5432', 'api_________::infrastruct_::openaire::jdbc');
271
INSERT INTO apicollections (param, original, api) VALUES ('dbName', 'dnet_openaireplus', 'api_________::infrastruct_::openaire::jdbc');
272
INSERT INTO apicollections (param, original, api) VALUES
273
	('sql', 'SELECT regexp_replace(xml, ''&(?!amp;)'', ''&'', ''g'') as xml FROM claims WHERE type = ''dmf2actions'' and set = ''userclaim_dmf''',
274
	 'api_________::infrastruct_::openaire::jdbc');
275
INSERT INTO apicollections (param, original, api) VALUES ('format', 'OAF', 'api_________::infrastruct_::openaire::jdbc');
276

    
277
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', 'file:///var/lib/dnet/wos/metadata.tsv', 'api_________::openaire____::webcrawl::csv');
278
INSERT INTO apicollections (param, original, api) VALUES ('separator', E'\\t', 'api_________::openaire____::webcrawl::csv');
279
INSERT INTO apicollections (param, original, api) VALUES ('identifier', '56', 'api_________::openaire____::webcrawl::csv');
280
INSERT INTO apicollections (param, original, api) VALUES ('header', 'true', 'api_________::openaire____::webcrawl::csv');
281
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', '', 'api_________::openaire____::webcrawl::files');
282
INSERT INTO apicollections (param, original, api) VALUES ('mdstoreId', '', 'api_________::openaire____::webcrawl::files');
283
INSERT INTO apicollections (param, original, api) VALUES ('xpath', '//column[./@isID=''true'']', 'api_________::openaire____::webcrawl::files');
284
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', '', 'api_________::opendoar____::18::files');
285
INSERT INTO apicollections (param, original, api) VALUES ('mdstoreId', '', 'api_________::opendoar____::18::files');
286
INSERT INTO apicollections (param, original, api) VALUES ('xpath', '//dc:identifier', 'api_________::opendoar____::18::files');
287
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', '', 'api_________::opendoar____::908::files');
288
INSERT INTO apicollections (param, original, api) VALUES ('mdstoreId', '', 'api_________::opendoar____::908::files');
289
INSERT INTO apicollections (param, original, api) VALUES ('xpath', '//dc:identifier', 'api_________::opendoar____::908::files');
290
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', '', 'api_________::opendoar____::2367::files');
291
INSERT INTO apicollections (param, original, api) VALUES ('mdstoreId', '', 'api_________::opendoar____::2367::files');
292
INSERT INTO apicollections (param, original, api) VALUES ('xpath', '//dc:identifier', 'api_________::opendoar____::2367::files');
293

    
294
INSERT INTO apicollections (param, original, api) VALUES ('baseUrl', '', 'api_________::opendoar____::165::files');
295
INSERT INTO apicollections (param, original, api) VALUES ('mdstoreId', '', 'api_________::opendoar____::165::files');
296
INSERT INTO apicollections (param, original, api) VALUES ('xpath', '//dc:identifier', 'api_________::opendoar____::165::files');
297

    
298
INSERT INTO apicollections (param, original, api, accessparam) VALUES ('metadata_identifier_path', '//repository/@rID', 'api_________::opendoar::0', FALSE);
299
INSERT INTO apicollections (param, original, api, accessparam)
300
VALUES ('metadata_identifier_path', '//*[local-name()=''repository'']/*[local-name()=''identifier'']', 'api_________::re3data::0', FALSE);
301
INSERT INTO apicollections (param, original, api, accessparam) VALUES ('metadata_identifier_path', '//Position', 'api_________::wellcometrust::0', FALSE);
302
INSERT INTO apicollections (param, original, api, accessparam) VALUES ('metadata_identifier_path', '//ProjectId', 'api_________::corda::0', FALSE);
303

    
304
DELETE FROM apicollections
305
WHERE param = 'splitOnElement' AND api = 'api_________::corda::0';
306
INSERT INTO apicollections (param, original, api) VALUES ('filter', '*.xml', 'api_________::corda::0');
307
INSERT INTO apicollections (param, original, api) VALUES ('username', '***', 'api_________::corda::0');
308
INSERT INTO apicollections (param, original, api) VALUES ('password', '***', 'api_________::corda::0');
309
INSERT INTO apicollections (param, original, api) VALUES ('recursive', 'false', 'api_________::corda::0');
310

    
311
UPDATE apicollections
312
SET original = 'ftp://fts.ec.europa.eu'
313
WHERE api = 'api_________::corda::0' AND param = 'baseUrl';
314
UPDATE api
315
SET protocolclass = 'ftp'
316
WHERE id = 'api_________::corda::0';
317
UPDATE api
318
SET protocolclass = 'filesystem'
319
WHERE id = 'api_________::re3data::0';
320
UPDATE apicollections
321
SET original = '/var/lib/dnet/re3data'
322
WHERE api = 'api_________::re3data::0' AND param = 'baseUrl';
323
UPDATE api
324
SET compatibilityclass = 'native'
325
WHERE id = 'api_________::datacite::0';
326

    
327
-- metadata_identifier_path for Datacite and WoS
328
INSERT INTO apicollections (param, original, api, accessparam)
329
VALUES ('metadata_identifier_path', '//*[local-name()=''header'']/*[local-name()=''identifier'']', 'api_________::datacite::0', FALSE);
330
INSERT INTO apicollections (param, original, api, accessparam)
331
VALUES ('metadata_identifier_path', '//*[local-name()=''column'' and @isID=''true'']', 'api_________::openaire____::webcrawl::csv', FALSE);
332

    
333
UPDATE apicollections
334
SET _dnet_resource_identifier_ = api || '@@' || param;
335

    
336
-- get the orgs whose legalshortname is in upper case (probably good sort name, i.e. acronym)
337
select id, legalshortname from dsm_organizations where id like 're3data%' and legalshortname ~ '^[^a-z]*$';
338
-- removed legalshortnames of re3data orgs when the legalshortname is not all uppercase
339
update dsm_organizations set legalshortname = '' where id like 're3data%' and legalshortname !~ '^[^a-z]*$';
340

    
341

    
342

    
343

    
(12-12/23)