Project

General

Profile

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

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

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

    
39
  <xs:attributeGroup name="optionalInferenceAttrGroup">
40
    <xs:attribute name="inferred" use="optional" type="xs:boolean">
41
      <xs:annotation>
42
        <xs:documentation>True if this information has been inferred by the automatic inference
43
          algorithms run by OpenAIRE.</xs:documentation>
44
      </xs:annotation>
45
    </xs:attribute>
46
    <xs:attribute name="inferenceprovenance" use="optional" type="xs:string">
47
      <xs:annotation>
48
        <xs:documentation>Which algorithm inferred the current property.</xs:documentation>
49
      </xs:annotation>
50
    </xs:attribute>
51
    <xs:attribute name="trust" use="optional" type="xs:string">
52
      <xs:annotation>
53
        <xs:documentation>Value of trust of this information. Typically a value in the range [0,1].
54
          More the value, more trustworthy is the information.</xs:documentation>
55
      </xs:annotation>
56
    </xs:attribute>
57
  </xs:attributeGroup>
58

    
59
  <xs:complexType mixed="true" name="classedSchemedElement">
60
    <xs:attributeGroup ref="classSchemeAttrGroup"/>
61
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
62
  </xs:complexType>
63

    
64
  <xs:attributeGroup name="classSchemeAttrGroup">
65
    <xs:attribute name="classid" use="required" type="xs:string">
66
      <xs:annotation>
67
        <xs:documentation>Identifier of the value in classname with respect to the controlled
68
          vocabulary with id = schemeid.</xs:documentation>
69
      </xs:annotation>
70
    </xs:attribute>
71
    <xs:attribute name="classname" use="required" type="xs:string">
72
      <xs:annotation>
73
        <xs:documentation>A value from the controlled vocabulary identified by
74
          schemeid.</xs:documentation>
75
      </xs:annotation>
76
    </xs:attribute>
77
    <xs:attribute name="schemeid" use="required" type="xs:string">
78
      <xs:annotation>
79
        <xs:documentation>Identifier of the controlled vocabulary with name
80
          schemename.</xs:documentation>
81
      </xs:annotation>
82
    </xs:attribute>
83
    <xs:attribute name="schemename" use="required" type="xs:string">
84
      <xs:annotation>
85
        <xs:documentation>Name of the controlled vocabulary.</xs:documentation>
86
      </xs:annotation>
87
    </xs:attribute>
88
  </xs:attributeGroup>
89

    
90
  <xs:complexType mixed="true" name="optionalClassedSchemedElement">
91
    <xs:attributeGroup ref="optionalClassSchemeAttrGroup"/>
92
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
93
  </xs:complexType>
94

    
95
  <xs:attributeGroup name="optionalClassSchemeAttrGroup">
96
    <xs:attribute name="classid" use="optional" type="xs:string">
97
      <xs:annotation>
98
        <xs:documentation>Identifier of the value in classname with respect to the controlled
99
          vocabulary with id = schemeid.</xs:documentation>
100
      </xs:annotation>
101
    </xs:attribute>
102
    <xs:attribute name="classname" use="optional" type="xs:string">
103
      <xs:annotation>
104
        <xs:documentation>A value from the controlled vocabulary identified by
105
          schemeid.</xs:documentation>
106
      </xs:annotation>
107
    </xs:attribute>
108
    <xs:attribute name="schemeid" use="optional" type="xs:string">
109
      <xs:annotation>
110
        <xs:documentation>Identifier of the controlled vocabulary with name
111
          schemename.</xs:documentation>
112
      </xs:annotation>
113
    </xs:attribute>
114
    <xs:attribute name="schemename" use="optional" type="xs:string">
115
      <xs:annotation>
116
        <xs:documentation>Name of the controlled vocabulary.</xs:documentation>
117
      </xs:annotation>
118
    </xs:attribute>
119
  </xs:attributeGroup>
120

    
121
  <xs:complexType name="namedIdElement">
122
    <xs:attribute name="id" use="required"/>
123
    <xs:attribute name="name" use="required"/>
124
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
125
  </xs:complexType>
126

    
127
  <xs:complexType name="labeledIdElement">
128
    <xs:attribute name="id" use="required"/>
129
    <xs:attribute name="label" use="required"/>
130
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
131
  </xs:complexType>
132

    
133
  <xs:complexType name="datainfoType">
134
    <xs:annotation>
135
      <xs:documentation>Information about the provenance of this record.</xs:documentation>
136
    </xs:annotation>
137
    <xs:choice maxOccurs="unbounded">
138
      <xs:element name="inferred" type="xs:boolean">
139
        <xs:annotation>
140
          <xs:documentation>True if this information has been inferred by the automatic inference
141
            algorithms run by OpenAIRE.</xs:documentation>
142
        </xs:annotation>
143
      </xs:element>
144
      <xs:element name="deletedbyinference" type="xs:boolean">
145
        <xs:annotation>
146
          <xs:documentation>True if this information has been deleted by the automatic inference
147
            algorithms run by OpenAIRE.</xs:documentation>
148
        </xs:annotation>
149
      </xs:element>
150
      <xs:element name="trust" type="xs:string">
151
        <xs:annotation>
152
          <xs:documentation>Value of trust of this information. Typically a value in the range
153
            [0,1]. More the value, more trustwirthy is the infromation.</xs:documentation>
154
        </xs:annotation>
155
      </xs:element>
156
      <xs:element name="inferenceprovenance" type="xs:string">
157
        <xs:annotation>
158
          <xs:documentation>Which algorithm inferred the current property</xs:documentation>
159
        </xs:annotation>
160
      </xs:element>
161
      <xs:element name="provenanceaction" type="classedSchemedElement"/>
162
    </xs:choice>
163
  </xs:complexType>
164

    
165
  <xs:complexType name="relsType">
166
    <xs:annotation>
167
      <xs:documentation>Relationships to other entities.</xs:documentation>
168
    </xs:annotation>
169
    <xs:sequence maxOccurs="unbounded" minOccurs="0">
170
      <xs:element name="rel" type="relType" minOccurs="0"/>
171
    </xs:sequence>
172
  </xs:complexType>
173

    
174
  <xs:complexType name="relType">
175
    <xs:annotation>
176
      <xs:documentation>A relationship to another entity</xs:documentation>
177
    </xs:annotation>
178
    <xs:choice maxOccurs="unbounded">
179
      <xs:element name="to" type="relToType"/>
180
      <xs:element name="ranking" type="xs:integer" minOccurs="0"/>
181
      <xs:element name="fullname" type="xs:string" minOccurs="0"/>
182
      <xs:element name="title" type="optionalClassedSchemedElement" minOccurs="0"/>
183
      <xs:element name="dateofacceptance" type="xs:string" minOccurs="0"/>
184
      <xs:element name="publisher" type="xs:string" minOccurs="0"/>
185
      <xs:element name="resulttype" type="classedSchemedElement" minOccurs="0">
186
        <xs:annotation>
187
          <xs:documentation>Type of the related result. Valid only if the related entity is a
188
            result. Allowed values: dataset, publication.</xs:documentation>
189
        </xs:annotation>
190
      </xs:element>
191

    
192
      <!-- elements for organisations, some are also valid for datsources and projects -->
193
      <xs:element name="officialname" type="xs:string" minOccurs="0"/>
194
      <xs:element name="participantnumber" type="xs:string" minOccurs="0"/>
195
      <xs:element name="websiteurl" type="xs:string" minOccurs="0"/>
196
      <xs:element name="code" type="xs:string" minOccurs="0"/>
197
      <xs:element name="acronym" type="xs:string" minOccurs="0"/>
198
      <xs:element name="contracttype" type="optionalClassedSchemedElement" minOccurs="0">
199
        <xs:annotation>
200
          <xs:documentation>Type of the contract. Allowed values: Article 171 of the Treaty,
201
            CIP-Eco-Innovation - CIP-Thematic Network, Collaborative project, Combination of CP
202
            &amp; CSA, Coordination and support action, Network of Excellence, Research for the
203
            benefit of specific groups, Support for frontier research (ERC), Support for training
204
            and career development of researchers (Marie Curie) </xs:documentation>
205
        </xs:annotation>
206
      </xs:element>
207
      <xs:element name="funding" type="fundingFlatType" minOccurs="0"/>
208
      <!-- elements for datasources -->
209
      <xs:element name="legalname" type="xs:string" minOccurs="0"/>
210
      <xs:element name="datasourcetype" type="optionalClassedSchemedElement" minOccurs="0">
211
        <xs:annotation>
212
          <xs:documentation>Type of datasource. Allowed values are: aggregator::datarepository,
213
            aggregator::pubsrepository::institutional, aggregator::pubsrepository::journals,
214
            aggregator::pubsrepository::unknown, crissystem, datarepository::unknown,
215
            entityregistry, infospace, pubsrepository::institutional, pubsrepository::journal,
216
            pubsrepository::mock, pubsrepository::thematic, pubsrepository::unknown, scholarly
217
            commnication infrastructure, websource </xs:documentation>
218
        </xs:annotation>
219
      </xs:element>
220
      <xs:element name="datasourcetypeui" type="optionalClassedSchemedElement" minOccurs="0"/>
221
      <xs:element name="legalshortname" type="xs:string" minOccurs="0"/>
222
      <xs:element name="country" type="optionalClassedSchemedElement" minOccurs="0">
223
        <xs:annotation>
224
          <xs:documentation> The classid attribute contains the ISO 3166-1 alpha-2 code of the
225
            country. The classname attribute contains the english name of the country.
226
          </xs:documentation>
227
        </xs:annotation>
228
      </xs:element>
229
      <!-- elements for projects -->
230
      <xs:element name="fax" type="xs:string" minOccurs="0"/>
231
      <xs:element name="email" type="xs:string" minOccurs="0"/>
232
      <xs:element name="phone" type="xs:string" minOccurs="0"/>
233
    </xs:choice>
234
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
235
    <xs:attribute name="provenanceaction" type="xs:string"/>
236
  </xs:complexType>
237

    
238
  <xs:complexType name="relToType">
239
    <xs:annotation>
240
      <xs:documentation>Type of the related entity.</xs:documentation>
241
    </xs:annotation>
242
    <xs:simpleContent>
243
      <xs:extension base="xs:string">
244
        <xs:attribute name="class" use="required" type="xs:string">
245
          <xs:annotation>
246
            <xs:documentation>The semantics of the relationship between this entity and the entity
247
              whose id is in the value of this element.</xs:documentation>
248
          </xs:annotation>
249
        </xs:attribute>
250
        <xs:attribute name="scheme" use="required" type="xs:string"/>
251
        <xs:attribute name="type" use="required" type="xs:string">
252
          <xs:annotation>
253
            <xs:documentation>The type of the related entity: project, organisation, datasource,
254
              result, person.</xs:documentation>
255
          </xs:annotation>
256
        </xs:attribute>
257
      </xs:extension>
258
    </xs:simpleContent>
259
  </xs:complexType>
260

    
261
  <xs:complexType name="fundingFlatType">
262
    <xs:sequence>
263
      <xs:element name="funding_level_0" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
264
      <xs:element name="funding_level_1" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
265
      <xs:element name="funding_level_2" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
266
    </xs:sequence>
267
  </xs:complexType>
268

    
269
  <xs:complexType name="externalreferenceType">
270
    <xs:sequence>
271
      <xs:element name="sitename" type="xs:string"/>
272
      <xs:element name="label" type="xs:string"/>
273
      <xs:element name="qualifier" type="optionalClassedSchemedElement"/>
274
      <xs:element name="refidentifier" type="xs:string"/>
275
    </xs:sequence>
276
    <xs:attributeGroup ref="optionalInferenceAttrGroup"/>
277
  </xs:complexType>
278

    
279
  <xs:complexType name="extraInfoType">
280
    <xs:annotation>
281
      <xs:documentation>Fields of this type can contain any well-formed XML, regardless of the
282
        actual structure.</xs:documentation>
283
    </xs:annotation>
284
    <xs:sequence>
285
      <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
286
    </xs:sequence>
287
    <xs:attribute name="name" type="xs:string" use="required">
288
      <xs:annotation>
289
        <xs:documentation>Human readable label that explains the type of information we can find
290
          inside this element. It corresponds to the value in the "typology"
291
          attribute.</xs:documentation>
292
      </xs:annotation>
293
    </xs:attribute>
294
    <xs:attribute name="typology" type="xs:string" use="required">
295
      <xs:annotation>
296
        <xs:documentation>Type of the information we can find inside this element. The attribute
297
          "name" provides a human-readable label of this very same information.</xs:documentation>
298
      </xs:annotation>
299
    </xs:attribute>
300
    <xs:attribute name="provenance" type="xs:string"/>
301
    <xs:attribute name="trust" type="xs:string">
302
      <xs:annotation>
303
        <xs:documentation>Value of trust of this information. Typically a value in the range [0,1].
304
          More the value, more trustworthy is the information.</xs:documentation>
305
      </xs:annotation>
306
    </xs:attribute>
307
  </xs:complexType>
308

    
309
</xs:schema>
(3-3/8)