Project

General

Profile

1
<RESOURCE_PROFILE>
2
    <HEADER>
3
        <RESOURCE_IDENTIFIER value="e9a55247-d9b3-4c79-9789-ecfc5bf7fbbc_VHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZXMvVHJhbnNmb3JtYXRpb25SdWxlRFNSZXNvdXJjZVR5cGU="/>
4
        <RESOURCE_TYPE value="TransformationRuleDSResourceType"/>
5
        <RESOURCE_KIND value="TransformationRuleDSResources"/>
6
        <RESOURCE_URI value=""/>
7
        <DATE_OF_CREATION value="2018-06-29T11:15:30+00:00"/>
8
    </HEADER>
9
    <BODY>
10
        <CONFIGURATION>
11
            <IMPORTED/>
12
            <SCRIPT>
13
                <TITLE>DOAJ 2 DB</TITLE>
14
                <CODE>
15
                    <![CDATA[
16
                    <?xml version="1.0" encoding="UTF-8"?>
17
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
18
                xmlns:stringUtils="org.apache.commons.lang.StringUtils"
19
                version="1.0">
20

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

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

    
42
	<xsl:template name="createJournal">
43
		<xsl:param name="rid"/>
44

    
45
		<record>
46
			<xsl:copy-of select=".//*[local-name()='header']"/>
47
			<metadata>
48
				<xsl:variable name="datasourceId" select="concat($namespacePrefix, '::', $rid)"/>
49
				<xsl:variable name="ISSNNS" select="stringUtils:replace($rid,'-','')"/>
50
				<ROWS>
51
					<ROW table="dsm_datasources">
52
						<FIELD name="id">
53
							<xsl:value-of select="$datasourceId"/>
54
						</FIELD>
55
						<FIELD name="_dnet_resource_identifier_">
56
							<xsl:value-of select="$datasourceId"/>
57
						</FIELD>
58
						<FIELD name="officialname">
59
							<xsl:value-of select="normalize-space(//column[./@name='Journal title'])"/>
60
						</FIELD>
61
						<FIELD name="englishname">
62
							<xsl:value-of select="normalize-space(//column[./@name='Journal title'])"/>
63
						</FIELD>
64
						<FIELD name="od_contenttypes">
65
							<xsl:value-of select="string('Journal articles')"/>
66
						</FIELD>
67
						<FIELD name="issn">
68
							<xsl:value-of select="normalize-space(//column[./@name='Journal ISSN (print version)'])"/>
69
						</FIELD>
70
						<FIELD name="eissn">
71
							<xsl:value-of select="normalize-space(//column[./@name='Journal EISSN (online version)'])"/>
72
						</FIELD>
73
						<FIELD name="websiteurl">
74
							<xsl:value-of select="normalize-space(//column[./@name='Journal URL'])"/>
75
						</FIELD>
76
						<FIELD name="namespaceprefix">
77
							<xsl:value-of select="concat('doaj', $ISSNNS)"/>
78
						</FIELD>
79
						<FIELD name="typology">pubsrepository::journal</FIELD>
80
						<FIELD name="collectedfrom">
81
							<xsl:value-of select="$varDatasourceId"/>
82
						</FIELD>
83
						<FIELD name="provenanceaction">sysimport:crosswalk:entityregistry</FIELD>
84
					</ROW>
85
				</ROWS>
86
			</metadata>
87
		</record>
88
	</xsl:template>
89

    
90

    
91
</xsl:stylesheet>
92
		]]>
93
                </CODE>
94
            </SCRIPT>
95
        </CONFIGURATION>
96
        <STATUS/>
97
        <SECURITY_PARAMETERS>SECURITY_PARAMETERS</SECURITY_PARAMETERS>
98
    </BODY>
99
</RESOURCE_PROFILE>
(2-2/4)