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

    
8
<xsl:template match = "/">
9
<result type ="result">
10
	<xsl:apply-templates select="//header"/>
11
	<xsl:apply-templates select="//oaf:result"/>
12
	<xsl:apply-templates select="//rel"/>
13
	<xsl:apply-templates select="//children"/>
14
</result>
15
</xsl:template>
16

    
17
<!-- HEADER
18
fields in header:
19
1. dri:objIdentifier 		[objIdentifier]
20
2. dri:repositoryId			X
21
3. dri:dateOfCollection		X
22
-->
23
<xsl:template match = "header">
24
	<field name="resultId" multiplicity="false" indexId="objIdentifier" label="Object id">
25
		<xsl:attribute name="value">
26
			<xsl:value-of select='./dri:objIdentifier'/>
27
		</xsl:attribute>
28
	</field>
29
	<!--<field name="repositoryId" multiplicity="false" indexId="???" label="???">
30
		<xsl:attribute name="value">
31
			<xsl:value-of select='./dri:repositoryId'/>
32
		</xsl:attribute>
33
	</field>-->
34
	<!--<field name="dateOfCollection" multiplicity="false" indexId="???" label="???">
35
		<xsl:attribute name="value">
36
			<xsl:value-of select='./dri:dateOfCollection'/>
37
		</xsl:attribute>
38
	</field>-->
39
</xsl:template>
40

    
41

    
42
<xsl:template match = "oaf:result">
43

    
44
	<xsl:for-each select = "./title">		
45
		<field name="title" indexId = "resulttitle" multiplicity="true" label="Title">
46
			<xsl:attribute name="value">
47
				<xsl:value-of select='.'/>
48
			</xsl:attribute>
49
		</field>
50
	</xsl:for-each>
51

    
52
	<xsl:for-each select = "./dateofacceptance">
53
		<field name="dateofacceptance" indexId = "resultdateofacceptance" multiplicity="true" label="Date of acceptance">
54
			<xsl:attribute name="value">
55
				<xsl:value-of select='.'/>
56
			</xsl:attribute>
57
		</field>
58
	</xsl:for-each>
59
	
60
	<xsl:for-each select = "./storagedate">
61
		<field name="storagedate" indexId = "resultstoragedate" multiplicity="true" label="Date of storage">
62
			<xsl:attribute name="value">
63
				<xsl:value-of select='.'/>
64
			</xsl:attribute>
65
		</field>
66
	</xsl:for-each>
67

    
68
	<xsl:for-each select = "./description">
69
		<field name="description" indexId = "resultdescription" multiplicity="true" label="Description">
70
			<xsl:attribute name="value">
71
				<xsl:value-of select='.'/>
72
			</xsl:attribute>
73
		</field>
74
	</xsl:for-each>
75

    
76
	<xsl:for-each select = "./publisher">
77
		<field name="publisher" indexId = "resultpublisher" multiplicity="true" label="Publisher(s)">
78
			<xsl:attribute name="value">
79
				<xsl:value-of select='.'/>
80
			</xsl:attribute>
81
		</field>
82
	</xsl:for-each>
83

    
84
	<xsl:for-each select = "./language">
85
		<field name="languageid" indexId = "resultlanguageid" multiplicity="true" label="Language(s)">
86
			<xsl:attribute name="value">
87
				<xsl:value-of select='./@classid'/>
88
			</xsl:attribute>
89
		</field>
90
		<field name="languagename" indexId = "resultlanguagename" multiplicity="true" label="Language(s)">
91
			<xsl:attribute name="value">
92
				<xsl:value-of select='./@classname'/>
93
			</xsl:attribute>
94
		</field>
95
		<field name="language" indexId = "" multiplicity="true" label="Language(s)">
96
			<xsl:attribute name="value">
97
				<xsl:value-of select='./@classname'/>
98
			</xsl:attribute>
99
			<xsl:attribute name="value_original">
100
				<xsl:value-of select='./@classid'/>
101
			</xsl:attribute>
102
		</field>
103
	</xsl:for-each>
104
	
105
	<xsl:for-each select = "./resulttype">
106
		<field name="resulttypeid" indexId = "resulttypeid" multiplicity="true" label="Type">
107
			<xsl:attribute name="value">
108
				<xsl:value-of select='./@classid'/>
109
			</xsl:attribute>
110
		</field>
111
		<field name="resulttypename" indexId = "resulttypename" multiplicity="true" label="Type">
112
			<xsl:attribute name="value">
113
				<xsl:value-of select='./@classname'/>
114
			</xsl:attribute>
115
		</field>
116
	</xsl:for-each>
117
	
118
	<xsl:for-each select = "./resourcetype">
119
		<field name="resourcetypeid" indexId = "" multiplicity="true" label="Resource Type">
120
			<xsl:attribute name="value">
121
				<xsl:value-of select='./@classid'/>
122
			</xsl:attribute>
123
		</field>
124
		<field name="resourcetypename" indexId = "" multiplicity="true" label="Resource Type">
125
			<xsl:attribute name="value">
126
				<xsl:value-of select='./@classname'/>
127
			</xsl:attribute>
128
		</field>
129
	</xsl:for-each>
130

    
131
	<xsl:for-each select = "./subject">
132
		<field name="subject" indexId = "resultsubject" multiplicity="true" label="Subject">
133
			<xsl:attribute name="value">
134
				<xsl:value-of select='.'/>
135
			</xsl:attribute>
136
		</field>
137
	</xsl:for-each>
138

    
139
	<xsl:for-each select = "./relevantdate">
140
		<field name="relevantyear" indexId = "" multiplicity="true" label="Relevant year">
141
			<xsl:attribute name="value">
142
				<xsl:value-of select='substring-before(.,"-")'/>
143
			</xsl:attribute>
144
		</field>
145
		<field name="relevantdate" indexId = "resultdate" multiplicity="true" label="Relevant date">
146
			<xsl:attribute name="value">
147
				<xsl:value-of select='.'/>
148
			</xsl:attribute>
149
		</field>
150
	</xsl:for-each>
151

    
152
	<xsl:for-each select = "./pid">
153
		<field name="pid" multiplicity="true" label="Pid">			
154
			<field name="value" indexId = "pid" multiplicity="false" label="Pid">
155
				<xsl:attribute name="value">
156
					<xsl:value-of select='.'/>
157
				</xsl:attribute>
158
			</field>
159
			<field name="classid" indexId = "pidclassid" multiplicity="false" label="Pid class id">
160
				<xsl:attribute name="value">
161
					<xsl:value-of select='./@classid'/>
162
				</xsl:attribute>
163
			</field>
164
			<field name="classname" indexId = "pidclassname" multiplicity="false" label="Pid class name">
165
				<xsl:attribute name="value">
166
					<xsl:value-of select='./@classname'/>
167
				</xsl:attribute>
168
			</field>
169
		</field>	
170
	</xsl:for-each>
171

    
172
	<xsl:for-each select = "./embargoenddate">
173
		<field name="embargoendyear" indexId = "" multiplicity="true" label="Embargo end year">
174
			<xsl:attribute name="value">
175
				<xsl:value-of select='substring-before(.,"-")'/>
176
			</xsl:attribute>
177
		</field>
178
		<field name="embargoenddate" indexId = "resultembargoenddate" multiplicity="true" label="Embargo end date">
179
			<xsl:attribute name="value">
180
				<xsl:value-of select='.'/>
181
			</xsl:attribute>
182
		</field>
183
	</xsl:for-each>
184

    
185
	<xsl:for-each select = "./journal">
186
		<field name="journal" indexId = "" multiplicity="true" label="Journal">
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 = "./collectedfrom">
194
		<field name="collectedfrom" indexId = "resultcollectedfromdatasourceid" multiplicity="true" label="Collected from">
195
                <xsl:attribute name="value">
196
                        <xsl:value-of select='./@id'/>
197
                </xsl:attribute>
198
        </field>
199
        <!--field name="collectedfromname" indexId = "" multiplicity="true" label="Collected from">
200
                <xsl:attribute name="value">
201
                        <xsl:value-of select='./@name'/>
202
                </xsl:attribute>
203
        </field-->
204
	</xsl:for-each>
205

    
206
	<xsl:for-each select = "./device">
207
		<field name="device" indexId = "" multiplicity="true" label="Device">
208
			<xsl:attribute name="value">
209
				<xsl:value-of select='.'/>
210
			</xsl:attribute>
211
		</field>
212
	</xsl:for-each>
213

    
214
	<xsl:for-each select = "./size">
215
		<field name="size" indexId = "" multiplicity="true" label="Size">
216
			<xsl:attribute name="value">
217
				<xsl:value-of select='.'/>
218
			</xsl:attribute>
219
		</field>
220
	</xsl:for-each>
221

    
222
	<xsl:for-each select = "./format">
223
		<field name="format" indexId = "" multiplicity="true" label="Format">
224
			<xsl:attribute name="value">
225
				<xsl:value-of select='.'/>
226
			</xsl:attribute>
227
		</field>
228
	</xsl:for-each>
229

    
230
	<xsl:for-each select = "./version">
231
		<field name="version" indexId = "" multiplicity="true" label="Version">
232
			<xsl:attribute name="value">
233
				<xsl:value-of select='.'/>
234
			</xsl:attribute>
235
		</field>
236
	</xsl:for-each>
237

    
238
	<xsl:for-each select = "./lastmetadataupdate">
239
		<field name="lastmetadataupdate" indexId = "" multiplicity="true" label="Last metadata update">
240
			<xsl:attribute name="value">
241
				<xsl:value-of select='.'/>
242
			</xsl:attribute>
243
		</field>
244
	</xsl:for-each>
245

    
246
	<xsl:for-each select = "./metadataversionnumber">
247
		<field name="metadataversionnumber" indexId = "" multiplicity="true" label="Metadata version number">
248
			<xsl:attribute name="value">
249
				<xsl:value-of select='.'/>
250
			</xsl:attribute>
251
		</field>
252
	</xsl:for-each>
253

    
254
	<xsl:for-each select = "./source">
255
		<field name="source" indexId = "" multiplicity="true" label="source">
256
			<xsl:attribute name="value">
257
				<xsl:value-of select='.'/>
258
			</xsl:attribute>
259
		</field>
260
	</xsl:for-each>	
261

    
262
	<xsl:for-each select = "./context">
263
		<field indexId="context" multiplicity="true" name="context" >
264
		
265
			<xsl:attribute name="value">
266
				<xsl:value-of select='./@value'/>
267
			</xsl:attribute>
268
			<xsl:attribute name="value_original">
269
				<xsl:value-of select='./@id'/>
270
			</xsl:attribute>
271
			
272
			<field name="contexttype" indexId="contexttype" multiplicity="false" label="Context Type">
273
				<xsl:attribute name="value">
274
					<xsl:value-of select="@type"></xsl:value-of>
275
				</xsl:attribute>
276
			</field>
277
			
278
			<xsl:for-each select = "./category">
279
				<field name="category" indexId="category" multiplicity="true" label="Category" >
280
					<xsl:attribute name="value">
281
						<xsl:value-of select='./@label' />
282
					</xsl:attribute>
283
					<xsl:attribute name="value_original">
284
						<xsl:value-of select='./@id'/>
285
					</xsl:attribute>
286

    
287
					<xsl:for-each select = ".//concept">
288
						<field name="concept" indexId="concept" multiplicity="true" label="Concept" >
289
							<xsl:attribute name="value">
290
								<xsl:value-of select='./@label'/>
291
							</xsl:attribute>
292
							<xsl:attribute name="value_original">
293
								<xsl:value-of select='./@id'/>
294
							</xsl:attribute>
295
						</field>
296
					</xsl:for-each>
297
				</field>
298
			</xsl:for-each>
299
		</field>
300
	</xsl:for-each>
301

    
302
</xsl:template>
303

    
304

    
305
<xsl:template match="rel">
306
<!--PERSON-->
307
	<xsl:if test="./to/@type='person'">
308
		<field indexId = "objIdentifier"  multiplicity="true">
309
			<xsl:attribute name="name"><xsl:value-of select='./to/@class'/></xsl:attribute>
310
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
311
			<field name = "personId" indexId ="objIdentifier" multiplicity="false" label="Person id">		
312
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
313
			</field>
314
			<field name = "role" indexId ="" multiplicity="false" label="role">		
315
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
316
			</field>
317
			<field name = "fullname" indexId ="personfullname" multiplicity="false" label="Person fullname">		
318
				<xsl:attribute name="value"><xsl:value-of select='./fullname'/> </xsl:attribute>
319
			</field>
320
			<field name = "ranking" indexId ="" multiplicity="false" label="ranking">		
321
				<xsl:attribute name="value"><xsl:value-of select='./ranking'/> </xsl:attribute>
322
			</field>
323
		</field>
324
	</xsl:if>
325
<!--PROJECT-->
326
	<xsl:if test="./to/@type='project'">
327
		<field name="project" indexId = "objIdentifier" multiplicity="true">
328
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
329
			<field name = "projectId" indexId ="objIdentifier" multiplicity="false" label="Project id">		
330
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
331
			</field>
332
			<field name = "role" indexId ="" multiplicity="false" label="role">		
333
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
334
			</field>
335
			<field name = "projectcode" indexId ="projectcode" multiplicity="false" label="Project(s)">		
336
				<xsl:attribute name="value"><xsl:value-of select='./code'/> </xsl:attribute>
337
			</field>	
338
			<field name = "projectacronym" indexId ="projectacronym" multiplicity="false" label="Project(s)">		
339
				<xsl:attribute name="value"><xsl:value-of select='./acronym'/> </xsl:attribute>
340
			</field>
341
			<field name = "projecttitle" indexId ="projecttitle" multiplicity="false" label="Project title">		
342
				<xsl:attribute name="value"><xsl:value-of select='./title'/> </xsl:attribute>
343
			</field>
344
			<field name = "projectcontracttypeid" indexId ="projectcontracttypeid" multiplicity="false" label="Project contract type id">		
345
				<xsl:attribute name="value"><xsl:value-of select='./contracttype/@classid'/> </xsl:attribute>
346
			</field>
347
			<field name = "projectcontracttypename" indexId ="projectcontracttypename" multiplicity="false" label="Project contract type name">		
348
				<xsl:attribute name="value"><xsl:value-of select='./contracttype/@classname'/> </xsl:attribute>
349
			</field>
350
			<field name = "funding" indexId = "" multiplicity = "false">
351
				<field name = "funding_level_0" indexId = "fundinglevel0_id" multiplicity = "false">
352
					<xsl:attribute name="value_original">
353
						<xsl:value-of select="./funding/funding_level_0"/>
354
					</xsl:attribute>					
355
					<xsl:attribute name = "value">
356
						<xsl:call-template name="getExtension">
357
							<xsl:with-param name="filename" select="./funding/funding_level_0"/>
358
						</xsl:call-template>			
359
						<!--xsl:value-of select='./funding/funding_level_0'/-->
360
					</xsl:attribute>
361
				</field>
362
				<field name = "funding_level_1" indexId = "fundinglevel1_id" multiplicity = "false">
363
					<xsl:attribute name="value_original">
364
						<xsl:value-of select="./funding/funding_level_1"/>
365
					</xsl:attribute>					
366
					<xsl:attribute name = "value">
367
						<xsl:call-template name="getExtension">
368
							<xsl:with-param name="filename" select="./funding/funding_level_1"/>
369
						</xsl:call-template>	
370
						<!--xsl:value-of select='./funding/funding_level_1'/-->
371
					</xsl:attribute>
372
				</field>
373
				<field name = "funding_level_2" indexId = "fundinglevel2_id" multiplicity = "false">
374
					<xsl:attribute name="value_original">
375
						<xsl:value-of select="./funding/funding_level_2"/>
376
					</xsl:attribute>					
377
					<xsl:attribute name = "value">
378
						<xsl:call-template name="getExtension">
379
							<xsl:with-param name="filename" select="./funding/funding_level_2"/>
380
						</xsl:call-template>	
381
						<!--xsl:value-of select='./funding/funding_level_2'/-->
382
					</xsl:attribute>
383
				</field>
384
			</field>
385
		</field>
386
	</xsl:if>
387
<!--RESULT-->
388
	<xsl:if test="./to/@type='result'">
389
		<field indexId = "objIdentifier"  multiplicity="true">
390
			<xsl:attribute name="name"><xsl:value-of select='./to/@class'/></xsl:attribute>
391
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
392
			<field name = "resultid" indexId ="objIdentifier" multiplicity="false" label="Result id">		
393
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
394
			</field>
395
			<field name = "title" indexId = "resulttitle" multiplicity = "false" label = "Title">
396
				<xsl:attribute name="value">
397
					<xsl:value-of select="./title"/>
398
				</xsl:attribute>
399
			</field>
400
			<field name = "dateofacceptance" indexId = "resultdateofacceptance" multiplicity = "false" label = "Date of acceptance">
401
				<xsl:attribute name="value">
402
					<xsl:value-of select="./dateofacceptance"/>
403
				</xsl:attribute>
404
			</field>
405
			<field name = "resulttypeid" indexId = "resulttypeid" multiplicity = "false" label = "type id">
406
				<xsl:attribute name="value">
407
					<xsl:value-of select="./resulttype/@classid"/>
408
				</xsl:attribute>
409
			</field>
410
			<field name = "resulttypename" indexId = "resulttypename" multiplicity = "false" label = "type name">
411
				<xsl:attribute name="value">
412
					<xsl:value-of select="./resulttype/@classname"/>
413
				</xsl:attribute>
414
			</field>
415
		</field>
416
	</xsl:if>	
417
<!--ORGANIZATION-->
418
	<xsl:if test="./to/@type='organization'">
419
		<field name="organization" indexId = "objIdentifier"  multiplicity="true">
420
			<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
421
			<field name = "organizationid" indexId ="objIdentifier" multiplicity="false" label="Organization id">		
422
				<xsl:attribute name="value"><xsl:value-of select='./to'/> </xsl:attribute>
423
			</field>
424
			<field name = "role" indexId ="" multiplicity="false" label="role">		
425
				<xsl:attribute name="value"><xsl:value-of select='./to/@class'/> </xsl:attribute>
426
			</field>
427
			<field name = "legalshortname" indexId ="organizationlegalshortname" multiplicity="false" label="Organization short name">		
428
				<xsl:attribute name="value"><xsl:value-of select='./legalshortname'/> </xsl:attribute>
429
			</field>
430
			<field name = "websiteurl" indexId ="organizationwebsiteurl" multiplicity="false" label="Website">		
431
				<xsl:attribute name="value"><xsl:value-of select='./websiteurl'/> </xsl:attribute>
432
			</field>
433
			<field name = "countryid" indexId ="organizationcountryid" multiplicity="false" label="Country code">		
434
				<xsl:attribute name="value"><xsl:value-of select='./country/@classid'/> </xsl:attribute>
435
			</field>
436
			<field name = "countryname" indexId ="organizationcountryname" multiplicity="false" label="Country">		
437
				<xsl:attribute name="value"><xsl:value-of select='./country/@classname'/> </xsl:attribute>
438
			</field>
439
			<field name = "participantnumber" indexId ="" multiplicity="false" label="Participant Number">		
440
				<xsl:attribute name="value"><xsl:value-of select='./participantnumber'/> </xsl:attribute>
441
			</field>
442
			<field name = "contactperson" indexId ="" multiplicity="false" label="Contact Person">		
443
				<xsl:attribute name="value"><xsl:value-of select='./contactperson'/> </xsl:attribute>
444
			</field>
445
		</field>
446
	</xsl:if>
447

    
448
</xsl:template>
449
<!-- CHILDREN -->
450
<xsl:template match="children">
451

    
452
	<xsl:for-each select = "./instance">
453
		<field name = "datasource"  indexId = "resultcollectedfromdatasourceid" multiplicity="true">
454
			<xsl:attribute name = "value"> <xsl:value-of select="./@id"/> </xsl:attribute><!--??-->
455
			<field name = "instanceId" indexId = "objIdentifier" multiplicity = "false">
456
				<xsl:attribute name="value"><xsl:value-of select="./@id"/></xsl:attribute>
457
			</field>
458
			<field name = "hostedby" indexId = "resulthostingdatasourceid" multiplicity="false">
459
				<xsl:attribute name = "value"> <xsl:value-of select="./hostedby/@id"/> </xsl:attribute>
460
			</field> 
461
			<field name = "hostedbyname" indexId = "resulthostingdatasourcename" multiplicity="false">
462
				<xsl:attribute name = "value"> <xsl:value-of select="./hostedby/@name"/> </xsl:attribute>
463
			</field>
464
			<xsl:for-each select="./licence">
465
				<field name = "licenceid" indexId = "" multiplicity = "true">
466
					<xsl:attribute name = "value"> <xsl:value-of select="./@classid"/> </xsl:attribute>
467
				</field>
468
				<field name = "licencename" indexId = "resultrights" multiplicity = "true">
469
					<xsl:attribute name = "value"> <xsl:value-of select="./@classname"/> </xsl:attribute>
470
				</field>
471
			</xsl:for-each>
472
			<xsl:for-each select="./instancetype">			
473
				<field name = "typeid" indexId = "instancetypeid" multiplicity = "true">
474
					<xsl:attribute name = "value"> <xsl:value-of select="./@classid"/> </xsl:attribute>
475
				</field>
476
				<field name = "typename" indexId = "instancetypename" multiplicity = "true">
477
					<xsl:attribute name = "value"> <xsl:value-of select="./@classname"/> </xsl:attribute>
478
				</field>
479
			</xsl:for-each>
480

    
481
			<xsl:for-each select="./webresource">	
482
				<field name = "webresource" indexId = "" multiplicity="true">
483
					<xsl:attribute name = "value"> <xsl:value-of select="."/> </xsl:attribute>
484
				</field>
485
				<xsl:for-each select="./url">	
486
					<field name = "url" indexId = "" multiplicity="true">
487
						<xsl:attribute name = "value"> <xsl:value-of select="."/> </xsl:attribute>
488
					</field>
489
				</xsl:for-each>
490
			</xsl:for-each>
491
			<!--field name = "officialname" indexId = "" multiplicity="false">
492
				<xsl:attribute name = "value"> <xsl:value-of select="./datasource/officialname"/> </xsl:attribute>
493
			</field>
494
			<field name = "datasourcetypeid" indexId = "" multiplicity = "true">
495
				<xsl:attribute name = "value"> <xsl:value-of select="./datasource/datasourcetype/@classid"/> </xsl:attribute>
496
			</field>
497
			<field name = "datasourcetypename" indexId = "" multiplicity = "true">
498
				<xsl:attribute name = "value"> <xsl:value-of select="./datasource/datasourcetype/@classname"/> </xsl:attribute>
499
			</field-->
500
			
501
		</field>
502
	</xsl:for-each>
503

    
504
	<xsl:for-each select = "./externalreference">
505
		<field name="externalreference" multiplicity="true" indexId="">
506
			<field name="sitename" multiplicity="false" indexId="">
507
				<xsl:attribute name="value">
508
					<xsl:value-of select="./sitename"/>
509
				</xsl:attribute>
510
			</field>
511
			<field name="label" multiplicity="false" indexId="">
512
				<xsl:attribute name="value">
513
					<xsl:value-of select="./label"/>
514
				</xsl:attribute>
515
			</field>
516
			
517
			<field name="url" multiplicity="false" indexId="">
518
				<xsl:attribute name="value">
519
					<xsl:value-of select="./url"/>
520
				</xsl:attribute>
521
			</field>
522

    
523
			<field name="typeid" multiplicity="false" indexId="">
524
				<xsl:attribute name="value">
525
					<xsl:value-of select="./qualifier/@classid"/>
526
				</xsl:attribute>
527
			</field>
528
			<field name="refidentifier" multiplicity="false" indexId="">
529
				<xsl:attribute name="value">
530
					<xsl:value-of select="./refidentifier"/>
531
				</xsl:attribute>
532
			</field>
533
		</field>
534
	</xsl:for-each>
535
</xsl:template>
536

    
537
<xsl:template name="getExtension">
538
	<xsl:param name="filename"/>
539
	<xsl:choose>
540
		<xsl:when test="contains($filename, '::')">
541
			<xsl:call-template name="getExtension">
542
				<xsl:with-param name="filename" select="substring-after($filename, '::')"/>
543
			</xsl:call-template>
544
		</xsl:when>
545
		<xsl:otherwise>
546
			<xsl:value-of select="$filename"/>
547
		</xsl:otherwise>
548
	</xsl:choose>
549
</xsl:template>
550

    
551

    
552
</xsl:stylesheet>
553

    
554

    
(19-19/22)