Project

General

Profile

« Previous | Next » 

Revision 59399

changes on data model for Broker

View differences:

modules/uoa-repository-dashboard-gui/branches/new-ui/src/app/pages/repository/events/content-events-of-repo-eventslist.component.html
78 78
          <div *ngFor="let event of eventsPage.values; let item_i = index" class="md-card md-card-hover eventCard">
79 79
            <div class="md-card-content large-padding">
80 80

  
81
              <div *ngIf="event.publication.originalId" class="uk-text-meta">ID: {{event.publication.originalId}}</div>
81
              <div *ngIf="event.result.originalId" class="uk-text-meta">ID: {{event.result.originalId}}</div>
82 82

  
83
              <div *ngIf="event.publication.titles && event.publication.titles.length>0">
83
              <div *ngIf="event.result.titles && event.result.titles.length>0">
84 84
                <div class="repositoryCardHeader uk-margin-bottom uk-margin-small-top">
85
                  <h4>{{ event.publication.titles[0] }}</h4>
85
                  <h4>{{ event.result.titles[0] }}</h4>
86 86
                </div>
87 87
              </div>
88 88

  
......
180 180
                <div class="uk-margin-top uk-margin-medium-bottom small-content">
181 181
                  <div *ngFor="let subj of event.highlight.subjects; let s_index = index" class="uk-margin-small-bottom">
182 182
                    <span class="highlightIndex">{{(s_index + 1)}}. </span>
183
                    <span>{{ subj }}</span>
183
                    <span>{{ subj.value }}</span>
184 184
                  </div>
185 185
                </div>
186 186

  
......
203 203
                <div class="uk-margin-top uk-margin-medium-bottom small-content">
204 204
                  <div *ngFor="let pub of event.highlight.publications; let p_index = index" class="uk-margin-small-bottom">
205 205
                    <span class="highlightIndex">{{(p_index + 1)}}. </span>
206
                    <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
206
                    <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
207 207
                  </div>
208 208
                </div>
209 209

  
......
226 226
                <div class="uk-margin-top uk-margin-medium-bottom small-content">
227 227
                  <div *ngFor="let dataset of event.highlight.datasets; let d_index = index" class="uk-margin-small-bottom">
228 228
                    <span class="highlightIndex">{{(d_index + 1)}}. </span>
229
                    <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
229
                    <span>{{ dataset.title }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
230 230
                  </div>
231 231
                </div>
232 232

  
......
295 295
                <hr>
296 296

  
297 297
                <!--AUTHORS-->
298
                <div *ngIf="event.publication.creators && event.publication.creators.length>0" class="uk-margin-small-bottom">
298
                <div *ngIf="event.result.creators && event.result.creators.length>0" class="uk-margin-small-bottom">
299 299
                  <span class="mute-title">Author(s): </span>
300
                  <span *ngFor="let auth of event.publication.creators; let au_index = index" class="small-content">
300
                  <span *ngFor="let auth of event.result.creators; let au_index = index" class="small-content">
301 301
                    <span *ngIf="au_index>0"> | </span>
302
                    <span>{{ auth }}</span>
302
                    <span>{{ auth.fullname }}</span>
303 303
                  </span>
304 304
                </div>
305 305

  
306 306
                <!--PIDs-->
307
                <div *ngIf="event.publication.pids && event.publication.pids.length>0" class="uk-margin-small-bottom">
307
                <div *ngIf="event.result.pids && event.result.pids.length>0" class="uk-margin-small-bottom">
308 308
                  <span class="mute-title">PID(s): </span>
309
                  <span *ngFor="let pid of event.publication.pids; let p_index = index" class="small-content">
309
                  <span *ngFor="let pid of event.result.pids; let p_index = index" class="small-content">
310 310
                    <br *ngIf="p_index > 0">
311 311
                    <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
312 312
                  </span>
313 313
                </div>
314 314

  
315 315
                <!--Abstracts-->
316
                <div *ngIf="event.publication.abstracts && event.publication.abstracts.length>0" class="uk-margin-small-bottom">
316
                <div *ngIf="event.result.abstracts && event.result.abstracts.length>0" class="uk-margin-small-bottom">
317 317
                  <span class="mute-title">Abstract(s): </span>
318
                  <span *ngFor="let abs of event.publication.abstracts; let a_index = index" class="small-content">
318
                  <span *ngFor="let abs of event.result.abstracts; let a_index = index" class="small-content">
319 319
                    <br *ngIf="a_index > 0">
320 320
                    <span>
321 321
                      <read-more-text [text]="abs" [maxHeight]="83"></read-more-text>
......
324 324
                </div>
325 325

  
326 326
                <!--Projects/Relations-->
327
                <div *ngIf="event.publication.projects && event.publication.projects.length>0" class="uk-margin-small-bottom">
327
                <div *ngIf="event.result.projects && event.result.projects.length>0" class="uk-margin-small-bottom">
328 328
                  <span class="mute-title">Project(s)/Relation(s): </span>
329
                  <span *ngFor="let proj of event.publication.projects; let p_index = index" class="small-content">
329
                  <span *ngFor="let proj of event.result.projects; let p_index = index" class="small-content">
330 330
                    <br *ngIf="p_index > 0">
331 331
                    <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
332 332
                    <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
......
341 341
                </div>
342 342

  
343 343
                <!--Subjects-->
344
                <div *ngIf="event.publication.subjects && event.publication.subjects.length>0" class="uk-margin-small-bottom">
344
                <div *ngIf="event.result.subjects && event.result.subjects.length>0" class="uk-margin-small-bottom">
345 345
                  <span class="mute-title">Subject(s): </span>
346
                  <span *ngFor="let subj of event.publication.subjects; let s_index = index" class="small-content">
346
                  <span *ngFor="let subj of event.result.subjects; let s_index = index" class="small-content">
347 347
                    <span *ngIf="s_index>0"> | </span>
348
                    <span>{{ subj }}</span>
348
                    <span>{{ subj.value }}</span>
349 349
                  </span>
350 350
                </div>
351 351

  
352 352
                <!--Publications-->
353
                <div *ngIf="event.publication.publications && event.publication.publications.length>0" class="uk-margin-small-bottom">
353
                <div *ngIf="event.result.publications && event.result.publications.length>0" class="uk-margin-small-bottom">
354 354
                  <span *ngIf="this.topic.includes('PUBLICATION')" class="mute-title">{{this.lastTopicEntry}} Publication(s): </span>
355 355
                  <span *ngIf="!this.topic.includes('PUBLICATION')" class="mute-title">Publication(s): </span>
356
                  <span *ngFor="let pub of event.publication.publications; let p_index = index" class="small-content">
356
                  <span *ngFor="let pub of event.result.publications; let p_index = index" class="small-content">
357 357
                    <br *ngIf="p_index > 0">
358
                    <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
358
                    <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
359 359
                  </span>
360 360
                </div>
361 361

  
362 362
                <!--Datasets-->
363
                <div *ngIf="event.publication.datasets && event.publication.datasets.length>0" class="uk-margin-small-bottom">
363
                <div *ngIf="event.result.datasets && event.result.datasets.length>0" class="uk-margin-small-bottom">
364 364
                  <span *ngIf="this.topic.includes('DATASET')" class="mute-title">{{this.lastTopicEntry}} Dataset(s): </span>
365 365
                  <span *ngIf="!this.topic.includes('DATASET')" class="mute-title">Dataset(s): </span>
366
                  <span *ngFor="let dataset of event.publication.datasets; let d_index = index" class="small-content">
366
                  <span *ngFor="let dataset of event.result.datasets; let d_index = index" class="small-content">
367 367
                    <br *ngIf="d_index > 0">
368 368
                    <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
369 369
                  </span>
370 370
                </div>
371 371

  
372 372
                <!--Software-->
373
                <div *ngIf="event.publication.softwares && event.publication.softwares.length>0" class="uk-margin-small-bottom">
373
                <div *ngIf="event.result.softwares && event.result.softwares.length>0" class="uk-margin-small-bottom">
374 374
                  <span *ngIf="this.topic.includes('SOFTWARE')" class="mute-title">{{this.lastTopicEntry}} Software(s): </span>
375 375
                  <span *ngIf="!this.topic.includes('SOFTWARE')" class="mute-title">Software(s): </span>
376
                  <span *ngFor="let software of event.publication.softwares; let s_index = index" class="small-content">
376
                  <span *ngFor="let software of event.result.softwares; let s_index = index" class="small-content">
377 377
                    <br *ngIf="s_index > 0">
378 378
                    <span>{{ software.name }}</span>
379 379
                    <span *ngIf="software.description"> <br> {{ software.description }}</span>
......
383 383
                </div>
384 384

  
385 385
                <!--Publication Date-->
386
                <div *ngIf="event.publication.publicationdate && event.publication.publicationdate.length>0" class="uk-margin-small-bottom">
386
                <div *ngIf="event.result.publicationdate && event.result.publicationdate.length>0" class="uk-margin-small-bottom">
387 387
                  <span class="mute-title">Publication date(s): </span>
388 388
                  <span class="small-content">
389
                    {{ event.publication.publicationdate }}
389
                    {{ event.result.publicationdate }}
390 390
                  </span>
391 391
                </div>
392 392

  
393 393
                <!--Rights-->
394
                <div *ngIf="event.publication.instances && event.publication.instances.length>0" class="uk-margin-small-bottom">
394
                <div *ngIf="event.result.instances && event.result.instances.length>0" class="uk-margin-small-bottom">
395 395
                  <span class="mute-title">Rights: </span>
396
                  <span *ngFor="let l of event.publication.instances; let l_index = index" class="small-content">
396
                  <span *ngFor="let l of event.result.instances; let l_index = index" class="small-content">
397 397
                    <br *ngIf="l_index > 0">
398 398
                    <span>
399 399
                      {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b> - <a class="" href="{{ l.url }}" target="_blank">{{ l.url }}</a>
modules/uoa-repository-dashboard-gui/branches/new-ui/src/app/pages/content/content-notifications-of-subscription.component.html
53 53
            <div *ngFor="let event of eventsPage.values; let item_i = index" class="md-card md-card-hover eventCard">
54 54
              <div class="md-card-content large-padding">
55 55

  
56
                <div *ngIf="event.publication.originalId" class="uk-text-meta">ID: {{event.publication.originalId}}</div>
56
                <div *ngIf="event.result.originalId" class="uk-text-meta">ID: {{event.result.originalId}}</div>
57 57

  
58
                <div *ngIf="event.publication.titles && event.publication.titles.length>0">
58
                <div *ngIf="event.result.titles && event.result.titles.length>0">
59 59
                  <div class="repositoryCardHeader uk-margin-bottom uk-margin-small-top">
60
                    <h4>{{ event.publication.titles[0] }}</h4>
60
                    <h4>{{ event.result.titles[0] }}</h4>
61 61
                  </div>
62 62
                </div>
63 63

  
......
155 155
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
156 156
                    <div *ngFor="let subj of event.highlight.subjects; let s_index = index" class="uk-margin-small-bottom">
157 157
                      <span class="highlightIndex">{{(s_index + 1)}}. </span>
158
                      <span>{{ subj }}</span>
158
                      <span>{{ subj.value }}</span>
159 159
                    </div>
160 160
                  </div>
161 161

  
......
178 178
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
179 179
                    <div *ngFor="let pub of event.highlight.publications; let p_index = index" class="uk-margin-small-bottom">
180 180
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
181
                      <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
181
                      <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
182 182
                    </div>
183 183
                  </div>
184 184

  
......
201 201
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
202 202
                    <div *ngFor="let dataset of event.highlight.datasets; let d_index = index" class="uk-margin-small-bottom">
203 203
                      <span class="highlightIndex">{{(d_index + 1)}}. </span>
204
                      <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
204
                      <span>{{ dataset.title }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
205 205
                    </div>
206 206
                  </div>
207 207

  
......
270 270
                  <hr>
271 271

  
272 272
                  <!--AUTHORS-->
273
                  <div *ngIf="event.publication.creators && event.publication.creators.length>0" class="uk-margin-small-bottom">
273
                  <div *ngIf="event.result.creators && event.result.creators.length>0" class="uk-margin-small-bottom">
274 274
                    <span class="mute-title">Author(s): </span>
275
                    <span *ngFor="let auth of event.publication.creators; let au_index = index" class="small-content">
275
                    <span *ngFor="let auth of event.result.creators; let au_index = index" class="small-content">
276 276
                    <span *ngIf="au_index>0"> | </span>
277
                    <span>{{ auth }}</span>
277
                    <span>{{ auth.fullname }}</span>
278 278
                  </span>
279 279
                  </div>
280 280

  
281 281
                  <!--PIDs-->
282
                  <div *ngIf="event.publication.pids && event.publication.pids.length>0" class="uk-margin-small-bottom">
282
                  <div *ngIf="event.result.pids && event.result.pids.length>0" class="uk-margin-small-bottom">
283 283
                    <span class="mute-title">PID(s): </span>
284
                    <span *ngFor="let pid of event.publication.pids; let p_index = index" class="small-content">
284
                    <span *ngFor="let pid of event.result.pids; let p_index = index" class="small-content">
285 285
                    <br *ngIf="p_index > 0">
286 286
                    <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
287 287
                  </span>
288 288
                  </div>
289 289

  
290 290
                  <!--Abstracts-->
291
                  <div *ngIf="event.publication.abstracts && event.publication.abstracts.length>0" class="uk-margin-small-bottom">
291
                  <div *ngIf="event.result.abstracts && event.result.abstracts.length>0" class="uk-margin-small-bottom">
292 292
                    <span class="mute-title">Abstract(s): </span>
293
                    <span *ngFor="let abs of event.publication.abstracts; let a_index = index" class="small-content">
293
                    <span *ngFor="let abs of event.result.abstracts; let a_index = index" class="small-content">
294 294
                    <br *ngIf="a_index > 0">
295 295
                    <span>
296 296
                      <read-more-text [text]="abs" [maxHeight]="83"></read-more-text>
......
299 299
                  </div>
300 300

  
301 301
                  <!--Projects/Relations-->
302
                  <div *ngIf="event.publication.projects && event.publication.projects.length>0" class="uk-margin-small-bottom">
302
                  <div *ngIf="event.result.projects && event.result.projects.length>0" class="uk-margin-small-bottom">
303 303
                    <span class="mute-title">Project(s)/Relation(s): </span>
304
                    <span *ngFor="let proj of event.publication.projects; let p_index = index" class="small-content">
304
                    <span *ngFor="let proj of event.result.projects; let p_index = index" class="small-content">
305 305
                    <br *ngIf="p_index > 0">
306 306
                    <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
307 307
                    <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
......
316 316
                  </div>
317 317

  
318 318
                  <!--Subjects-->
319
                  <div *ngIf="event.publication.subjects && event.publication.subjects.length>0" class="uk-margin-small-bottom">
319
                  <div *ngIf="event.result.subjects && event.result.subjects.length>0" class="uk-margin-small-bottom">
320 320
                    <span class="mute-title">Subject(s): </span>
321
                    <span *ngFor="let subj of event.publication.subjects; let s_index = index" class="small-content">
321
                    <span *ngFor="let subj of event.result.subjects; let s_index = index" class="small-content">
322 322
                    <span *ngIf="s_index>0"> | </span>
323
                    <span>{{ subj }}</span>
323
                    <span>{{ subj.value }}</span>
324 324
                  </span>
325 325
                  </div>
326 326

  
327 327
                  <!--Publications-->
328
                  <div *ngIf="event.publication.publications && event.publication.publications.length>0" class="uk-margin-small-bottom">
328
                  <div *ngIf="event.result.publications && event.result.publications.length>0" class="uk-margin-small-bottom">
329 329
                    <span *ngIf="this.topic.includes('PUBLICATION')" class="mute-title">{{this.lastTopicEntry}} Publication(s): </span>
330 330
                    <span *ngIf="!this.topic.includes('PUBLICATION')" class="mute-title">Publication(s): </span>
331
                    <span *ngFor="let pub of event.publication.publications; let p_index = index" class="small-content">
331
                    <span *ngFor="let pub of event.result.publications; let p_index = index" class="small-content">
332 332
                    <br *ngIf="p_index > 0">
333
                    <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
333
                    <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
334 334
                  </span>
335 335
                  </div>
336 336

  
337 337
                  <!--Datasets-->
338
                  <div *ngIf="event.publication.datasets && event.publication.datasets.length>0" class="uk-margin-small-bottom">
338
                  <div *ngIf="event.result.datasets && event.result.datasets.length>0" class="uk-margin-small-bottom">
339 339
                    <span *ngIf="this.topic.includes('DATASET')" class="mute-title">{{this.lastTopicEntry}} Dataset(s): </span>
340 340
                    <span *ngIf="!this.topic.includes('DATASET')" class="mute-title">Dataset(s): </span>
341
                    <span *ngFor="let dataset of event.publication.datasets; let d_index = index" class="small-content">
341
                    <span *ngFor="let dataset of event.result.datasets; let d_index = index" class="small-content">
342 342
                    <br *ngIf="d_index > 0">
343
                    <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
343
                    <span>{{ dataset.title }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
344 344
                  </span>
345 345
                  </div>
346 346

  
347 347
                  <!--Software-->
348
                  <div *ngIf="event.publication.softwares && event.publication.softwares.length>0" class="uk-margin-small-bottom">
348
                  <div *ngIf="event.result.softwares && event.result.softwares.length>0" class="uk-margin-small-bottom">
349 349
                    <span *ngIf="this.topic.includes('SOFTWARE')" class="mute-title">{{this.lastTopicEntry}} Software(s): </span>
350 350
                    <span *ngIf="!this.topic.includes('SOFTWARE')" class="mute-title">Software(s): </span>
351
                    <span *ngFor="let software of event.publication.softwares; let s_index = index" class="small-content">
351
                    <span *ngFor="let software of event.result.softwares; let s_index = index" class="small-content">
352 352
                    <br *ngIf="s_index > 0">
353 353
                    <span>{{ software.name }}</span>
354 354
                    <span *ngIf="software.description"> <br> {{ software.description }}</span>
......
358 358
                  </div>
359 359

  
360 360
                  <!--Publication Date-->
361
                  <div *ngIf="event.publication.publicationdate && event.publication.publicationdate.length>0" class="uk-margin-small-bottom">
361
                  <div *ngIf="event.result.publicationdate && event.result.publicationdate.length>0" class="uk-margin-small-bottom">
362 362
                    <span class="mute-title">Publication date(s): </span>
363 363
                    <span class="small-content">
364
                    {{ event.publication.publicationdate }}
364
                    {{ event.result.publicationdate }}
365 365
                  </span>
366 366
                  </div>
367 367

  
368 368
                  <!--Rights-->
369
                  <div *ngIf="event.publication.instances && event.publication.instances.length>0" class="uk-margin-small-bottom">
369
                  <div *ngIf="event.result.instances && event.result.instances.length>0" class="uk-margin-small-bottom">
370 370
                    <span class="mute-title">Rights: </span>
371
                    <span *ngFor="let l of event.publication.instances; let l_index = index" class="small-content">
371
                    <span *ngFor="let l of event.result.instances; let l_index = index" class="small-content">
372 372
                    <br *ngIf="l_index > 0">
373 373
                    <span>
374 374
                      {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b> - <a class="" href="{{ l.url }}" target="_blank">{{ l.url }}</a>
modules/uoa-repository-dashboard-gui/branches/new-ui/src/app/domain/typeScriptClasses.ts
384 384
    otherValue: string;
385 385
}
386 386

  
387
export class Dataset implements IsSerializable {
388
    titles: string[];
389
    collectedFrom: string[];
390
    pids: Pid[];
391
    instances: Instance[];
387
export class OaBrokerRelatedDataset implements IsSerializable {
388
    openaireId: string;
389
    originalId: string;
390
    title: string;
391
    collectedFrom: string;
392
    pids: OaBrokerTypedValue[];
393
    instances: OaBrokerInstance[];
392 394
}
393 395

  
394 396
export class DatasourcesBroker implements IsSerializable {
......
397 399
    datasourcesOfOthers: Tuple<BrowseEntry, string>[];
398 400
}
399 401

  
402
export class OaBrokerRelatedDatasource implements IsSerializable {
403
  openaireId: string;
404
  name: string;
405
  type: string;
406
  relType: string;
407
}
408

  
400 409
export class EventsPage implements IsSerializable {
401 410
    datasource: string;
402 411
    topic: string;
403 412
    currPage: number;
404 413
    totalPages: number;
405 414
    total: number;
406
    values: OpenAireEventPayload[];
415
    values: OaBrokerEventPayload[];
407 416
}
408 417

  
409
export class ExternalReference implements IsSerializable {
418
export class OaBrokerExternalReference implements IsSerializable {
410 419
    url: string;
411 420
    sitename: string;
412 421
    type: string;
413 422
    refidentifier: string;
414 423
}
415 424

  
416
export class Instance implements IsSerializable {
425
export class OaBrokerInstance implements IsSerializable {
417 426
    url: string;
418 427
    license: string;
419 428
    hostedby: string;
420 429
    instancetype: string;
421 430
}
422 431

  
423
export class Journal implements IsSerializable {
432
export class OaBrokerJournal implements IsSerializable {
424 433
    name: string;
425 434
    issn: string;
426 435
    eissn: string;
......
434 443
    listParams: ConditionParams[];
435 444
}
436 445

  
437
export class OpenAireEventPayload implements IsSerializable {
438
    publication: Publication;
439
    highlight: Publication;
440
    provenance: Provenance;
446
export class OaBrokerEventPayload implements IsSerializable {
447
    result: OaBrokerMainEntity; // old publication: Publication; ??
448
    highlight: OaBrokerMainEntity;
449
    provenance: OaBrokerProvenance;
441 450
    trust: number;
442 451
}
443 452

  
453
export class OaBrokerAuthor implements IsSerializable {
454
  fullname: string;
455
  orcid: string;
456
}
457

  
444 458
export class OpenaireSubscription implements IsSerializable {
445 459
    subscriber: string;
446 460
    frequency: NotificationFrequency;
......
448 462
    query: AdvQueryObject;
449 463
}
450 464

  
451
export class Pid implements IsSerializable {
465
export class OaBrokerTypedValue implements IsSerializable {
452 466
    value: string;
453 467
    type: string;
454 468
}
455 469

  
456
export class Project implements IsSerializable {
470
export class OaBrokerProject implements IsSerializable {
471
    openaireId: string;
457 472
    code: string;
458 473
    acronym: string;
459 474
    title: string;
......
462 477
    jurisdiction: string;
463 478
}
464 479

  
465
export class Provenance implements IsSerializable {
480
export class OaBrokerProvenance implements IsSerializable {
466 481
    repositoryName: string;
482
    repositoryType: string;
467 483
    url: string;
468 484
    id: string;
469 485
}
470 486

  
471
export class Publication implements IsSerializable {
487
export class OaBrokerRelatedPublication implements IsSerializable {
488
  openaireId: string;
489
  originalId: string;
490
  title: string;
491
  collectedFrom: string;
492
  pids: OaBrokerTypedValue[];
493
  instances: OaBrokerInstance[];
494
  relType: string;
495
}
496

  
497
export class OaBrokerMainEntity implements IsSerializable {
498
    openaireId: string;
472 499
    originalId: string;
500
    typology: string;
473 501
    titles: string[];
474 502
    abstracts: string[];
475 503
    language: string;
476
    subjects: string[];
477
    creators: string[];
504
    subjects: OaBrokerTypedValue[];
505
    creators: OaBrokerAuthor[];
478 506
    publicationdate: string;
479 507
    publisher: string;
480 508
    embargoenddate: string;
481 509
    contributor: string[];
482
    journal: Journal;
483
    collectedFrom: string[];
484
    pids: Pid[];
485
    instances: Instance[];
486
    externalReferences: ExternalReference[];
487
    publications: Publication[];
488
    projects: Project[];
489
    datasets: Dataset[];
490
    softwares: Software[];
510
    journal: OaBrokerJournal;
511
    pids: OaBrokerTypedValue[];
512
    instances: OaBrokerInstance[];
513
    externalReferences: OaBrokerExternalReference[];
514
    publications: OaBrokerRelatedPublication[];
515
    projects: OaBrokerProject[];
516
    datasets: OaBrokerRelatedDataset[];
517
    softwares: OaBrokerRelatedSoftware[];
518
    datasources: OaBrokerRelatedDatasource[];
491 519
}
492 520

  
493 521
export class Range implements IsSerializable {
......
504 532
    lastNotificationDate: Date;
505 533
}
506 534

  
507
export class Software implements IsSerializable {
535
export class OaBrokerRelatedSoftware implements IsSerializable {
536
  openaireId: string;
508 537
  name: string;
509 538
  description: string;
510 539
  landingPage: string;

Also available in: Unified diff