Project

General

Profile

1 7542 tao
<beans xmlns="http://www.springframework.org/schema/beans"
2
	xmlns:p="http://www.springframework.org/schema/p"
3
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
	xsi:schemaLocation="http://www.springframework.org/schema/beans
5
						http://www.springframework.org/schema/beans/spring-beans.xsd
6
						http://www.springframework.org/schema/context
7
    					http://www.springframework.org/schema/context/spring-context-3.0.xsd">
8
9
10
	<bean id="eml.abstract" class="org.dataone.cn.indexer.parser.MergeSolrField">
11
	  <constructor-arg name="name" value="abstract" />
12
	  <constructor-arg name="xpath"
13
	    value="//dataset/abstract/descendant::text()" />
14
	  <constructor-arg name="delimiter" value=" " />
15
	  <property name="multivalue" value="false" />
16
	  <property name="dedupe" value="false" />
17
	</bean>
18
19
	<bean id="eml.keywords" class="org.dataone.cn.indexer.parser.SolrField">
20
		<constructor-arg name="name" value="keywords" />
21
		<constructor-arg name="xpath"
22
			value="//dataset/keywordSet/keyword/text()" />
23
		<property name="multivalue" value="true" />
24
		<property name="dedupe" value="true" />
25
	</bean>
26
27
	<bean id="eml.southBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
28
		<constructor-arg name="name" value="southBoundCoord" />
29
		<constructor-arg name="xpath"
30
			value="//dataset/coverage/geographicCoverage/boundingCoordinates/southBoundingCoordinate/text()" />
31
		<property name="multivalue" value="false" />
32
		<property name="converter" ref="solrLatitudeConverter" />
33
	</bean>
34
35
	<bean id="eml.northBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
36
		<constructor-arg name="name" value="northBoundCoord" />
37
		<constructor-arg name="xpath"
38
			value="//dataset/coverage/geographicCoverage/boundingCoordinates/northBoundingCoordinate/text()" />
39
		<property name="multivalue" value="false" />
40
		<property name="converter" ref="solrLatitudeConverter" />
41
	</bean>
42
43
	<bean id="eml.westBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
44
		<constructor-arg name="name" value="westBoundCoord" />
45
		<constructor-arg name="xpath"
46
			value="//dataset/coverage/geographicCoverage/boundingCoordinates/westBoundingCoordinate/text()" />
47
		<property name="multivalue" value="false" />
48
		<property name="converter" ref="solrLongitudeConverter" />
49
	</bean>
50
51
	<bean id="eml.eastBoundCoord" class="org.dataone.cn.indexer.parser.SolrField">
52
		<constructor-arg name="name" value="eastBoundCoord" />
53
		<constructor-arg name="xpath"
54
			value="//dataset/coverage/geographicCoverage/boundingCoordinates/eastBoundingCoordinate/text()" />
55
		<property name="multivalue" value="false" />
56
		<property name="converter" ref="solrLongitudeConverter" />
57
	</bean>
58
59
	<bean id="eml.beginDate" class="org.dataone.cn.indexer.parser.SolrField">
60
		<constructor-arg name="name" value="beginDate" />
61
		<constructor-arg name="xpath"
62
			value="//dataset/coverage/temporalCoverage/rangeOfDates/beginDate/calendarDate/text()" />
63
		<property name="multivalue" value="false" />
64
		<property name="converter" ref="dateConverter" />
65
	</bean>
66
67
	<bean id="eml.endDate" class="org.dataone.cn.indexer.parser.SolrField">
68
		<constructor-arg name="name" value="endDate" />
69
		<constructor-arg name="xpath"
70
			value="//dataset/coverage/temporalCoverage/rangeOfDates/endDate/calendarDate/text()" />
71
		<property name="multivalue" value="false" />
72
		<property name="converter" ref="dateConverter" />
73
	</bean>
74
75
	<bean id="eml.pubDate" class="org.dataone.cn.indexer.parser.SolrField">
76
		<constructor-arg name="name" value="pubDate" />
77
		<constructor-arg name="xpath" value="//dataset/pubDate/text()" />
78
		<property name="multivalue" value="false" />
79
		<property name="converter" ref="dateConverter" />
80
	</bean>
81
82
	<bean id="eml.title" class="org.dataone.cn.indexer.parser.SolrField">
83
		<constructor-arg name="name" value="title" />
84
		<constructor-arg name="xpath" value="//dataset/title/text()" />
85
		<property name="multivalue" value="false" />
86
	</bean>
87
88
	<bean id="eml.project" class="org.dataone.cn.indexer.parser.SolrField">
89
		<constructor-arg name="name" value="project" />
90
		<constructor-arg name="xpath" value="//dataset/project/title/text()" />
91
		<property name="multivalue" value="false" />
92
	</bean>
93
94
	<bean id="eml.author" class="org.dataone.cn.indexer.parser.CommonRootSolrField"
95
			p:multivalue="false"
96
			p:root-ref="authorNameRoot">
97
			<constructor-arg name="name" value="author" />
98
	</bean>
99
100
	<bean id="authorNameRoot" class="org.dataone.cn.indexer.parser.utility.RootElement"
101
		p:name="author"
102
		p:xPath="//dataset/creator/individualName"
103
		p:template="[givenName] [surName]">
104
		<property name="leafs">
105
			<list>
106
				<ref bean="givenNameLeaf"/>
107
				<ref bean="surNameLeaf"/>
108
			</list>
109
		</property>
110
	</bean>
111
112
	<bean id="eml.author_lname" class="org.dataone.cn.indexer.parser.SolrField">
113
		<constructor-arg name="name" value="authorLastName" />
114
		<constructor-arg name="xpath"
115
			value="//dataset/creator/individualName/surName/text()" />
116
		<property name="multivalue" value="true" />
117
	</bean>
118
119
	<bean id="eml.investigator" class="org.dataone.cn.indexer.parser.SolrField">
120
		<constructor-arg name="name" value="investigator" />
121
		<constructor-arg name="xpath"
122
			value="//dataset/creator/individualName/surName/text()" />
123
		<property name="multivalue" value="true" />
124
	</bean>
125
126
	<bean id="eml.origin" class="org.dataone.cn.indexer.parser.CommonRootSolrField"
127
		p:multivalue="true"
128
		p:root-ref="originRoot">
129
		<constructor-arg name="name" value="origin" />
130
	</bean>
131
132
	<bean id="originRoot" class="org.dataone.cn.indexer.parser.utility.RootElement"
133
		p:name="origin"
134
		p:xPath="//dataset/creator"
135
		p:template="[individualName]||[organizationName]">
136
		<property name="leafs"><list><ref bean="organizationNameLeaf"/></list></property>
137
		<property name="subRoots"><list><ref bean="individualNameRoot" /></list></property>
138
	</bean>
139
140
	<bean id="organizationNameLeaf" class="org.dataone.cn.indexer.parser.utility.LeafElement"
141
		p:name="organizationName"
142
		p:xPath="organizationName/text()" />
143
144
	<bean id="individualNameRoot" class="org.dataone.cn.indexer.parser.utility.RootElement"
145
		p:name="individualName"
146
		p:xPath="individualName"
147
		p:template="[givenName] [surName]">
148
		<property name="leafs">
149
			<list>
150
				<ref bean="givenNameLeaf"/>
151
				<ref bean="surNameLeaf"/>
152
			</list>
153
		</property>
154
	</bean>
155
156
	<bean id="givenNameLeaf" class="org.dataone.cn.indexer.parser.utility.LeafElement"
157
		p:name="givenName"
158
		p:xPath="givenName/text()" />
159
160
	<bean id="surNameLeaf" class="org.dataone.cn.indexer.parser.utility.LeafElement"
161
		p:name="surName"
162
		p:xPath="surName/text()"/>
163
164
	<bean id="eml.contactOrganization" class="org.dataone.cn.indexer.parser.SolrField">
165
		<constructor-arg name="name" value="contactOrganization" />
166
		<constructor-arg name="xpath"
167
		  value="//dataset/creator/organizationName/text()" />
168
		<property name="multivalue" value="true" />
169
		<property name="dedupe" value="true"/>
170
	</bean>
171
172
	<bean id="eml.fileID" class="org.dataone.cn.indexer.parser.ResolveSolrField">
173
		<constructor-arg name="name" value="fileID" />
174
	</bean>
175
176
	<bean id="eml.fullText" class="org.dataone.cn.indexer.parser.FullTextSolrField">
177
		<constructor-arg name="name" value="text" />
178
		<constructor-arg name="xpath"
179
			value="//dataset/*[not(self::dataTable)]//text()" />
180
		<property name="multivalue" value="false" />
181
		<property name="combineNodes" value="true"/>
182
	</bean>
183
184
</beans>