Project

General

Profile

« Previous | Next » 

Revision 48139

integrated (hopefully) all required changes from dnet40

View differences:

fct_contexts.xsl
1 1
<?xml version="1.0" encoding="UTF-8"?>
2 2

  
3 3
<xsl:stylesheet version="1.0"
4
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fn="http://www.w3.org/2005/xpath-functions"
5
	exclude-result-prefixes="fn">
4
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fn="http://www.w3.org/2005/xpath-functions"
5
                exclude-result-prefixes="fn">
6 6

  
7
	<xsl:variable name="namespacePrefix" select="string('fct_________')" />
8
	<xsl:variable name="funderID" select="concat($namespacePrefix, '::FCT')" />
9
	
7
	<xsl:variable name="namespacePrefix" select="string('fct_________')"/>
8
	<xsl:variable name="funderID" select="concat($namespacePrefix, '::FCT')"/>
9

  
10 10
	<xsl:template match="/">
11
		<xsl:variable name="p1"	select="normalize-space(.//funding/program)" />
12
		<xsl:variable name="p2" select="normalize-space(.//funding/program2)" />
13
				
11
		<xsl:variable name="p1" select="normalize-space(.//funding/program)"/>
12
		<xsl:variable name="p2" select="normalize-space(.//funding/program2)"/>
13

  
14 14
		<fundingtree>
15 15
			<funder>
16
				<id><xsl:value-of select="$funderID" /></id>
16
				<id>
17
					<xsl:value-of select="$funderID"/>
18
				</id>
17 19
				<shortname>FCT</shortname>
18 20
				<name>Fundação para a Ciência e a Tecnologia, I.P.</name>
19 21
				<jurisdiction>PT</jurisdiction>
......
21 23
			<xsl:if test="string-length($p1) &gt; 0">
22 24
				<xsl:choose>
23 25
					<xsl:when test="string-length($p2) &gt; 0">
24
						<xsl:variable name="level0" select="concat($funderID, '::', $p1)" />
25
						<xsl:variable name="level1" select="concat($funderID, '::', $p1, '::', $p2)" />
26
						<xsl:variable name="level0" select="concat($funderID, '::', $p1)"/>
27
						<xsl:variable name="level1" select="concat($funderID, '::', $p1, '::', $p2)"/>
26 28
						<funding_level_1>
27
							<id><xsl:value-of select="$level1" /></id>
28
							<description><xsl:value-of select="$p2" /></description>
29
							<name><xsl:value-of select="$p2" /></name>
29
							<id>
30
								<xsl:value-of select="$level1"/>
31
							</id>
32
							<description>
33
								<xsl:value-of select="$p2"/>
34
							</description>
35
							<name>
36
								<xsl:value-of select="$p2"/>
37
							</name>
30 38
							<parent>
31 39
								<funding_level_0>
32
									<id><xsl:value-of select="$level0" /></id>
33
									<description><xsl:value-of select="$p1" /></description>
34
									<name><xsl:value-of select="$p1" /></name>
35
									<parent />
40
									<id>
41
										<xsl:value-of select="$level0"/>
42
									</id>
43
									<description>
44
										<xsl:value-of select="$p1"/>
45
									</description>
46
									<name>
47
										<xsl:value-of select="$p1"/>
48
									</name>
49
									<parent/>
36 50
									<class>fct:program</class>
37 51
								</funding_level_0>
38 52
							</parent>
39 53
						</funding_level_1>
40 54
					</xsl:when>
41 55
					<xsl:otherwise>
42
						<xsl:variable name="level0" select="concat($funderID, '::', $p1)" />
56
						<xsl:variable name="level0" select="concat($funderID, '::', $p1)"/>
43 57
						<funding_level_0>
44
							<id><xsl:value-of select="$level0" /></id>
45
							<description><xsl:value-of select="$p1" /></description>
46
							<name><xsl:value-of select="$p1" /></name>
47
							<parent />
58
							<id>
59
								<xsl:value-of select="$level0"/>
60
							</id>
61
							<description>
62
								<xsl:value-of select="$p1"/>
63
							</description>
64
							<name>
65
								<xsl:value-of select="$p1"/>
66
							</name>
67
							<parent/>
48 68
							<class>fct:program</class>
49 69
						</funding_level_0>
50 70
					</xsl:otherwise>

Also available in: Unified diff