Project

General

Profile

1
<RESOURCE_PROFILE>
2
	<HEADER>
3
		<RESOURCE_IDENTIFIER value="76843fdc-3179-40b9-b906-2366f4210be7_VHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZXMvVHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZVR5cGU="/>
4
		<RESOURCE_TYPE value="TransformationRuleDSResourceType"/>
5
		<RESOURCE_KIND value="TransformationRuleDSResources"/>
6
		<RESOURCE_URI value=""/>
7
		<DATE_OF_CREATION value="2018-06-04T11:15:30+00:00"/>
8
	</HEADER>
9
	<BODY>
10
		<CONFIGURATION>
11
			<IMPORTED/>
12
			<SCRIPT>
13
				<TITLE>AKA to DB</TITLE>
14
				<CODE>
15
					<![CDATA[
16
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
17
                xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:utils="eu.dnetlib.data.transform.xml.AbstractDNetXsltFunctions"
18
                exclude-result-prefixes="xs" version="2.0">
19

    
20
    <xsl:param name="varDataSourceId"/>
21
    <xsl:variable name="namespacePrefix" select="string('aka_________')"/>
22

    
23
    <xsl:variable name="funderID" select="concat($namespacePrefix, '::AKA')"/>
24

    
25

    
26
    <!--<xsl:variable name="stream" select="normalize-space(.//column[@name='FUNDING STREAM(S)'])"/>-->
27
    <xsl:variable name="fundingID">
28

    
29
        <xsl:value-of select="$funderID"/>
30
    </xsl:variable>
31

    
32
    <xsl:variable name="projectId" select="concat($namespacePrefix, '::',  normalize-space(.//column[@name='Decision No.']))"/>
33

    
34
    <xsl:variable name="fundingPeriod" select="tokenize(.//column[@name='Funding period'],'-')"/>
35
    <xsl:variable name="startDate" select="normalize-space($fundingPeriod[1])"/>
36
    <xsl:variable name="endDate" select="normalize-space($fundingPeriod[2])"/>
37

    
38
    <xsl:variable name="dateFormat" select="string('dd.MM.yyyy')"/>
39
    <xsl:variable name="projectTitle" select="normalize-space(.//column[@name='Project title'])"/>
40

    
41
    <xsl:template match="/">
42
        <record>
43

    
44
            <xsl:copy-of select=".//*[local-name()='header']"/>
45
            <metadata>
46
                <xsl:if test="string-length($projectTitle) &gt; 0 and string-length($projectId) &gt; 0">
47
                    <ROWS>
48
                        <ROW table="projects">
49
                            <FIELD name="_dnet_resource_identifier_">
50
                                <xsl:value-of select="$projectId"/>
51
                            </FIELD>
52
                            <FIELD name="id">
53
                                <xsl:value-of select="$projectId"/>
54
                            </FIELD>
55
                            <FIELD name="lastupdate" type="date"><xsl:value-of select="current-dateTime()"/></FIELD>
56
                            <FIELD name="code">
57
                                <xsl:value-of select="normalize-space(.//column[@name='Decision No.'])"/>
58
                            </FIELD>
59
                            <FIELD name="startdate" type="date" format="{$dateFormat}">
60
                                <xsl:value-of select="$startDate"/>
61
                            </FIELD>
62
                            <FIELD name="enddate" type="date" format="{$dateFormat}">
63
                                <xsl:value-of select="$endDate"/>
64
                            </FIELD>
65
                            <FIELD name="title">
66
                                <xsl:value-of select="$projectTitle"/>
67
                            </FIELD>
68
                            <FIELD name="call_identifier">
69
                                <xsl:value-of select=".//column[@name='Call']"/>
70
                            </FIELD>
71
                            <FIELD name="fundedamount" type="float">
72
                                <xsl:value-of select="translate(.//column[@name='Funding'],',','')"/>
73
                            </FIELD>
74
                            <FIELD name="currency">
75
                            	<xsl:value-of select="string('EUR')"/>
76
                            </FIELD>
77
                            <FIELD name="provenanceActionClass">sysimport:crosswalk:entityregistry</FIELD>
78
                            <FIELD name="provenanceActionScheme">dnet:provenanceActions</FIELD>
79
                            <FIELD name="collectedfrom">
80
                                <xsl:value-of select="$varDataSourceId"/>
81
                            </FIELD>
82
                            <FIELD name="oa_mandate_for_publications" type="boolean">false</FIELD>
83
                        </ROW>
84

    
85
                        <ROW table="project_fundingpath">
86
                            <FIELD name="_dnet_resource_identifier_">
87
                                <xsl:value-of select="concat($fundingID,'@@', $projectId)"/>
88
                            </FIELD>
89
                            <FIELD name="funding">
90
                                <xsl:value-of select="$fundingID"/>
91
                            </FIELD>
92
                            <FIELD name="project">
93
                                <xsl:value-of select="$projectId"/>
94
                            </FIELD>
95
                            <FIELD name="startdate" type="date" format="{$dateFormat}">
96
                                <xsl:value-of select="$startDate"/>
97
                            </FIELD>
98
                            <FIELD name="enddate" type="date" format="{$dateFormat}">
99
                                <xsl:value-of select="$endDate"/>
100
                            </FIELD>
101
                        </ROW>
102
                        <xsl:variable name="organizationId" select="concat($namespacePrefix,'::',utils:md5(normalize-space(.//column[@name='Organisation'])))"/>
103

    
104
                        <ROW table = "dsm_organizations">
105
                            <FIELD name="_dnet_resource_identifier_">
106
                                <xsl:value-of select="$organizationId"/>
107
                            </FIELD>
108
                            <FIELD name="id">
109
                                <xsl:value-of select="$organizationId"/>
110
                            </FIELD>
111
                            <FIELD name="legalname">
112
                                <xsl:value-of select="normalize-space(.//column[@name='Organisation'])"/>
113
                            </FIELD>
114
                            <!-- FIXES #4427#note-4 No country for projects abroad, based on the name of the call -->
115
                            <xsl:variable name="call"><xsl:value-of select=".//column[@name='Call']"/></xsl:variable>
116
                            <xsl:if test="not(starts-with($call, 'Grants for researcher training and research work abroad') or
117
                                starts-with($call, 'Grants for researcher training and research abroad') or
118
                                starts-with($call, 'Researcher training and research abroad') or
119
                                starts-with($call, 'Researcher training and research work abroad'))">
120
                             <FIELD name="country">
121
                                <xsl:value-of select="string('FI')"/>
122
                            </FIELD>
123
                            </xsl:if>
124
                            <FIELD name="collectedfrom">
125
                                <xsl:value-of select="$varDataSourceId"/>
126
                            </FIELD>
127
                            <FIELD name="lastupdate" type="date"><xsl:value-of select="current-dateTime()"/></FIELD>
128
                            <FIELD name="provenanceaction">sysimport:crosswalk:entityregistry</FIELD>
129
                        </ROW>
130
                        <ROW table="project_organization">
131
                            <FIELD name="_dnet_resource_identifier_">
132
                                <xsl:value-of select='concat($projectId, "@@", $organizationId)'/>
133
                            </FIELD>
134
                            <FIELD name="project">
135
                                <xsl:value-of select="$projectId"/>
136
                            </FIELD>
137
                            <FIELD name="resporganization">
138
                                <xsl:value-of select="$organizationId"/>
139
                            </FIELD>
140
                            <FIELD name="semanticclass">coordinator</FIELD>
141
                        </ROW>
142
                    </ROWS>
143
                </xsl:if>
144
            </metadata>
145
        </record>
146

    
147
    </xsl:template>
148
</xsl:stylesheet>
149
]]>
150
				</CODE>
151
			</SCRIPT>
152
		</CONFIGURATION>
153
		<STATUS/>
154
		<SECURITY_PARAMETERS>SECURITY_PARAMETERS</SECURITY_PARAMETERS>
155
	</BODY>
156
</RESOURCE_PROFILE>
(1-1/26)