Project

General

Profile

1
<RESOURCE_PROFILE>
2
	<HEADER>
3
		<RESOURCE_IDENTIFIER value="a0588a13-4085-46fd-9542-a97a91577cea_VHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZXMvVHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZVR5cGU="/>
4
		<RESOURCE_TYPE value="TransformationRuleDSResourceType"/>
5
		<RESOURCE_KIND value="TransformationRuleDSResources"/>
6
		<RESOURCE_URI value=""/>
7
		<DATE_OF_CREATION value="2018-07-02T11:15:30+00:00"/>
8
	</HEADER>
9
	<BODY>
10
		<CONFIGURATION>
11
			<IMPORTED/>
12
			<SCRIPT>
13
				<TITLE>JOURNALTITLES 2 DB</TITLE>
14
				<CODE>
15

    
16
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
17
                xmlns:stringUtils="org.apache.commons.lang.StringUtils"
18
                xmlns:dri="http://www.driver-repository.eu/namespace/dri"
19
                version="1.0">
20

    
21
	<xsl:param name="varDataSourceId"/>
22

    
23
	<xsl:template match="/">
24
		<xsl:choose>
25
			<xsl:when test="//column[./@name='ISSN'] != ''">
26
				<xsl:call-template name="createJournal">
27
					<xsl:with-param name="rid" select="normalize-space(//column[./@name='ISSN'])"/>
28
				</xsl:call-template>
29
			</xsl:when>
30
			<xsl:when test="//column[./@name='EISSN'] != ''">
31
				<xsl:call-template name="createJournal">
32
					<xsl:with-param name="rid" select="normalize-space(//column[./@name='EISSN'])"/>
33
				</xsl:call-template>
34
			</xsl:when>
35
			<xsl:otherwise>
36
				<record/>
37
			</xsl:otherwise>
38
		</xsl:choose>
39
	</xsl:template>
40

    
41

    
42
	<xsl:template name="createJournal">
43
		<xsl:param name="rid"/>
44
	    <xsl:variable name="namespacePrefix" select="normalize-space(.//dri:datasourceprefix)" />
45
		<record>
46

    
47
			<xsl:copy-of select=".//*[local-name()='header']"/>
48
			<metadata>
49
				<xsl:variable name="datasourceId" select="concat($namespacePrefix, '::', $rid)"/>
50
				<xsl:variable name="ISSNNS" select="stringUtils:replace($rid,'-','')"/>
51

    
52
				<ROWS>
53
					<ROW table="dsm_datasources">
54
						<FIELD name="id">
55
							<xsl:value-of select="$datasourceId"/>
56
						</FIELD>
57
						<FIELD name="_dnet_resource_identifier_">
58
							<xsl:value-of select="$datasourceId"/>
59
						</FIELD>
60
						<FIELD name="officialname">
61
							<xsl:value-of select="normalize-space(//column[./@name='Title'])"/>
62
						</FIELD>
63
						<FIELD name="englishname">
64
							<xsl:value-of select="normalize-space(//column[./@name='Title'])"/>
65
						</FIELD>
66
						<FIELD name="od_contenttypes">
67
							<xsl:value-of select="string('Journal articles')"/>
68
						</FIELD>
69
						<FIELD name="languages">
70
							<xsl:value-of select="normalize-space(//column[./@name='Language'])"/>
71
						</FIELD>
72
						<FIELD name="issn">
73
							<xsl:value-of select="normalize-space(//column[./@name='ISSN'])"/>
74
						</FIELD>
75
						<FIELD name="eissn">
76
							<xsl:value-of select="normalize-space(//column[./@name='EISSN'])"/>
77
						</FIELD>
78
						<FIELD name="description">
79
							<xsl:value-of select="normalize-space(//column[./@name='Keyword'])"/>
80
						</FIELD>
81
						<FIELD name="websiteurl">
82
							<xsl:value-of select="normalize-space(//column[./@name='address'])"/>
83
						</FIELD>
84
						<FIELD name="namespaceprefix">
85
							<xsl:value-of select="concat('ojs_', $ISSNNS)"/>
86
						</FIELD>
87
						<FIELD name="typology">pubsrepository::journal</FIELD>
88
						<FIELD name="collectedfrom">
89
							<xsl:value-of select="$varDataSourceId"/>
90
						</FIELD>
91
						<FIELD name="provenanceaction">sysimport:crosswalk:entityregistry</FIELD>
92
					</ROW>
93
				</ROWS>
94
			</metadata>
95
		</record>
96
	</xsl:template>
97

    
98
</xsl:stylesheet>
99
				</CODE>
100
			</SCRIPT>
101
		</CONFIGURATION>
102
		<STATUS/>
103
		<SECURITY_PARAMETERS>SECURITY_PARAMETERS</SECURITY_PARAMETERS>
104
	</BODY>
105
</RESOURCE_PROFILE>
(4-4/6)