Project

General

Profile

1
<?xml version="1.0" encoding="UTF-8"?>
2
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
3
xmlns:dri="http://www.driver-repository.eu/namespace/dri"
4
xmlns:oaf="http://namespace.openaire.eu/oaf"
5
xmlns:dc="http://purl.org/dc/elements/1.1/">
6
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
7
<!-- PROJECT
8
missing fields:
9
1. scientific area ?
10
2. programme ?
11
3. cordis link ?
12
4. publications
13
 -->
14
<xsl:template match = "/">
15
<result type ="result">
16
	<xsl:apply-templates select="//header"/>
17
	<xsl:apply-templates select="//oaf:project"/>
18
<!--    <xsl:apply-templates select="//rel"/>
19
	<xsl:apply-templates select="//funding[parent[not(node())]] "/-->
20
    <xsl:apply-templates select="//funding_level_2"/>
21
	<xsl:apply-templates select="//funding_level_1"/>
22
	<xsl:apply-templates select="//funding_level_0"/>
23
    <xsl:apply-templates select="//funder"/>
24
</result>
25
</xsl:template>
26

    
27
<!-- HEADER
28
fields in header:
29
1. dri:objIdentifier 		[objIdentifier]
30
2. dri:repositoryId			X
31
3. dri:dateOfCollection		X
32
-->
33
<xsl:template match = "header">
34
	<field name="projectId" multiplicity="false" indexId="objIdentifier" label="Object id">
35
		<xsl:attribute name="value">
36
			<xsl:value-of select='./dri:objIdentifier'/>
37
		</xsl:attribute>
38
	</field>
39
	<xsl:if test="substring(./dri:objIdentifier,1,4)='ec::'">
40
		<field name="grantagreementnumber" multiplicity="false" indexId="" label="Grant agreement number">
41
			<xsl:attribute name="value">
42
				<xsl:value-of select="substring(./dri:objIdentifier,5)"/>
43
			</xsl:attribute>
44
		</field>
45
	</xsl:if>
46
	
47
	<!--<field name="repositoryId" multiplicity="false" indexId="???" label="???">
48
		<xsl:attribute name="value">
49
			<xsl:value-of select='./dri:repositoryId'/>
50
		</xsl:attribute>
51
	</field>-->
52
	<!--<field name="dateOfCollection" multiplicity="false" indexId="???" label="???">
53
		<xsl:attribute name="value">
54
			<xsl:value-of select='./dri:dateOfCollection'/>
55
		</xsl:attribute>
56
	</field>-->
57
</xsl:template>
58

    
59
<xsl:template match = "oaf:project">
60

    
61
	<xsl:for-each select = "./acronym">
62
		<field name="name" indexId = "projectacronym" multiplicity="true" label="Project">
63
			<xsl:attribute name="value">
64
				<xsl:value-of select='.'/>
65
			</xsl:attribute>
66
		</field>
67
	</xsl:for-each>
68
	
69
	<xsl:for-each select = "./code">
70
		<field name="code" indexId = "projectcode" multiplicity="true" label="Project code">
71
			<xsl:attribute name="value">
72
				<xsl:value-of select='.'/>
73
			</xsl:attribute>
74
		</field>
75
	</xsl:for-each>
76

    
77
	<xsl:for-each select = "./title">
78
		<field name="title" indexId = "projecttitle" multiplicity="true" label="Title">
79
			<xsl:attribute name="value">
80
				<xsl:value-of select='.'/>
81
			</xsl:attribute>
82
		</field>
83
	</xsl:for-each>
84

    
85
	<xsl:for-each select = "./startdate">
86
		<field name="startyear" indexId = "projectstartyear" multiplicity="true" label="Start year">
87
			<xsl:attribute name="value">
88
				<xsl:value-of select='substring-before(.,"-")'/>
89
			</xsl:attribute>
90
		</field>
91
		<field name="startdate" indexId = "projectstartdate" multiplicity="true" label="Start date">
92
			<xsl:attribute name="value">
93
				<xsl:value-of select='.'/>
94
			</xsl:attribute>
95
		</field>
96
	</xsl:for-each>
97

    
98
	<xsl:for-each select = "./enddate">
99
		<field name="endyear" indexId = "projectendyear" multiplicity="true" label="End year">
100
			<xsl:attribute name="value">
101
				<xsl:value-of select="substring-before(.,'-')"/>
102
			</xsl:attribute>
103
		</field>
104
		<field name="enddate" indexId = "projectenddate" multiplicity="true" label="End date">
105
			<xsl:attribute name="value">
106
				<xsl:value-of select='.'/>
107
			</xsl:attribute>
108
		</field>
109
	</xsl:for-each>
110

    
111
	<xsl:for-each select = "./callidentifier">
112
		<field name="call_identifier" indexId = "projectcallidentifier" multiplicity="true" label="Call">
113
			<xsl:attribute name="value">
114
				<xsl:value-of select='.'/>
115
			</xsl:attribute>
116
		</field>
117
	</xsl:for-each>
118

    
119
	<xsl:for-each select = "./ecsc39">
120
		<field name="ec_sc39" indexId = "projectecsc39" multiplicity="true" label="Special clause 39"> 
121
			<xsl:attribute name="value">
122
				<xsl:value-of select='.'/>
123
			</xsl:attribute>
124
		</field>
125
	</xsl:for-each>
126

    
127
    <xsl:for-each select = "./oamandatepublications">
128
        <field name="oamandatepublications" indexId = "" multiplicity="false" label="OA mandate">
129
            <xsl:attribute name="value">
130
                <xsl:value-of select='.'/>
131
            </xsl:attribute>
132
        </field>
133
    </xsl:for-each>
134

    
135
    <xsl:for-each select = "./ecarticle29_3">
136
        <field name="ecarticle29_3" indexId = "" multiplicity="false" label="Data Pilot">
137
            <xsl:attribute name="value">
138
                <xsl:value-of select='.'/>
139
            </xsl:attribute>
140
        </field>
141
    </xsl:for-each>
142

    
143

    
144

    
145
	<xsl:for-each select = "./collectedfrom">
146
		<field name="collectedfrom" indexId = "projectcollectedfrom" multiplicity="true" label="Collected from">
147
                        <xsl:attribute name="value">
148
                                <xsl:value-of select='./@id'/>
149
                        </xsl:attribute>
150
                </field>
151
                <field name="collectedfromname" indexId = "" multiplicity="true" label="Collected from name">
152
                        <xsl:attribute name="value">
153
                                <xsl:value-of select='./@name'/>
154
                        </xsl:attribute>
155
                </field>
156
	</xsl:for-each>
157

    
158

    
159
	<xsl:for-each select = "./contracttype">
160
		<field name="contracttypeid" indexId = "projectcontracttypeid" multiplicity="true" label="Contract type id"> 
161
			<xsl:attribute name="value">
162
				<xsl:value-of select='./@classid'/>
163
			</xsl:attribute>
164
		</field>
165
		<field name="contracttypename" indexId = "projectcontracttypename" multiplicity="true" label="Contract type name"> 
166
			<xsl:attribute name="value">
167
				<xsl:value-of select='./@classname'/>
168
			</xsl:attribute>
169
		</field>
170
	</xsl:for-each>
171

    
172
	<xsl:for-each select = "./pid">
173
		<field name="pidid" indexId = "pidclassid" multiplicity="true" label="Pid">
174
			<xsl:attribute name="value">
175
				<xsl:value-of select='./@classid'/>
176
			</xsl:attribute>
177
		</field>
178
		<field name="pidname" indexId = "pidclassname" multiplicity="true" label="Pid">
179
			<xsl:attribute name="value">
180
				<xsl:value-of select='./@classname'/>
181
			</xsl:attribute>
182
		</field>
183
	</xsl:for-each>
184

    
185
	<xsl:for-each select = "./websiteurl">
186
		<field name="websiteurl" indexId = "projectwebsiteurl" multiplicity="true" label="Website url"> 
187
			<xsl:attribute name="value">
188
				<xsl:value-of select='.'/>
189
			</xsl:attribute>
190
		</field>
191
	</xsl:for-each>
192

    
193
	<xsl:for-each select = "./keywords">
194
		<field name="keywords" indexId = "projectkeywords" multiplicity="true" label="Keywords"> 
195
			<xsl:attribute name="value">
196
				<xsl:value-of select='.'/>
197
			</xsl:attribute>
198
		</field>
199
	</xsl:for-each>
200

    
201
	<xsl:for-each select = "./duration">
202
		<field name="duration" indexId = "projectduration" multiplicity="true" label="Duration"> 
203
			<xsl:attribute name="value">
204
				<xsl:value-of select='.'/>
205
			</xsl:attribute>
206
		</field>
207
	</xsl:for-each>
208

    
209
    <xsl:for-each select="./fundingtree/funder">
210
        <field name="funder" multiplicity="true">
211
            <field name="funderid" indexId="funderid" label="">
212
                <xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
213
            </field>
214
            <field name="fundershortname" indexId="fundershortname" label="">
215
                <xsl:attribute name="value"> <xsl:value-of select="./shortname"/> </xsl:attribute>
216
            </field>
217
            <field name="fundername" indexId="fundername" label="">
218
                <xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
219
            </field>
220
        </field>
221
    </xsl:for-each>
222

    
223
</xsl:template>
224

    
225

    
226
<!--  RELS  
227
1. person 
228
2. project	
229
3. organisation 
230
4. result  
231
5. datasource 
232
-->
233
<xsl:template match="rel">
234
<!--PERSON-->
235
	<xsl:if test="./to/@type='person'">
236
		<field name="author" indexId = "objIdentifier"  multiplicity="true">
237
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
238
			<field name = "personId" indexId ="objIdentifier" multiplicity="false" label="Person id">		
239
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
240
			</field>
241
			<field name = "role" indexId ="" multiplicity="false" label="role">		
242
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
243
			</field>
244
			<field name = "fullname" indexId ="personfullname" multiplicity="false" label="Person fullname">		
245
				<xsl:attribute name="value"><xsl:value-of select='./fullname'/> </xsl:attribute>
246
			</field>
247
			<field name = "ranking" indexId ="" multiplicity="false" label="ranking">		
248
				<xsl:attribute name="value"><xsl:value-of select='./ranking'/> </xsl:attribute>
249
			</field>
250
		</field>
251
	</xsl:if>
252
<!--PROJECT-->
253
	<xsl:if test="./to/@type='project'">
254
		<field name="project" indexId = "objIdentifier" multiplicity="true">
255
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
256
			<field name = "projectId" indexId ="objIdentifier" multiplicity="false" label="Project id">		
257
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
258
			</field>
259
			<field name = "role" indexId ="" multiplicity="false" label="role">		
260
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
261
			</field>
262
			<field name = "projectcode" indexId ="projectcode" multiplicity="false" label="Project(s)">		
263
				<xsl:attribute name="value"><xsl:value-of select='./code'/> </xsl:attribute>
264
			</field>	
265
			<field name = "projectacronym" indexId ="projectacronym" multiplicity="false" label="Project(s)">		
266
				<xsl:attribute name="value"><xsl:value-of select='./acronym'/> </xsl:attribute>
267
			</field>
268
			<field name = "projecttitle" indexId ="projecttitle" multiplicity="false" label="Project title">		
269
				<xsl:attribute name="value"><xsl:value-of select='./title'/> </xsl:attribute>
270
			</field>
271
			<field name = "projectcontracttypeid" indexId ="projectcontracttypeid" multiplicity="false" label="Project contract type id">		
272
				<xsl:attribute name="value"><xsl:value-of select='./contracttype/@classid'/> </xsl:attribute>
273
			</field>
274
			<field name = "projectcontracttypename" indexId ="projectcontracttypename" multiplicity="false" label="Project contract type name">		
275
				<xsl:attribute name="value"><xsl:value-of select='./contracttype/@classname'/> </xsl:attribute>
276
			</field>
277
		</field>
278
	</xsl:if>
279
<!--RESULT-->
280
	<xsl:if test="./to/@type='result'">
281
		<field name="result" indexId = "objIdentifier"  multiplicity="true">
282
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
283
			<field name = "resultid" indexId ="objIdentifier" multiplicity="false" label="Result id">		
284
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
285
			</field>
286
			<field name = "title" indexId = "resulttitle" multiplicity = "false" label = "Title">
287
				<xsl:attribute name="value">
288
					<xsl:value-of select="./title"/>
289
				</xsl:attribute>
290
			</field>
291
			<field name = "dateofacceptance" indexId = "resultdateofacceptance" multiplicity = "false" label = "Date of acceptance">
292
				<xsl:attribute name="value">
293
					<xsl:value-of select="./dateofacceptance"/>
294
				</xsl:attribute>
295
			</field>
296
			<field name = "resulttypeid" indexId = "resulttypeid" multiplicity = "false" label = "type id">
297
				<xsl:attribute name="value">
298
					<xsl:value-of select="./resulttype/@classid"/>
299
				</xsl:attribute>
300
			</field>
301
			<field name = "resulttypename" indexId = "resulttypename" multiplicity = "false" label = "type name">
302
				<xsl:attribute name="value">
303
					<xsl:value-of select="./resulttype/@classname"/>
304
				</xsl:attribute>
305
			</field>
306
		</field>
307
	</xsl:if>	
308
<!--ORGANIZATION-->
309
	<xsl:if test="./to/@type='organization'">
310
		<field name="organization" indexId = "objIdentifier"  multiplicity="true">
311
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
312
			<field name = "organizationid" indexId ="objIdentifier" multiplicity="false" label="Organization id">		
313
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
314
			</field>
315
			<field name = "role" indexId ="" multiplicity="false" label="role">		
316
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
317
			</field>
318
			<field name = "legalshortname" indexId ="organizationlegalshortname" multiplicity="false" label="Organization short name">		
319
				<xsl:attribute name="value"><xsl:value-of select='./legalshortname'/> </xsl:attribute>
320
			</field>
321
			<field name = "legalname" indexId ="organizationlegalname" multiplicity="false" label="Organization name">		
322
				<xsl:attribute name="value"><xsl:value-of select='./legalname'/> </xsl:attribute>
323
			</field>
324
			<field name = "websiteurl" indexId ="organizationwebsiteurl" multiplicity="false" label="Website">		
325
				<xsl:attribute name="value"><xsl:value-of select='./websiteurl'/> </xsl:attribute>
326
			</field>
327
			<field name = "countryid" indexId ="organizationcountryid" multiplicity="false" label="Country code">		
328
				<xsl:attribute name="value"><xsl:value-of select='./country/@classid'/> </xsl:attribute>
329
			</field>
330
			<field name = "countryname" indexId ="organizationcountryname" multiplicity="false" label="Country">		
331
				<xsl:attribute name="value"><xsl:value-of select='./country/@classname'/> </xsl:attribute>
332
			</field>
333
			<field name = "participantnumber" indexId ="" multiplicity="false" label="Participant Number">		
334
				<xsl:attribute name="value"><xsl:value-of select='./participantnumber'/> </xsl:attribute>
335
			</field>
336
			<field name = "contactperson" indexId ="" multiplicity="false" label="Contact Person">		
337
				<xsl:attribute name="value"><xsl:value-of select='./contactperson'/> </xsl:attribute>
338
			</field>
339
		</field>
340
	</xsl:if>
341

    
342
</xsl:template>
343

    
344

    
345
<xsl:template match="funding_level_2">
346
<field name="funding_level_2" multiplicity="false">
347
		<field name="fundingid" indexId="fundinglevel2_id" label="">
348
			<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
349
		</field>
350
		<field name="fundingdescription" indexId="fundingprogramdescription" label="">
351
			<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
352
		</field>
353
		<field name="fundingname" indexId="fundingprogramname" label="">
354
			<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
355
		</field>
356
		<field name="fundingclass" indexId="" label="">
357
			<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
358
		</field>
359
</field>
360
</xsl:template>
361

    
362
<xsl:template match="funding_level_1">
363
<field name="funding_level_1" multiplicity="false">
364
        <field name="fundingid" indexId="fundinglevel1_id" label="">
365
            <xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
366
        </field>
367
        <field name="fundingdescription" indexId="fundingstreamnamedescription" label="">
368
            <xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
369
        </field>
370
        <field name="fundingname" indexId="fundingstreamname" label="">
371
            <xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
372
        </field>
373
        <field name="fundingclass" indexId="" label="">
374
            <xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
375
		</field>
376
</field>
377
</xsl:template>
378

    
379
<xsl:template match="funding_level_0">
380
<field name="funding_level_0" multiplicity="false">
381
    <field name="fundingid" indexId="fundinglevel0_id" label="">
382
        <xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
383
    </field>
384
    <field name="fundingdescription" indexId="fundingstreamnamedescription" label="">
385
        <xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
386
    </field>
387
    <field name="fundingname" indexId="fundingstreamname" label="">
388
        <xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
389
    </field>
390
    <field name="fundingclass" indexId="" label="">
391
        <xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
392
    </field>
393
</field>
394
</xsl:template>
395

    
396

    
397

    
398

    
399
<!--xsl:template match="funding[parent[not(node())]]" >
400
	<field name='funding'>
401
		<xsl:choose>
402
				<xsl:when test="./class='ec:program'">	
403
					<field name = "fundingprogramid" indexId = "fundingprogramid" multiplicity="true">
404
						<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
405
						<field name="fundingid" indexId="fundingprogramid" label="">
406
							<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
407
						</field>
408
						<field name="fundingdescription" indexId="fundingprogramdescription" label="">
409
							<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
410
						</field>
411
						<field name="fundingname" indexId="fundingprogramname" label="">
412
							<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
413
						</field>
414
						<field name="fundingclass" indexId="" label="">
415
							<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
416
						</field>
417
						<xsl:apply-templates select="../.."/>
418
					</field>
419
				</xsl:when>
420
				<xsl:when test="./class='ec:specificprogram'">	
421
					<field name = "fundingspecificprogramid" indexId = "fundingspecificprogramid" multiplicity="true">
422
						<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
423
						<field name="fundingid" indexId="fundingspecificprogramid" label="">
424
							<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
425
						</field>
426
						<field name="fundingdescription" indexId="fundingspecificprogramdescription" label="">
427
							<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
428
						</field>
429
						<field name="fundingname" indexId="fundingspecificprogramname" label="">
430
							<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
431
						</field>
432
						<field name="fundingclass" indexId="" label="">
433
							<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
434
						</field>
435
						<xsl:apply-templates select="../.."/>
436
					</field>
437
				</xsl:when>
438
				<xsl:when test="./class='ec:frameworkprogram'">	
439
					<field name = "fundingframeworkprogramid" indexId = "fundingframeworkprogramid" multiplicity="true">
440
						<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
441
						<field name="fundingid" indexId="fundingframeworkprogramid" label="">
442
							<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
443
						</field>
444
						<field name="fundingdescription" indexId="fundingframeworkprogramdescription" label="">
445
							<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
446
						</field>
447
						<field name="fundingname" indexId="fundingframeworkprogramname" label="">
448
							<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
449
						</field>
450
						<field name="fundingclass" indexId="" label="">
451
							<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
452
						</field>
453
						<xsl:apply-templates select="../.."/>
454
					</field>
455
				</xsl:when>
456
				<xsl:when test="./class='wt:fundingStream'">	
457
					<field name = "fundingstreamid" indexId = "fundingstreamid" multiplicity="true">
458
						<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
459
						<field name="fundingid" indexId="fundingstreamid" label="">
460
							<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
461
						</field>
462
						<field name="fundingdescription" indexId="fundingstreamnamedescription" label="">
463
							<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
464
						</field>
465
						<field name="fundingname" indexId="fundingstreamname" label="">
466
							<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
467
						</field>
468
						<field name="fundingclass" indexId="" label="">
469
							<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
470
						</field>
471
						<xsl:apply-templates select="../.."/>
472
					</field>
473
				</xsl:when>
474
			</xsl:choose>	
475
	</field>
476

    
477
</xsl:template>
478

    
479

    
480
<xsl:template match="@* | node()"></xsl:template>
481

    
482
<xsl:template match="funding[parent[node()]]">
483
	
484
	<xsl:choose>		
485
		<xsl:when test="./class='ec:program'">	
486
			<field name = "fundingprogramid" indexId = "fundingprogramid" multiplicity="true">
487
				<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
488
				<field name="fundingid" indexId="fundingprogramid" label="">
489
					<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
490
				</field>
491
				<field name="fundingdescription" indexId="fundingprogramdescription" label="">
492
					<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
493
				</field>
494
				<field name="fundingname" indexId="fundingprogramname" label="">
495
					<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
496
				</field>
497
				<field name="fundingclass" indexId="" label="">
498
					<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
499
				</field>
500
				<xsl:apply-templates select="../.."/>
501
			</field>
502
		</xsl:when>
503
		<xsl:when test="./class='ec:specificprogram'">	
504
			<field name = "fundingspecificprogramid" indexId = "fundingspecificprogramid" multiplicity="true">
505
				<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
506
				<field name="fundingid" indexId="fundingspecificprogramid" label="">
507
					<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
508
				</field>
509
				<field name="fundingdescription" indexId="fundingspecificprogramdescription" label="">
510
					<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
511
				</field>
512
				<field name="fundingname" indexId="fundingspecificprogramname" label="">
513
					<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
514
				</field>
515
				<field name="fundingclass" indexId="" label="">
516
					<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
517
				</field>
518
				<xsl:apply-templates select="../.."/>
519
			</field>
520
		</xsl:when>
521
		<xsl:when test="./class='ec:frameworkprogram'">	
522
			<field name = "fundingframeworkprogramid" indexId = "fundingframeworkprogramid" multiplicity="true">
523
				<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
524
				<field name="fundingid" indexId="fundingframeworkprogramid" label="">
525
					<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
526
				</field>
527
				<field name="fundingdescription" indexId="fundingframeworkprogramdescription" label="">
528
					<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
529
				</field>
530
				<field name="fundingname" indexId="fundingframeworkprogramname" label="">
531
					<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
532
				</field>
533
				<field name="fundingclass" indexId="" label="">
534
					<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
535
				</field>
536
				<xsl:apply-templates select="../.."/>
537
			</field>
538
		</xsl:when>
539
		<xsl:when test="./class='wt:fundingStream'">	
540
			<field name = "fundingstreamid" indexId = "fundingstreamid" multiplicity="true">
541
				<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
542
				<field name="fundingid" indexId="fundingstreamid" label="">
543
					<xsl:attribute name="value"> <xsl:value-of select="./id"/> </xsl:attribute>
544
				</field>
545
				<field name="fundingdescription" indexId="fundingstreamnamedescription" label="">
546
					<xsl:attribute name="value"> <xsl:value-of select="./description"/> </xsl:attribute>
547
				</field>
548
				<field name="fundingname" indexId="fundingstreamname" label="">
549
					<xsl:attribute name="value"> <xsl:value-of select="./name"/> </xsl:attribute>
550
				</field>
551
				<field name="fundingclass" indexId="" label="">
552
					<xsl:attribute name="value"> <xsl:value-of select="./class"/> </xsl:attribute>
553
				</field>
554
				<xsl:apply-templates select="../.."/>
555
			</field>
556
		</xsl:when>
557
	</xsl:choose>
558
	
559
</xsl:template-->
560

    
561

    
562
</xsl:stylesheet>
563

    
564

    
(22-22/40)