Project

General

Profile

Download (9.65 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.remote.dto.oaipmh;
2

    
3
import java.net.URI;
4
import java.time.ZonedDateTime;
5

    
6
import javax.xml.bind.annotation.XmlAccessType;
7
import javax.xml.bind.annotation.XmlAccessorType;
8
import javax.xml.bind.annotation.XmlElement;
9
import javax.xml.bind.annotation.XmlRootElement;
10
import javax.xml.bind.annotation.XmlType;
11
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
12

    
13
import eu.etaxonomy.cdm.jaxb.DateTimeAdapter;
14

    
15
@XmlAccessorType(XmlAccessType.FIELD)
16
@XmlType(name = "oai_dcType", namespace = "http://www.openarchives.org/OAI/2.0/oai_dc/", propOrder = {
17
    "title",
18
    "creator",
19
    "subject",
20
    "description",
21
    "publisher",
22
    "contributor",
23
    "date",
24
    "type",
25
    "format",
26
    "identifier",
27
    "source",
28
    "language",
29
    "relation",
30
    "coverage",
31
    "rights"
32
})
33
@XmlRootElement(name = "dc", namespace = "http://www.openarchives.org/OAI/2.0/oai_dc/")
34
public class OaiDc {
35
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
36
    private String title;
37

    
38
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
39
    private String creator;
40

    
41
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
42
    private String subject;
43

    
44
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
45
    private String description;
46

    
47
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
48
    private String publisher;
49

    
50
	@XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
51
    private String contributor;
52

    
53
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
54
    @XmlJavaTypeAdapter(DateTimeAdapter.class)
55
    private ZonedDateTime date;
56

    
57
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
58
    private String type;
59

    
60
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
61
    private String format;
62

    
63
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
64
    private URI identifier;
65

    
66
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
67
    private String source;
68

    
69
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
70
    private String language;
71

    
72
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
73
    private String relation;
74

    
75
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
76
    private String coverage;
77

    
78
    @XmlElement(namespace = "http://purl.org/dc/elements/1.1/")
79
    private String rights;
80

    
81
    public String getTitle() {
82
		return title;
83
	}
84

    
85
	public void setTitle(String title) {
86
		this.title = title;
87
	}
88

    
89
	/**
90
	 * An entity primarily responsible for making the resource.
91
	 * <p>
92
	 * Examples of a Creator include a person, an organization, or a service.
93
	 * Typically, the name of a Creator should be used to indicate the entity.
94
	 *
95
	 * @return
96
	 */
97
	public String getCreator() {
98
		return creator;
99
	}
100

    
101
	/**
102
	 * An entity primarily responsible for making the resource.
103
	 * <p>
104
	 * Examples of a Creator include a person, an organization, or a service.
105
	 * Typically, the name of a Creator should be used to indicate the entity.
106
	 *
107
	 * @param creator
108
	 */
109
	public void setCreator(String creator) {
110
		this.creator = creator;
111
	}
112

    
113
	/**
114
	 * The topic of the resource.
115
	 * <p>
116
	 * Typically, the subject will be represented using keywords, key phrases,
117
	 * or classification codes. Recommended best practice is to use a controlled
118
	 * vocabulary. To describe the spatial or temporal topic of the resource,
119
	 * use the Coverage element.
120
	 *
121
	 * @return
122
	 */
123
	public String getSubject() {
124
		return subject;
125
	}
126

    
127
	/**
128
	 * The topic of the resource.
129
	 * <p>
130
	 * Typically, the subject will be represented using keywords, key phrases,
131
	 * or classification codes. Recommended best practice is to use a controlled
132
	 * vocabulary. To describe the spatial or temporal topic of the resource,
133
	 * use the Coverage element.
134
	 *
135
	 * @param subject
136
	 */
137
	public void setSubject(String subject) {
138
		this.subject = subject;
139
	}
140

    
141
	/**
142
	 * An account of the resource.
143
	 * <p>
144
	 * Description may include but is not limited to: an abstract, a table of
145
	 * contents, a graphical representation, or a free-text account of the
146
	 * resource.
147
	 *
148
	 * @param description
149
	 */
150
	public void setDescription(String description) {
151
		this.description = description;
152
	}
153

    
154
	/**
155
	 * An account of the resource.
156
	 * <p>
157
	 * Description may include but is not limited to: an abstract, a table of
158
	 * contents, a graphical representation, or a free-text account of the
159
	 * resource.
160
	 *
161
	 * @return
162
	 */
163
	public String getDescription() {
164
		return description;
165
	}
166

    
167
	/**
168
	 * An entity responsible for making the resource available.
169
	 * <p>
170
	 * Examples of a Publisher include a person, an organization, or a service.
171
	 * Typically, the name of a Publisher should be used to indicate the entity.
172
	 *
173
	 * @return
174
	 */
175
	public String getPublisher() {
176
		return publisher;
177
	}
178

    
179
	/**
180
	 * An entity responsible for making the resource available.
181
	 * <p>
182
	 * Examples of a Publisher include a person, an organization, or a service.
183
	 * Typically, the name of a Publisher should be used to indicate the entity.
184
	 *
185
	 */
186
	public void setPublisher(String publisher) {
187
		this.publisher = publisher;
188
	}
189

    
190

    
191
	public void setContributor(String contributor) {
192
		this.contributor = contributor;
193
	}
194

    
195
	public String getContributor() {
196
		return contributor;
197
	}
198

    
199
	public ZonedDateTime getDate() {
200
		return date;
201
	}
202

    
203
	public void setDate(ZonedDateTime date) {
204
		this.date = date;
205
	}
206

    
207
	/**
208
	 * The nature or genre of the resource.
209
	 * <p>
210
	 * Recommended best practice is to use a controlled vocabulary such as the
211
	 * DCMI Type Vocabulary [DCMITYPE] {@link http://dublincore.org/documents/dcmi-type-vocabulary/}. To describe the file
212
	 * format, physical medium, or dimensions of the resource, use the Format
213
	 * element.
214
	 *
215
	 * @return
216
	 */
217
	public String getType() {
218
		return type;
219
	}
220

    
221
	/**
222
	 * The nature or genre of the resource.
223
	 * <p>
224
	 * Recommended best practice is to use a controlled vocabulary such as the
225
	 * DCMI Type Vocabulary [DCMITYPE] {@link http://dublincore.org/documents/dcmi-type-vocabulary/}. To describe the file
226
	 * format, physical medium, or dimensions of the resource, use the Format
227
	 * element.
228
	 *
229
	 * @param type
230
	 */
231
	public void setType(String type) {
232
		this.type = type;
233
	}
234

    
235
	public String getFormat() {
236
		return format;
237
	}
238

    
239
	public void setFormat(String format) {
240
		this.format = format;
241
	}
242

    
243
	public URI getIdentifier() {
244
		return identifier;
245
	}
246

    
247
	public void setIdentifier(URI identifier) {
248
		this.identifier = identifier;
249
	}
250

    
251
	public String getSource() {
252
		return source;
253
	}
254

    
255
	public void setSource(String source) {
256
		this.source = source;
257
	}
258

    
259
	public String getLanguage() {
260
		return language;
261
	}
262

    
263
	public void setLanguage(String language) {
264
		this.language = language;
265
	}
266

    
267
	/**
268
	 * A related resource.
269
	 * <p>
270
	 * Recommended best practice is to identify the related resource by means of
271
	 * a string conforming to a formal identification system.
272
	 *
273
	 * @param relation
274
	 */
275
	public void setRelation(String relation) {
276
		this.relation = relation;
277
	}
278

    
279
	/**
280
	 * A related resource.
281
	 * <p>
282
	 * Recommended best practice is to identify the related resource by means of
283
	 * a string conforming to a formal identification system.
284
	 *
285
	 * @return
286
	 */
287
	public String getRelation() {
288
		return relation;
289
	}
290

    
291
	/**
292
	 * The spatial or temporal topic of the resource, the spatial applicability
293
	 * of the resource, or the jurisdiction under which the resource is
294
	 * relevant.
295
	 * <p>
296
	 * Spatial topic and spatial applicability may be a named place or a
297
	 * location specified by its geographic coordinates. Temporal topic may be a
298
	 * named period, date, or date range. A jurisdiction may be a named
299
	 * administrative entity or a geographic place to which the resource
300
	 * applies. Recommended best practice is to use a controlled vocabulary such
301
	 * as the Thesaurus of Geographic Names [TGN]. Where appropriate, named
302
	 * places or time periods can be used in preference to numeric identifiers
303
	 * such as sets of coordinates or date ranges.
304
	 *
305
	 * @return
306
	 */
307
	public String getCoverage() {
308
		return coverage;
309
	}
310

    
311
	/**
312
	 * The spatial or temporal topic of the resource, the spatial applicability
313
	 * of the resource, or the jurisdiction under which the resource is
314
	 * relevant.
315
	 * <p>
316
	 * Spatial topic and spatial applicability may be a named place or a
317
	 * location specified by its geographic coordinates. Temporal topic may be a
318
	 * named period, date, or date range. A jurisdiction may be a named
319
	 * administrative entity or a geographic place to which the resource
320
	 * applies. Recommended best practice is to use a controlled vocabulary such
321
	 * as the Thesaurus of Geographic Names [TGN]. Where appropriate, named
322
	 * places or time periods can be used in preference to numeric identifiers
323
	 * such as sets of coordinates or date ranges.
324
	 *
325
	 * @param coverage
326
	 */
327
	public void setCoverage(String coverage) {
328
		this.coverage = coverage;
329
	}
330

    
331
	/**
332
	 * Information about rights held in and over the resource.
333
	 * <p>
334
	 * Typically, rights information includes a statement about various property
335
	 * rights associated with the resource, including intellectual property
336
	 * rights.
337
	 *
338
	 * @return
339
	 */
340
	public String getRights() {
341
		return rights;
342
	}
343

    
344
	/**
345
	 * Information about rights held in and over the resource.
346
	 * <p>
347
	 * Typically, rights information includes a statement about various property
348
	 * rights associated with the resource, including intellectual property
349
	 * rights.
350
	 *
351
	 * @param rights
352
	 */
353
	public void setRights(String rights) {
354
		this.rights = rights;
355
	}
356
}
(18-18/27)