1 |
60754
|
k.triantaf
|
import {Component, OnDestroy, OnInit} from "@angular/core";
|
2 |
|
|
import {StakeholderService} from "../openaireLibrary/monitor/services/stakeholder.service";
|
3 |
|
|
import {Stakeholder} from "../openaireLibrary/monitor/entities/stakeholder";
|
4 |
|
|
import {Subscription} from "rxjs";
|
5 |
|
|
import {Meta, Title} from "@angular/platform-browser";
|
6 |
|
|
import {SEOService} from "../openaireLibrary/sharedComponents/SEO/SEO.service";
|
7 |
|
|
import {properties} from "../../environments/environment";
|
8 |
|
|
import {ActivatedRoute, Router} from "@angular/router";
|
9 |
|
|
|
10 |
|
|
@Component({
|
11 |
|
|
selector: 'terminology',
|
12 |
|
|
template: `
|
13 |
|
|
<div page-content>
|
14 |
|
|
<div inner>
|
15 |
|
|
<div *ngIf="stakeholder" class="uk-container uk-container-large uk-section-small">
|
16 |
|
|
<h1 class="uk-text-center uk-h2">
|
17 |
|
|
Terminology and construction
|
18 |
|
|
</h1>
|
19 |
|
|
<div class="uk-margin-large-top">
|
20 |
|
|
<ul class="uk-tab admin customTabs uk-margin-medium-bottom" uk-tab>
|
21 |
|
|
<li [class.uk-active]="tab === 'entities'"><a (click)="tab = 'entities'"><span
|
22 |
|
|
class="title">Entities</span></a></li>
|
23 |
60768
|
k.triantaf
|
<li [class.uk-active]="tab === 'attributes'"><a (click)="tab = 'attributes'"><span class="title">Attributes of Research Results</span></a>
|
24 |
60754
|
k.triantaf
|
</li>
|
25 |
|
|
</ul>
|
26 |
|
|
<table *ngIf="tab === 'entities'">
|
27 |
|
|
<tr>
|
28 |
|
|
<th>Research Outputs</th>
|
29 |
|
|
<td>
|
30 |
|
|
<div>There are currently four different types of research outputs types in the OpenAIRE Research
|
31 |
|
|
Graph:
|
32 |
|
|
</div>
|
33 |
|
|
<ul class="portal-circle">
|
34 |
|
|
<li>Publication</li>
|
35 |
|
|
<li>Dataset</li>
|
36 |
|
|
<li>Software</li>
|
37 |
|
|
<li>Other Research Products</li>
|
38 |
|
|
</ul>
|
39 |
|
|
<div class="uk-margin-small-top">
|
40 |
|
|
OpenAIRE deduplicates (merges) different records or research outputs and keeps the metadata of all
|
41 |
|
|
instances.
|
42 |
|
|
</div>
|
43 |
|
|
</td>
|
44 |
|
|
</tr>
|
45 |
|
|
<tr>
|
46 |
|
|
<th>Publication</th>
|
47 |
|
|
<td>Research outputs intended for human reading (published articles, pre-prints, conference papers,
|
48 |
|
|
presentations, technical reports, etc.)
|
49 |
|
|
</td>
|
50 |
|
|
</tr>
|
51 |
|
|
<tr>
|
52 |
|
|
<th>Dataset</th>
|
53 |
|
|
<td>Research data (granularity is not defined by OpenAIRE, which reflects the granularity supported by
|
54 |
|
|
the sources from which the description of the dataset has been collected)
|
55 |
|
|
</td>
|
56 |
|
|
</tr>
|
57 |
|
|
<tr>
|
58 |
|
|
<th>Software</th>
|
59 |
|
|
<td>Source code or software package developed and/or used in a research context.</td>
|
60 |
|
|
</tr>
|
61 |
|
|
<tr>
|
62 |
|
|
<th>Other Research Product</th>
|
63 |
|
|
<td>Anything that does not fall in the previous categories (e.g. workflow, methods, protocols).</td>
|
64 |
|
|
</tr>
|
65 |
|
|
</table>
|
66 |
|
|
<table *ngIf="tab === 'attributes'">
|
67 |
|
|
<tr>
|
68 |
|
|
<th>Organization & Country</th>
|
69 |
|
|
<td>
|
70 |
60767
|
k.triantaf
|
<p><span class="uk-text-bold">For research outputs:</span> The affiliated organizations of its authors (and their country).</p>
|
71 |
|
|
<p><span class="uk-text-bold">For projects:</span> The organizations participating in the project (i.e. beneficiaries of the grant), and
|
72 |
60754
|
k.triantaf
|
their countries (when available).
|
73 |
|
|
</p>
|
74 |
|
|
<p>
|
75 |
60767
|
k.triantaf
|
<span class="uk-text-bold">Country code mapping: </span>
|
76 |
60754
|
k.triantaf
|
<a href="https://api.openaire.eu/vocabularies/dnet:countries" target="_blank">
|
77 |
|
|
https://api.openaire.eu/vocabularies/dnet:countries</a>
|
78 |
|
|
</p>
|
79 |
|
|
</td>
|
80 |
|
|
</tr>
|
81 |
|
|
<tr>
|
82 |
|
|
<th>Type</th>
|
83 |
|
|
<td>
|
84 |
|
|
<p>The type of research output (e.g. a publication can be a pre-print, conference proceeding, article,
|
85 |
|
|
etc.)</p>
|
86 |
60767
|
k.triantaf
|
<p><span class="uk-text-bold">Resource type mapping: </span>
|
87 |
60754
|
k.triantaf
|
<a href="https://api.openaire.eu/vocabularies/dnet:result_typologies" target="_blank">https://api.openaire.eu/vocabularies/dnet:result_typologies</a>
|
88 |
|
|
(click on the code to see the specific types for each result type)
|
89 |
|
|
</p>
|
90 |
|
|
</td>
|
91 |
|
|
</tr>
|
92 |
|
|
<tr>
|
93 |
|
|
<th>Access mode</th>
|
94 |
|
|
<td>
|
95 |
|
|
<p>The best available (across all instances) access rights of a research output.</p>
|
96 |
|
|
<p>Types: open, restricted, closed, embargo (= closed for a specific period of time, then open)</p>
|
97 |
|
|
</td>
|
98 |
|
|
</tr>
|
99 |
|
|
<tr>
|
100 |
|
|
<th>PID (persistent identifier)</th>
|
101 |
|
|
<td>
|
102 |
|
|
<p>A long-lasting reference to a resource</p>
|
103 |
60767
|
k.triantaf
|
<p><span class="uk-text-bold">Types: </span> <a href="http://api.openaire.eu/vocabularies/dnet:pid_types" target="_blank">http://api.openaire.eu/vocabularies/dnet:pid_types</a>
|
104 |
60754
|
k.triantaf
|
</p>
|
105 |
|
|
</td>
|
106 |
|
|
</tr>
|
107 |
|
|
<tr>
|
108 |
|
|
<th>Context</th>
|
109 |
|
|
<td>Related research community/initiative/infrastructure</td>
|
110 |
|
|
</tr>
|
111 |
|
|
<tr>
|
112 |
|
|
<th>Journal</th>
|
113 |
|
|
<td>The scientific journal an article is published in.</td>
|
114 |
|
|
</tr>
|
115 |
|
|
<tr>
|
116 |
|
|
<th>Publisher</th>
|
117 |
|
|
<td>The publisher of the venue (journal, book, etc.) of a research output</td>
|
118 |
|
|
</tr>
|
119 |
|
|
<tr>
|
120 |
|
|
<th>Content Provider (Datasources)</th>
|
121 |
|
|
<td>
|
122 |
|
|
<p>The different data sources ingested in the OpenAIRE Research Graph.</p>
|
123 |
60767
|
k.triantaf
|
<div class="uk-text-bold">Content Provider Types:</div>
|
124 |
60754
|
k.triantaf
|
<ul class="portal-circle">
|
125 |
|
|
<li>Repositories</li>
|
126 |
|
|
<li>Open Access Publishers & Journals</li>
|
127 |
|
|
<li>Aggregators</li>
|
128 |
|
|
<li>Entity Registries</li>
|
129 |
|
|
<li>Journal Aggregators</li>
|
130 |
|
|
<li>CRIS (Current Research Information System)</li>
|
131 |
|
|
</ul>
|
132 |
|
|
</td>
|
133 |
|
|
</tr>
|
134 |
|
|
<tr>
|
135 |
|
|
<th>Repository</th>
|
136 |
|
|
<td>Information systems where scientists upload the bibliographic metadata and payloads of their
|
137 |
|
|
research outputs (e.g. PDFs of their scientific articles, CSVs of their data, archive with their
|
138 |
|
|
software), due to obligations from their organizations, their funders, or due to community practices
|
139 |
|
|
(e.g. ArXiv, Europe PMC, Zenodo).
|
140 |
|
|
</td>
|
141 |
|
|
</tr>
|
142 |
|
|
<tr>
|
143 |
|
|
<th>Open Access Publishers & Journals</th>
|
144 |
|
|
<td>Information systems of open access publishers or relative journals, which offer bibliographic
|
145 |
|
|
metadata and PDFs of their published articles.
|
146 |
|
|
</td>
|
147 |
|
|
</tr>
|
148 |
|
|
<tr>
|
149 |
|
|
<th>Aggregators</th>
|
150 |
|
|
<td>Information systems that collect descriptive metadata about research products from multiple sources
|
151 |
|
|
in order to enable cross-data source discovery of given research products. Examples are DataCite,
|
152 |
|
|
BASE, DOAJ.
|
153 |
|
|
</td>
|
154 |
|
|
</tr>
|
155 |
|
|
<tr>
|
156 |
|
|
<th>Entity Registries</th>
|
157 |
|
|
<td>Information systems created with the intent of maintaining authoritative registries of given
|
158 |
|
|
entities in the scholarly communication, such as OpenDOAR for the institutional repositories, re3data
|
159 |
|
|
for the data repositories, CORDA and other funder databases for projects and funding information.
|
160 |
|
|
</td>
|
161 |
|
|
</tr>
|
162 |
|
|
<tr>
|
163 |
|
|
<th>CRIS (Current Research Information System)</th>
|
164 |
|
|
<td>Information systems adopted by research and academic organizations to keep track of their research
|
165 |
|
|
administration records and relative results; examples of CRIS content are articles or datasets funded
|
166 |
|
|
by projects, their principal investigators, facilities acquired thanks to funding, etc.
|
167 |
|
|
</td>
|
168 |
|
|
</tr>
|
169 |
|
|
</table>
|
170 |
60758
|
k.triantaf
|
<div class="uk-text-small uk-margin-small-top">
|
171 |
|
|
<img src="assets/common-assets/graph.svg" style="opacity: 0.4">
|
172 |
|
|
<span class="uk-margin-small-left uk-text-baseline uk-text-muted">More information for <a
|
173 |
|
|
href="https://graph.openaire.eu" class="graph-color">OpenAIRE Research Graph</a>.</span>
|
174 |
|
|
</div>
|
175 |
60754
|
k.triantaf
|
</div>
|
176 |
|
|
</div>
|
177 |
|
|
</div>
|
178 |
|
|
</div>
|
179 |
|
|
`,
|
180 |
|
|
styleUrls: ['terminology.component.css']
|
181 |
|
|
})
|
182 |
|
|
export class TerminologyComponent implements OnInit, OnDestroy {
|
183 |
|
|
|
184 |
|
|
public stakeholder: Stakeholder;
|
185 |
|
|
public tab: 'entities' | 'attributes' = 'entities';
|
186 |
|
|
private subscriptions: any[] = [];
|
187 |
|
|
|
188 |
|
|
constructor(private stakeholderService: StakeholderService,
|
189 |
|
|
private seoService: SEOService,
|
190 |
|
|
private _meta: Meta,
|
191 |
|
|
private _router: Router,
|
192 |
|
|
private route: ActivatedRoute,
|
193 |
|
|
private _title: Title) {
|
194 |
|
|
}
|
195 |
|
|
|
196 |
|
|
ngOnInit() {
|
197 |
|
|
this.subscriptions.push(this.route.fragment.subscribe(tab => {
|
198 |
|
|
if (tab === 'attributes') {
|
199 |
|
|
this.tab = tab;
|
200 |
|
|
} else {
|
201 |
|
|
this.tab = 'entities';
|
202 |
|
|
}
|
203 |
|
|
}));
|
204 |
|
|
this.subscriptions.push(this.stakeholderService.getStakeholderAsObservable().subscribe(stakeholder => {
|
205 |
|
|
this.stakeholder = stakeholder;
|
206 |
|
|
if (this.stakeholder) {
|
207 |
|
|
/* Metadata */
|
208 |
|
|
const url = properties.domain + properties.baseLink + this._router.url;
|
209 |
|
|
this.seoService.createLinkForCanonicalURL(url, false);
|
210 |
|
|
this._meta.updateTag({content: url}, "property='og:url'");
|
211 |
|
|
const description = "Terminology | " + this.stakeholder.name;
|
212 |
|
|
const title = "Terminology | " + this.stakeholder.name;
|
213 |
|
|
this._meta.updateTag({content: description}, "name='description'");
|
214 |
|
|
this._meta.updateTag({content: description}, "property='og:description'");
|
215 |
|
|
this._meta.updateTag({content: title}, "property='og:title'");
|
216 |
|
|
this._title.setTitle(title);
|
217 |
|
|
}
|
218 |
|
|
}));
|
219 |
|
|
}
|
220 |
|
|
|
221 |
|
|
ngOnDestroy() {
|
222 |
|
|
this.subscriptions.forEach(subscription => {
|
223 |
|
|
if (subscription instanceof Subscription) {
|
224 |
|
|
subscription.unsubscribe();
|
225 |
|
|
}
|
226 |
|
|
});
|
227 |
|
|
}
|
228 |
|
|
}
|