Project

General

Profile

« Previous | Next » 

Revision 56935

publication identifiers rid of funder DOIs

View differences:

modules/dnet-openaireplus-profiles/trunk/src/main/resources/eu/dnetlib/test/profiles/TransformationRuleDSResources/TransformationRuleDSResourceType/core_springer2oaf.xml
1
<RESOURCE_PROFILE>
2
    <HEADER>
3
        <RESOURCE_IDENTIFIER value="dff3a83e-97a3-4a8b-9e57-7aed12804f30_VHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZXMvVHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZVR5cGU="/>
4
        <RESOURCE_TYPE value="TransformationRuleDSResourceType"/>
5
        <RESOURCE_KIND value="TransformationRuleDSResources"/>
6
        <RESOURCE_URI value=""/>
7
        <DATE_OF_CREATION value="2019-07-30T09:21:20+00:00"/>
8
    </HEADER>
9
    <BODY>
10
        <CONFIGURATION>
11
            <IMPORTED/>
12
            <SCRIPT>
13
                <TITLE>core_springer2oaf</TITLE>
14
                <CODE>
15
                    
16
&lt;xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
17
    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/"
18
    xmlns:dr="http://www.driver-repository.eu/namespace/dr"
19
    xmlns:dri="http://www.driver-repository.eu/namespace/dri"
20
    xmlns:oaf="http://namespace.openaire.eu/oaf" xmlns:date="http://exslt.org/dates-and-times"
21
    xmlns:TransformationFunction="eu.dnetlib.data.collective.transformation.core.xsl.ext.TransformationFunctionProxy"
22
    extension-element-prefixes="date TransformationFunction" exclude-result-prefixes="xs TransformationFunction" version="2.0"&gt;
23
    
24
    &lt;xsl:output omit-xml-declaration="yes" indent="yes"/&gt;
25
    &lt;xsl:param name="varOfficialName"/&gt;
26
    &lt;xsl:param name="varDataSourceId"/&gt;
27
    &lt;xsl:variable name="tf" select="TransformationFunction:getInstance()"/&gt;
28

  
29
  &lt;xsl:param name="varFP7" select = "'corda_______::'"/&gt;
30
  &lt;xsl:param name="varH2020" select = "'corda__h2020::'"/&gt;
31
  &lt;xsl:param name="varAKA" select = "'aka_________::'"/&gt;
32
  &lt;xsl:param name="varARC" select = "'arc_________::'"/&gt;
33
  &lt;xsl:param name="varCONICYT" select = "'conicytf____::'"/&gt;
34
  &lt;xsl:param name="varDFG" select = "'dfgf________::'"/&gt;
35
  &lt;xsl:param name="varFCT" select = "'fct_________::'"/&gt;
36
  &lt;xsl:param name="varFWF" select = "'fwf_________::'"/&gt;
37
  &lt;xsl:param name="varHRZZ" select = "'irb_hr______::'"/&gt;  
38
  &lt;xsl:param name="varMESTD" select = "'mestd_______::'"/&gt;
39
  &lt;xsl:param name="varMZOS" select = "'irb_hr______::'"/&gt;
40
  &lt;xsl:param name="varNHMRC" select = "'nhmrc_______::'"/&gt;
41
  &lt;xsl:param name="varNIH" select = "'nih_________::'"/&gt;
42
  &lt;xsl:param name="varNSF" select = "'nsf_________::'"/&gt;
43
  &lt;xsl:param name="varNWO" select = "'nwo_________::'"/&gt;
44
  &lt;xsl:param name="varRCUK" select = "'rcuk________::'"/&gt;
45
  &lt;xsl:param name="varSFI" select ="'sfi_________::'"/&gt;
46
  &lt;xsl:param name="varSGOV" select = "'sgov________::'"/&gt;
47
  &lt;xsl:param name="varSNSF" select = "'snsf________::'"/&gt;
48
  &lt;xsl:param name="varTARA" select = "'taraexp_____::'"/&gt;
49
  &lt;xsl:param name="varTUBITAK" select = "'tubitakf____::'"/&gt;
50
  &lt;xsl:param name="varWT" select = "'wt__________::'"/&gt;
51
    
52
    &lt;xsl:variable name="issn" select=".//ISSN"/&gt;
53
    &lt;xsl:variable name="volume" select=".//volume"/&gt;
54
    &lt;xsl:variable name="licence" select=".//license/URL"/&gt;
55
    &lt;xsl:variable name="issue" select=".//issue"/&gt;
56
    &lt;xsl:variable name="spage" select="normalize-space(tokenize(.//page,'-')[1])"/&gt;
57
    &lt;xsl:variable name="epage" select="normalize-space(tokenize(.//page,'-')[2])"/&gt;
58
    &lt;xsl:template match="publisher"&gt;
59
        &lt;dc:publisher&gt;
60
            &lt;xsl:value-of select="."/&gt;
61
        &lt;/dc:publisher&gt;
62
    &lt;/xsl:template&gt;
63
    &lt;xsl:template match="license"&gt;
64
        &lt;dc:rights&gt;
65
            &lt;xsl:value-of select="./URL"/&gt;
66
        &lt;/dc:rights&gt;
67
        &lt;oaf:license&gt;
68
            &lt;xsl:value-of select="./URL"/&gt;
69
        &lt;/oaf:license&gt;
70
    &lt;/xsl:template&gt;
71
    &lt;xsl:template name="terminate"&gt;
72
    &lt;xsl:message terminate="yes"&gt;
73
    record is not compliant, transformation is interrupted.
74
    &lt;/xsl:message&gt;
75
    &lt;/xsl:template&gt;
76
    &lt;xsl:template match="/"&gt;
77
        &lt;xsl:choose&gt;
78
            &lt;xsl:when test=".//error or string-length(.//title) = 0"&gt;
79
                &lt;xsl:call-template name="terminate"/&gt;
80
            &lt;/xsl:when&gt;
81
            &lt;xsl:otherwise&gt;
82
                &lt;record&gt;
83
                    &lt;header&gt;
84
                        &lt;xsl:copy-of select="//*[local-name() = 'header']/*" copy-namespaces="no"/&gt;
85
                        &lt;dr:dateOfTransformation&gt;
86
                            &lt;xsl:value-of select="date:date-time()"/&gt;
87
                        &lt;/dr:dateOfTransformation&gt;
88
                    &lt;/header&gt;
89
                    &lt;metadata&gt;
90
                        &lt;dc:language&gt;eng&lt;/dc:language&gt;
91
                        &lt;oaf:accessrights&gt;OPEN&lt;/oaf:accessrights&gt;
92
                        &lt;oaf:hostedBy id="openaire____::SpringerOA"
93
                            name="SpringerOpen"/&gt;
94
                        &lt;oaf:collectedFrom&gt;
95
                            &lt;xsl:attribute name="name"&gt;
96
                                &lt;xsl:value-of select="$varOfficialName"/&gt;
97
                            &lt;/xsl:attribute&gt;
98
                            &lt;xsl:attribute name="id"&gt;
99
                                &lt;xsl:value-of select="$varDataSourceId"/&gt;
100
                            &lt;/xsl:attribute&gt;
101
                        &lt;/oaf:collectedFrom&gt;
102
                        
103
                        &lt;xsl:apply-templates select=".//*"/&gt;
104
                    &lt;/metadata&gt;
105
                    &lt;xsl:copy-of select="//*[local-name() = 'about']/*" copy-namespaces="no"/&gt;
106
                &lt;/record&gt;
107
            &lt;/xsl:otherwise&gt;
108
        &lt;/xsl:choose&gt;
109
      &lt;!--  &lt;xsl:if test="not(.//error) and string-length(.//title) &gt; 0"&gt;
110
            &lt;record&gt;
111
                &lt;header&gt;
112
                    &lt;xsl:copy-of select="//*[local-name() = 'header']/*" copy-namespaces="no"/&gt;
113
                    &lt;dr:dateOfTransformation&gt;
114
                        &lt;xsl:value-of select="date:date-time()"/&gt;
115
                    &lt;/dr:dateOfTransformation&gt;
116
                &lt;/header&gt;
117
                &lt;metadata&gt;
118
                    &lt;dc:language&gt;eng&lt;/dc:language&gt;
119
                    &lt;oaf:accessrights&gt;OPEN&lt;/oaf:accessrights&gt;
120
                    &lt;oaf:hostedBy id="openaire____::SpringerOA"
121
                        name="SpringerOpen"/&gt;
122
                    &lt;oaf:collectedFrom&gt;
123
                        &lt;xsl:attribute name="name"&gt;
124
                            &lt;xsl:value-of select="$varOfficialName"/&gt;
125
                        &lt;/xsl:attribute&gt;
126
                        &lt;xsl:attribute name="id"&gt;
127
                            &lt;xsl:value-of select="$varDataSourceId"/&gt;
128
                        &lt;/xsl:attribute&gt;
129
                    &lt;/oaf:collectedFrom&gt;
130
                    
131
                    &lt;xsl:apply-templates select=".//*"/&gt;
132
                &lt;/metadata&gt;
133
                &lt;xsl:copy-of select="//*[local-name() = 'about']/*" copy-namespaces="no"/&gt;
134
            &lt;/record&gt;
135
        &lt;/xsl:if&gt;
136
        --&gt;
137
    &lt;/xsl:template&gt;
138
    
139
    
140
    &lt;xsl:template match="title"&gt;
141
        &lt;dc:title&gt;
142
            &lt;xsl:value-of select="normalize-space(.)"/&gt;
143
        &lt;/dc:title&gt;
144
    &lt;/xsl:template&gt;
145
    
146
    &lt;xsl:template match="author[string-length(./family) + string-length(./given) &gt; 0]"&gt;
147
        &lt;dc:creator&gt;
148
            &lt;xsl:value-of select="concat(./family, ', ', ./given)"/&gt;
149
        &lt;/dc:creator&gt;
150
    &lt;/xsl:template&gt;
151
    
152
    &lt;xsl:template match="created"&gt;
153
        &lt;xsl:variable name="d"&gt;
154
            &lt;xsl:variable name="date" select=".//array"/&gt;
155
            
156
            &lt;xsl:value-of select="string-join(($date[1], $date[2], $date[3]), '-')"/&gt;
157
        &lt;/xsl:variable&gt;
158
        
159
        &lt;dc:date&gt;
160
            &lt;xsl:value-of select="$d"/&gt;
161
        &lt;/dc:date&gt;
162
        
163
        
164
    &lt;/xsl:template&gt;
165
    
166
    &lt;xsl:template match="resource/DOI"&gt;
167
        &lt;dc:identifier&gt;
168
            &lt;xsl:value-of select="concat('http://dx.doi.org/', .)"/&gt;
169
        &lt;/dc:identifier&gt;
170
        &lt;oaf:identifier identifierType="doi"&gt;
171
            &lt;xsl:value-of select="."/&gt;
172
        &lt;/oaf:identifier&gt;
173
    &lt;/xsl:template&gt;
174
    
175
    &lt;xsl:template match="type"&gt;
176
        &lt;xsl:choose&gt;
177
            &lt;xsl:when test=". eq 'conference-paper'"&gt;
178
                &lt;dc:type&gt;
179
                    &lt;xsl:value-of select="string('info:eu-repo/semantics/conferenceObject')"/&gt;
180
                &lt;/dc:type&gt;
181
                &lt;dc:type&gt;
182
                    &lt;xsl:value-of select="string('conference paper')"/&gt;
183
                &lt;/dc:type&gt;
184
                &lt;xsl:variable name='varCobjCategory' select="'0004'" /&gt;
185
                &lt;xsl:variable name='varSuperType' select="TransformationFunction:convertString($tf, $varCobjCategory, 'SuperTypes')" /&gt;
186
               &lt;dr:CobjCategory&gt;
187
                       &lt;xsl:attribute name="type" select="$varSuperType"/&gt;
188
                       &lt;xsl:value-of select="$varCobjCategory" /&gt;
189
                &lt;/dr:CobjCategory&gt;
190
            &lt;/xsl:when&gt;
191
            &lt;xsl:when test=". eq 'journal-article'"&gt;
192
                &lt;dc:type&gt;
193
                    &lt;xsl:value-of select="string('info:eu-repo/semantics/article')"/&gt;
194
                &lt;/dc:type&gt;
195
                &lt;dc:type&gt;
196
                    &lt;xsl:value-of select="string('journal article')"/&gt;
197
                &lt;/dc:type&gt;
198
               &lt;xsl:variable name='varCobjCategory' select="'0001'" /&gt;
199
                &lt;xsl:variable name='varSuperType' select="TransformationFunction:convertString($tf, $varCobjCategory, 'SuperTypes')" /&gt;                
200
               &lt;dr:CobjCategory&gt;
201
                       &lt;xsl:attribute name="type" select="$varSuperType"/&gt;
202
                       &lt;xsl:value-of select="$varCobjCategory" /&gt;
203
                &lt;/dr:CobjCategory&gt;
204
                &lt;xsl:choose&gt;
205
                    &lt;xsl:when test="count($issn) &gt; 0"&gt;
206
                        &lt;oaf:journal issn="{$issn[1]}"
207
                            vol="{$volume}"
208
                            iss="{$issue}"
209
                            sp="{$spage}"
210
                            ep="{$epage}"
211
                            &gt;
212
                            &lt;xsl:value-of select="normalize-space(../container-title)"/&gt;
213
                        &lt;/oaf:journal&gt;
214
                    &lt;/xsl:when&gt;
215
                &lt;/xsl:choose&gt;
216
                
217
            &lt;/xsl:when&gt;
218
            &lt;xsl:when test=". eq book-chapter"&gt;
219
                &lt;dc:type&gt;
220
                    &lt;xsl:value-of select="string('info:eu-repo/semantics/bookPart')"/&gt;
221
                &lt;/dc:type&gt;
222
                &lt;dc:type&gt;
223
                    &lt;xsl:value-of select="string('book chapter')"/&gt;
224
                &lt;/dc:type&gt;
225
                &lt;dc:source&gt;
226
                    &lt;xsl:value-of select="../container-title"/&gt;
227
                &lt;/dc:source&gt;
228
                &lt;xsl:variable name='varCobjCategory' select="'0013'" /&gt;
229
                &lt;xsl:variable name='varSuperType' select="TransformationFunction:convertString($tf, $varCobjCategory, 'SuperTypes')" /&gt;
230
               &lt;dr:CobjCategory&gt;
231
                       &lt;xsl:attribute name="type" select="$varSuperType"/&gt;
232
                       &lt;xsl:value-of select="$varCobjCategory" /&gt;
233
                &lt;/dr:CobjCategory&gt;
234
            &lt;/xsl:when&gt;
235
            
236
        &lt;/xsl:choose&gt;
237
    &lt;/xsl:template&gt;
238
    
239
    
240
    
241
    &lt;xsl:template match="subject"&gt;
242
        &lt;dc:subject&gt;
243
            &lt;xsl:value-of select="."/&gt;
244
        &lt;/dc:subject&gt;
245
    &lt;/xsl:template&gt;
246

  
247

  
248
    &lt;xsl:template match="funder[./award]"&gt;
249
        &lt;xsl:choose&gt;
250
            &lt;!-- EC FP7 --&gt;
251
            &lt;xsl:when test="./DOI eq '10.13039/100011102' or ./name = ('European Union´s Seventh Framework Programme', 'European Commission framework seven', 'Seventh Framework Programme', 'FP7')"&gt;
252
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))[matches(., '.*\d{6}.*')]"&gt;
253
                &lt;oaf:project&gt;
254
                    &lt;xsl:value-of select="concat($varFP7, replace(., '.*(\d{6}).*', '$1'))"/&gt;
255
                &lt;/oaf:project&gt;
256
            &lt;/xsl:for-each&gt;
257
            &lt;/xsl:when&gt;
258
            &lt;!-- EC H2020 --&gt;
259
            &lt;xsl:when test="./DOI eq '10.13039/100010661' or ./name = ('Horizon 2020', 'H2020')"&gt;
260
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))[matches(., '.*\d{6}.*')]"&gt;
261
                &lt;oaf:project&gt;
262
                    &lt;xsl:value-of select="concat($varH2020, replace(., '.*(\d{6}).*', '$1'))"/&gt;
263
                &lt;/oaf:project&gt;
264
            &lt;/xsl:for-each&gt;
265
            &lt;/xsl:when&gt;
266
            &lt;!-- AKA --&gt;
267
            &lt;xsl:when test="./DOI eq '10.13039/501100002341' or ./name = ('Suomen Akatemia', 'Finlands Akademi', 'Academy of Finland', 'AKA')"&gt;
268
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
269
                &lt;oaf:project&gt;
270
                    &lt;xsl:value-of select="concat($varAKA, .)"/&gt;
271
                &lt;/oaf:project&gt;
272
            &lt;/xsl:for-each&gt;
273
            &lt;/xsl:when&gt;
274
            &lt;!-- ARC --&gt;
275
            &lt;xsl:when test="./DOI eq '10.13039/501100000923' or ./name = ('Australian Research Council', 'ARC')"&gt;
276
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
277
                &lt;oaf:project&gt;
278
                    &lt;xsl:value-of select="concat($varARC, .)"/&gt;
279
                &lt;/oaf:project&gt;
280
            &lt;/xsl:for-each&gt;
281
            &lt;/xsl:when&gt;
282
            &lt;!-- CONICYT --&gt;
283
            &lt;xsl:when test="./DOI eq '10.13039/501100002848' or ./name = ('Comisión Nacional de Investigación Científica y Tecnológica', 'CONICYT')"&gt;
284
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
285
                &lt;oaf:project&gt;
286
                    &lt;xsl:value-of select="concat($varCONICYT, .)"/&gt;
287
                &lt;/oaf:project&gt;
288
            &lt;/xsl:for-each&gt;
289
            &lt;/xsl:when&gt;
290
            &lt;!-- DFG --&gt;
291
            &lt;xsl:when test="./DOI eq '10.13039/501100001659' or ./name = ('Deutsche Forschungsgemeinschaft', 'Deutsche Forschungsgemeinschaft (DE)', 'DFG')"&gt;
292
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
293
                &lt;oaf:project&gt;
294
                    &lt;xsl:value-of select="concat($varDFG, .)"/&gt;
295
                &lt;/oaf:project&gt;
296
            &lt;/xsl:for-each&gt;
297
            &lt;/xsl:when&gt;
298
            &lt;!-- FCT --&gt;
299
            &lt;xsl:when test="./DOI eq '10.13039/501100001871' or ./name = ('Fundação para a Ciência e a Tecnologia', 'FCT')"&gt;
300
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
301
                &lt;oaf:project&gt;
302
                    &lt;xsl:value-of select="concat($varFCT, .)"/&gt;
303
                &lt;/oaf:project&gt;
304
            &lt;/xsl:for-each&gt;
305
            &lt;/xsl:when&gt;
306
            &lt;!-- FWF --&gt;
307
            &lt;xsl:when test="./DOI eq '10.13039/501100002428' or ./name = ('Austrian Science Fund', 'FWF')"&gt;
308
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
309
                &lt;oaf:project&gt;
310
                    &lt;xsl:value-of select="concat($varFWF, .)"/&gt;
311
                &lt;/oaf:project&gt;
312
            &lt;/xsl:for-each&gt;
313
            &lt;/xsl:when&gt;
314
            &lt;!-- MESTD --&gt;
315
            &lt;xsl:when test="./DOI eq '10.13039/501100004564' or ./name = ('Ministarstvo Prosvete, Nauke i Tehnološkog Razvoja', 'MESTD')"&gt;
316
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
317
                &lt;oaf:project&gt;
318
                    &lt;xsl:value-of select="concat($varMESTD, .)"/&gt;
319
                &lt;/oaf:project&gt;
320
            &lt;/xsl:for-each&gt;
321
            &lt;/xsl:when&gt;
322
            &lt;!-- MZOS --&gt;
323
            &lt;xsl:when test="./DOI eq '10.13039/501100006588' or ./name = ('Ministarstvo Znanosti, Obrazovanja i Sporta', 'Ministry of Science, Education and Sports', 'MZOS')"&gt;
324
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
325
                &lt;oaf:project&gt;
326
                    &lt;xsl:value-of select="concat($varMZOS, .)"/&gt;
327
                &lt;/oaf:project&gt;
328
            &lt;/xsl:for-each&gt;
329
            &lt;/xsl:when&gt;
330
            &lt;!-- NHMRC --&gt;
331
            &lt;xsl:when test="./DOI eq '10.13039/501100000925' or ./name = ('National Health and Medical Research Council (NHMRC) of Australia', 'National Health and Medical Research Council of Australia', 'NHMRC')"&gt;
332
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
333
                &lt;oaf:project&gt;
334
                    &lt;xsl:value-of select="concat($varNHMRC, .)"/&gt;
335
                &lt;/oaf:project&gt;
336
            &lt;/xsl:for-each&gt;
337
            &lt;/xsl:when&gt;
338
            &lt;!-- NIH --&gt;
339
            &lt;xsl:when test="./DOI eq '10.13039/100000002' or ./name = ('National Institutes of Health', 'NIH')"&gt;
340
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
341
                &lt;oaf:project&gt;
342
                    &lt;xsl:value-of select="concat($varNIH, .)"/&gt;
343
                &lt;/oaf:project&gt;
344
            &lt;/xsl:for-each&gt;
345
            &lt;/xsl:when&gt;
346
            &lt;!-- NSF --&gt;
347
            &lt;xsl:when test="./DOI eq '10.13039/100000001' or ./name = ('National Science Foundation', 'NSF')"&gt;
348
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
349
                &lt;oaf:project&gt;
350
                    &lt;xsl:value-of select="concat($varNSF, .)"/&gt;
351
                &lt;/oaf:project&gt;
352
            &lt;/xsl:for-each&gt;
353
            &lt;/xsl:when&gt;
354
            &lt;!-- NWO --&gt;
355
            &lt;xsl:when test="./DOI eq '10.13039/501100003246' or ./name = ('Netherlands Organisation for Scientific Research', 'Nederlandse Organisatie voor Wetenschappelijk Onderzoek', 'NWO')"&gt;
356
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
357
                &lt;oaf:project&gt;
358
                    &lt;xsl:value-of select="concat($varNWO, .)"/&gt;
359
                &lt;/oaf:project&gt;
360
            &lt;/xsl:for-each&gt;
361
            &lt;/xsl:when&gt;
362
            &lt;!-- RCUK --&gt;
363
            &lt;xsl:when test="./DOI eq '10.13039/501100000690' or ./name = ('Research Councils UK', 'RCUK')"&gt;
364
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
365
                &lt;oaf:project&gt;
366
                    &lt;xsl:value-of select="concat($varRCUK, .)"/&gt;
367
                &lt;/oaf:project&gt;
368
            &lt;/xsl:for-each&gt;
369
            &lt;/xsl:when&gt;
370
            &lt;!-- SFI --&gt;
371
            &lt;xsl:when test="./DOI eq '10.13039/501100001602' or ./name = ('SFI - Science Foundation Ireland', 'Science Foundation Ireland', 'SFI')"&gt;
372
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
373
                &lt;oaf:project&gt;
374
                    &lt;xsl:value-of select="concat($varSFI, .)"/&gt;
375
                &lt;/oaf:project&gt;
376
            &lt;/xsl:for-each&gt;
377
            &lt;/xsl:when&gt;
378
            &lt;!-- SGOV --&gt;
379
            &lt;xsl:when test="./DOI eq '' or ./name = ('Gobierno de Espana', 'SGOV')"&gt;
380
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
381
                &lt;oaf:project&gt;
382
                    &lt;xsl:value-of select="concat($varSGOV, .)"/&gt;
383
                &lt;/oaf:project&gt;
384
            &lt;/xsl:for-each&gt;
385
            &lt;/xsl:when&gt;
386
            &lt;!-- SNSF --&gt;
387
            &lt;xsl:when test="./DOI eq '10.13039/501100001711' or ./name = ('Swiss National Science Foundation', 'Schweizerischer Nationalfonds zur Förderung der Wissenschaftlichen Forschung', 'SNSF')"&gt;
388
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
389
                &lt;oaf:project&gt;
390
                    &lt;xsl:value-of select="concat($varSNSF, .)"/&gt;
391
                &lt;/oaf:project&gt;
392
            &lt;/xsl:for-each&gt;
393
            &lt;/xsl:when&gt;
394
            &lt;!-- TARA --&gt;
395
            &lt;xsl:when test="./name = ('Fondation Tara Expéditions', 'TARA')"&gt;
396
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
397
                &lt;oaf:project&gt;
398
                    &lt;xsl:value-of select="concat($varTARA, .)"/&gt;
399
                &lt;/oaf:project&gt;
400
            &lt;/xsl:for-each&gt;
401
            &lt;/xsl:when&gt;
402
            &lt;xsl:when test="./DOI eq '10.13039/501100004410' or ./name = ('Türkiye Bilimsel ve Teknolojik Araştırma Kurumu', 'Turkish National Science and Research Council', 'TUBITAK')"&gt;
403
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
404
                &lt;oaf:project&gt;
405
                    &lt;xsl:value-of select="concat($varTUBITAK, .)"/&gt;
406
                &lt;/oaf:project&gt;
407
            &lt;/xsl:for-each&gt;
408
            &lt;/xsl:when&gt;
409
            &lt;xsl:when test="./DOI eq '10.13039/100004440' or ./name = ('Wellcome Trust', 'WT')"&gt;
410
            &lt;xsl:for-each select="distinct-values(tokenize(string-join(./award, ', '), '\s*,\s*'))"&gt;
411
                &lt;oaf:project&gt;
412
                    &lt;xsl:value-of select="concat($varWT, .)"/&gt;
413
                &lt;/oaf:project&gt;
414
            &lt;/xsl:for-each&gt;
415
            &lt;/xsl:when&gt;
416
        &lt;/xsl:choose&gt;
417
    &lt;/xsl:template&gt;
418

  
419
  &lt;!-- ToDo: Extend with new templates for additional types of publication; Scrape ISBNs from DOIs and put into container; Funding: Take care of European Research Council ERC and double funder blocks; Perhaps add oaf:fulltext for records with creative commons license (>30K) (fulltexts seem to be already downloaded, though, on prod files_rsync API)  --&gt;
420
    
421
    &lt;xsl:template match="* | @*"/&gt;
422
    
423
&lt;/xsl:stylesheet&gt;
424

  
425

  
426

  
427

  
428

  
429

  
430

  
431
                </CODE>
432
            </SCRIPT>
433
        </CONFIGURATION>
434
        <STATUS/>
435
        <SECURITY_PARAMETERS>SECURITY_PARAMETERS</SECURITY_PARAMETERS>
436
    </BODY>
437
</RESOURCE_PROFILE>

Also available in: Unified diff