Project

General

Profile

1
<?xml version="1.0" encoding="UTF-8"?>
2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
	elementFormDefault="unqualified" xmlns="http://namespace.openaire.eu/oaf"
4
	targetNamespace="http://namespace.openaire.eu/oaf">
5

    
6
	<xs:annotation>
7
		<xs:documentation>This schema defines common types that can be
8
			re-used.</xs:documentation>
9
	</xs:annotation>
10

    
11
	<xs:complexType mixed="true" name="inferenceExtendedStringType">
12
		<xs:annotation>
13
			<xs:documentation>XML elements of this type are simple strings, but
14
				in cases where their
15
				values have been inferred by Openaire inference algorithms, the elements
16
				features some
17
				attributes describing the inference algorithm. This way it is easy to
18
				understand if a value
19
				comes from the originally imported data or if it has been added later for
20
				enrichment.
21
			</xs:documentation>
22
		</xs:annotation>
23
		<xs:simpleContent>
24
			<xs:extension base="xs:string">
25
				<xs:attributeGroup ref="optionalInferenceAttrGroup" />
26
			</xs:extension>
27
		</xs:simpleContent>
28
	</xs:complexType>
29

    
30
	<xs:complexType mixed="true" name="inferenceExtendedBooleanType">
31
		<xs:annotation>
32
			<xs:documentation>XML elements of this type are simple booleans, but
33
				in cases where their
34
				values have been inferred by Openaire inference algorithms, the elements
35
				features some
36
				attributes describing the inference algorithm. This way it is easy to
37
				understand if a value
38
				comes from the originally imported data or if it has been added later for
39
				enrichment.
40
			</xs:documentation>
41
		</xs:annotation>
42
		<xs:simpleContent>
43
			<xs:extension base="xs:boolean">
44
				<xs:attributeGroup ref="optionalInferenceAttrGroup" />
45
			</xs:extension>
46
		</xs:simpleContent>
47
	</xs:complexType>
48

    
49
	<xs:attributeGroup name="optionalInferenceAttrGroup">
50
		<xs:attribute name="inferred" use="optional" type="xs:boolean">
51
			<xs:annotation>
52
				<xs:documentation>True if this information has been inferred by the
53
					automatic inference
54
					algorithms run by OpenAIRE.
55
				</xs:documentation>
56
			</xs:annotation>
57
		</xs:attribute>
58
		<xs:attribute name="inferenceprovenance" use="optional"
59
			type="xs:string">
60
			<xs:annotation>
61
				<xs:documentation>Which algorithm inferred the current property.
62
				</xs:documentation>
63
			</xs:annotation>
64
		</xs:attribute>
65
		<xs:attribute name="trust" use="optional" type="xs:string">
66
			<xs:annotation>
67
				<xs:documentation>Value of trust of this information in the range
68
					[0,1].
69
					More the value, more trustworthy is the information.
70
				</xs:documentation>
71
			</xs:annotation>
72
		</xs:attribute>
73
	</xs:attributeGroup>
74

    
75
	<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
76

    
77
	<xs:complexType mixed="true" name="classedSchemedElement">
78
		<xs:attributeGroup ref="classSchemeAttrGroup" />
79
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
80
	</xs:complexType>
81

    
82
	<xs:attributeGroup name="classSchemeAttrGroup">
83
		<xs:attribute name="classid" use="required" type="xs:string">
84
			<xs:annotation>
85
				<xs:documentation>Identifier of the value in classname with respect
86
					to the controlled
87
					vocabulary with id = schemeid.
88
				</xs:documentation>
89
			</xs:annotation>
90
		</xs:attribute>
91
		<xs:attribute name="classname" use="required" type="xs:string">
92
			<xs:annotation>
93
				<xs:documentation>A value from the controlled vocabulary identified
94
					by
95
					schemeid.
96
				</xs:documentation>
97
			</xs:annotation>
98
		</xs:attribute>
99
		<xs:attribute name="schemeid" use="required" type="xs:string">
100
			<xs:annotation>
101
				<xs:documentation>Identifier of the controlled vocabulary with name
102
					schemename. To see the classes included in the schema:
103
					https://services.openaire.eu/provision/mvc/vocabularies/schemeid
104
				</xs:documentation>
105
			</xs:annotation>
106
		</xs:attribute>
107
		<xs:attribute name="schemename" use="required" type="xs:string">
108
			<xs:annotation>
109
				<xs:documentation>Name of the controlled vocabulary.
110
				</xs:documentation>
111
			</xs:annotation>
112
		</xs:attribute>
113
	</xs:attributeGroup>
114

    
115
	<xs:complexType mixed="true" name="optionalClassedSchemedElement">
116
		<xs:attributeGroup ref="optionalClassSchemeAttrGroup" />
117
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
118
	</xs:complexType>
119

    
120
	<xs:attributeGroup name="optionalClassSchemeAttrGroup">
121
		<xs:attribute name="classid" use="optional" type="xs:string">
122
			<xs:annotation>
123
				<xs:documentation>Identifier of the value in classname with respect
124
					to the controlled
125
					vocabulary with id = schemeid.
126
				</xs:documentation>
127
			</xs:annotation>
128
		</xs:attribute>
129
		<xs:attribute name="classname" use="optional" type="xs:string">
130
			<xs:annotation>
131
				<xs:documentation>A value from the controlled vocabulary identified
132
					by
133
					schemeid.
134
				</xs:documentation>
135
			</xs:annotation>
136
		</xs:attribute>
137
		<xs:attribute name="schemeid" use="optional" type="xs:string">
138
			<xs:annotation>
139
				<xs:documentation>Identifier of the controlled vocabulary with name
140
					schemename. To see the classes included in the schema:
141
					https://services.openaire.eu/provision/mvc/vocabularies/schemeid
142
				</xs:documentation>
143
			</xs:annotation>
144
		</xs:attribute>
145
		<xs:attribute name="schemename" use="optional" type="xs:string">
146
			<xs:annotation>
147
				<xs:documentation>Name of the controlled vocabulary.
148
				</xs:documentation>
149
			</xs:annotation>
150
		</xs:attribute>
151
	</xs:attributeGroup>
152

    
153
	<xs:complexType name="namedIdElement">
154
		<xs:attribute name="id" use="required" />
155
		<xs:attribute name="name" use="required" />
156
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
157
	</xs:complexType>
158

    
159
	<xs:complexType name="labeledIdElement">
160
		<xs:attribute name="id" use="required" />
161
		<xs:attribute name="label" use="required" />
162
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
163
	</xs:complexType>
164

    
165
	<xs:complexType name="datainfoType">
166
		<xs:annotation>
167
			<xs:documentation>Information about the provenance of this record.
168
			</xs:documentation>
169
		</xs:annotation>
170
		<xs:choice maxOccurs="unbounded">
171
			<xs:element name="inferred" type="xs:boolean">
172
				<xs:annotation>
173
					<xs:documentation>True if this information has been inferred by the
174
						automatic inference
175
						algorithms run by OpenAIRE.
176
					</xs:documentation>
177
				</xs:annotation>
178
			</xs:element>
179
			<xs:element name="deletedbyinference" type="xs:boolean">
180
				<xs:annotation>
181
					<xs:documentation>True if this information has been deleted by the
182
						automatic inference
183
						algorithms run by OpenAIRE.
184
					</xs:documentation>
185
				</xs:annotation>
186
			</xs:element>
187
			<xs:element name="trust" type="xs:string">
188
				<xs:annotation>
189
					<xs:documentation>Value of trust of this information. Typically a
190
						value in the range
191
						[0,1]. Higher the value, more trustworthy is the information.
192
					</xs:documentation>
193
				</xs:annotation>
194
			</xs:element>
195
			<xs:element name="inferenceprovenance" type="xs:string">
196
				<xs:annotation>
197
					<xs:documentation>The algorithm that produced this property.
198
					</xs:documentation>
199
				</xs:annotation>
200
			</xs:element>
201
			<xs:element name="provenanceaction" type="classedSchemedElement">
202
				<xs:annotation>
203
					<xs:documentation>Describes the process/action that produced the
204
						information.</xs:documentation>
205
				</xs:annotation>
206
			</xs:element>
207
		</xs:choice>
208
	</xs:complexType>
209

    
210
	<xs:complexType name="relsType">
211
		<xs:annotation>
212
			<xs:documentation>Relationships to other entities.</xs:documentation>
213
		</xs:annotation>
214
		<xs:sequence maxOccurs="unbounded" minOccurs="0">
215
			<xs:element name="rel" type="relType" minOccurs="0" />
216
		</xs:sequence>
217
	</xs:complexType>
218

    
219
	<xs:complexType name="relType">
220
		<xs:annotation>
221
			<xs:documentation>A relationship to another entity</xs:documentation>
222
		</xs:annotation>
223
		<xs:choice maxOccurs="unbounded">
224
			<xs:element name="to" type="relToType" />
225
			<xs:element name="ranking" type="xs:integer" minOccurs="0" />
226
			<xs:element name="fullname" type="xs:string" minOccurs="0" />
227
			<xs:element name="title" type="optionalClassedSchemedElement"
228
				minOccurs="0">
229
				<xs:annotation>
230
					<xs:documentation>
231
						Title of the related research result.
232
						<p>Different types of titles are allowed: see
233
							https://services.openaire.eu/provision/mvc/vocabularies/dnet:dataCite_title
234
						</p>
235
					</xs:documentation>
236
				</xs:annotation>
237
			</xs:element>
238
			<xs:element name="dateofacceptance" type="xs:string"
239
				minOccurs="0" />
240
			<xs:element name="publisher" type="xs:string" minOccurs="0" />
241
			<xs:element name="resulttype" type="classedSchemedElement"
242
				minOccurs="0">
243
				<xs:annotation>
244
					<xs:documentation>
245
						Tells if the related record is about a publication or a dataset.
246
						<p>For allowed values check:
247
							https://services.openaire.eu/provision/mvc/vocabularies/dnet:result_typologies
248
						</p>
249
					</xs:documentation>
250
				</xs:annotation>
251
			</xs:element>
252

    
253
			<!-- elements for organisations, some are also valid for datsources and 
254
				projects -->
255
			<xs:element name="officialname" type="xs:string"
256
				minOccurs="0" />
257
			<xs:element name="participantnumber" type="xs:string"
258
				minOccurs="0" />
259
			<xs:element name="websiteurl" type="xs:string" minOccurs="0" />
260
			<xs:element name="code" type="xs:string" minOccurs="0" />
261
			<xs:element name="acronym" type="xs:string" minOccurs="0" />
262
			<xs:element name="contracttype" type="optionalClassedSchemedElement"
263
				minOccurs="0">
264
				<xs:annotation>
265
					<xs:documentation>
266
						Type of the contract. Available if the related entity is a project.
267
						<p>
268
							Allowed values depend on the actual funder of the related project. Currently supported
269
							funders and corresponding contract types are:
270
							<table>
271
								<tr>
272
									<th>Funder</th>
273
									<th>Funder id</th>
274
									<th>Contract types</th>
275
								</tr>
276
								<tr>
277
									<td>FP7</td>
278
									<td>corda_______::FP7</td>
279
									<td>https://services.openaire.eu/provision/mvc/vocabularies/ec:FP7contractTypes</td>
280
								</tr>
281
								<tr>
282
									<td>Wellcome Trust</td>
283
									<td>wt::WT</td>
284
									<td>https://services.openaire.eu/provision/mvc/vocabularies/wt:contractTypes</td>
285
								</tr>
286
							</table>
287
						</p>
288
					</xs:documentation>
289
				</xs:annotation>
290
			</xs:element>
291
			<xs:element name="funding" type="fundingFlatType"
292
				minOccurs="0" />
293
			<!-- elements for datasources -->
294
			<xs:element name="legalname" type="xs:string" minOccurs="0" />
295
			<xs:element name="datasourcetype" type="optionalClassedSchemedElement"
296
				minOccurs="0">
297
				<xs:annotation>
298
					<xs:documentation>
299
						Type of the related data source.
300
						<p>For allowed values check codes in:
301
							https://services.openaire.eu/provision/mvc/vocabularies/dnet:datasource_typologies
302
						</p>
303
					</xs:documentation>
304
				</xs:annotation>
305
			</xs:element>
306
			<xs:element name="datasourcetypeui" type="optionalClassedSchemedElement"
307
				minOccurs="0" ><xs:annotation>
308
					<xs:documentation>
309
						Type of this data source to be displayed in the OpenAire
310
						portal.
311
						<p>For allowed values check terms in:
312
							https://services.openaire.eu/provision/mvc/vocabularies/dnet:datasource_typologies
313
						</p>
314
					</xs:documentation>
315
				</xs:annotation>
316
				</xs:element>
317
			<xs:element name="legalshortname" type="xs:string"
318
				minOccurs="0" />
319
			<xs:element name="country" type="optionalClassedSchemedElement"
320
				minOccurs="0">
321
				<xs:annotation>
322
					<xs:documentation>
323
						Countries in ISO 3166-1 alpha-2.
324
						<p>For allowed values check:
325
							https://services.openaire.eu/provision/mvc/vocabularies/dnet:countries
326
						</p>
327
					</xs:documentation>
328
				</xs:annotation>
329
			</xs:element>
330
			<!-- elements for projects -->
331
			<xs:element name="fax" type="xs:string" minOccurs="0" />
332
			<xs:element name="email" type="xs:string" minOccurs="0" />
333
			<xs:element name="phone" type="xs:string" minOccurs="0" />
334
		</xs:choice>
335
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
336
		<xs:attribute name="provenanceaction" type="xs:string" />
337
	</xs:complexType>
338

    
339
	<xs:complexType name="relToType">
340
		<xs:annotation>
341
			<xs:documentation>Information about the related entity.
342
			<p>The semantics of the relationships is expressed by the attributes class and scheme. </p>
343
			<!--  <p>See the following ontology for the available relationships: $ontologyURL$</p>-->
344
			<p>Allowed relationships are:
345
			<table>
346
			<tr><th>Entity types</th><th>Name of relationships</th><th>Inverse of</th><th>Simmetric</th></tr>
347
			<tr><td>Project -- Person</td><td>hasContact</td><td>isContact</td><td>no</td></tr>
348
			<tr><td>Project -- Result</td><td>produces</td><td>isProducedBy</td><td>no</td></tr>
349
			<tr><td>Project -- Organization</td><td>hasParticipant</td><td>isParticipant</td><td>no</td></tr>
350
			<tr><td>Person -- Project</td><td>isContact</td><td>hasContact</td><td>no</td></tr>
351
			<tr><td>Person -- Result</td><td>isAuthorOf</td><td>hasAuthor</td><td>no</td></tr>
352
			<tr><td>Person -- Person</td><td>isCoauthorOf</td><td>--</td><td>yes</td></tr>
353
			<tr><td>Result -- Person</td><td>hasAuthor</td><td>isAuthorOf</td><td>no</td></tr>
354
			<tr><td>Result -- Project</td><td>isProducedBy</td><td>produces</td><td>no</td></tr>
355
			<tr><td>Result -- Result</td><td>isRelatedTo</td><td>--</td><td>yes</td></tr>
356
			<tr><td>Result -- Result</td><td>hasAmongTopNSimilarDocuments</td><td>isAmongTopNSimilarDocuments</td><td>no</td></tr>
357
			<tr><td>Result -- Result</td><td>isAmongTopNSimilarDocuments</td><td>hasAmongTopNSimilarDocuments</td><td>no</td></tr>
358
			<tr><td>Organization -- Datasource</td><td>isProvidedBy</td><td>provides</td><td>no</td></tr>
359
			<tr><td>Organization -- Project</td><td>isParticpant</td><td>hasParticipant</td><td>no</td></tr>
360
			<tr><td>Datasource -- Organization</td><td>provides</td><td>isProvidedBy</td><td>no</td></tr>
361
			</table></p>
362
			</xs:documentation>
363
		</xs:annotation>
364
		<xs:simpleContent>
365
			<xs:extension base="xs:string">
366
				<xs:attribute name="class" use="required" type="xs:string"/>
367
				<xs:attribute name="scheme" use="required" type="xs:string"/>
368
				<xs:attribute name="type" use="required" type="xs:string">
369
					<xs:annotation>
370
						<xs:documentation>The type of the related entity. 
371
						<p>Allowed values are: project, organization, datasource, result, person.</p>
372
						</xs:documentation>
373
					</xs:annotation>
374
				</xs:attribute>
375
			</xs:extension>
376
		</xs:simpleContent>
377
	</xs:complexType>
378

    
379
	<xs:complexType name="fundingFlatType">
380
		<xs:sequence>
381
			<xs:element name="funding_level_0" type="xs:string"
382
				minOccurs="0" maxOccurs="unbounded" />
383
			<xs:element name="funding_level_1" type="xs:string"
384
				minOccurs="0" maxOccurs="unbounded" />
385
			<xs:element name="funding_level_2" type="xs:string"
386
				minOccurs="0" maxOccurs="unbounded" />
387
		</xs:sequence>
388
	</xs:complexType>
389

    
390
	<xs:complexType name="externalreferenceType">
391
		<xs:sequence>
392
			<xs:element name="sitename" type="xs:string" />
393
			<xs:element name="label" type="xs:string" />
394
			<xs:element name="qualifier" type="optionalClassedSchemedElement" />
395
			<xs:element name="refidentifier" type="xs:string" />
396
		</xs:sequence>
397
		<xs:attributeGroup ref="optionalInferenceAttrGroup" />
398
	</xs:complexType>
399

    
400
	<xs:complexType name="extraInfoType">
401
		<xs:annotation>
402
			<xs:documentation>Fields of this type can contain any well-formed
403
				XML, regardless of the
404
				actual structure.
405
			</xs:documentation>
406
		</xs:annotation>
407
		<xs:sequence>
408
			<xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded" />
409
		</xs:sequence>
410
		<xs:attribute name="name" type="xs:string" use="required">
411
			<xs:annotation>
412
				<xs:documentation>Human readable label that explains the type of
413
					information we can find
414
					inside this element. It corresponds to the value in the "typology"
415
					attribute.
416
				</xs:documentation>
417
			</xs:annotation>
418
		</xs:attribute>
419
		<xs:attribute name="typology" type="xs:string" use="required">
420
			<xs:annotation>
421
				<xs:documentation>Type of the information we can find inside this
422
					element. The attribute
423
					"name" provides a human-readable label of this very same information.
424
				</xs:documentation>
425
			</xs:annotation>
426
		</xs:attribute>
427
		<xs:attribute name="provenance" type="xs:string" />
428
		<xs:attribute name="trust" type="xs:string">
429
			<xs:annotation>
430
				<xs:documentation>Value of trust of this information. Typically a
431
					value in the range [0,1].
432
					Higher the value, more trustworthy is the information.
433
				</xs:documentation>
434
			</xs:annotation>
435
		</xs:attribute>
436
	</xs:complexType>
437

    
438
</xs:schema>
(3-3/9)