orcid_client 0.8 → 0.9.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/build.yml +39 -0
- data/.github/workflows/changelog.yml +36 -0
- data/.github/workflows/release.yml +48 -0
- data/CHANGELOG.md +169 -0
- data/Gemfile.lock +135 -117
- data/README.md +6 -6
- data/lib/orcid_client/api.rb +2 -1
- data/lib/orcid_client/base.rb +1 -1
- data/lib/orcid_client/external_identifier.rb +1 -1
- data/lib/orcid_client/version.rb +1 -1
- data/lib/orcid_client/work.rb +8 -5
- data/orcid_client.gemspec +3 -4
- data/resources/README.md +48 -43
- data/resources/common_3.0/common-3.0.xsd +998 -0
- data/resources/common_3.0/samples/common-3.0.xml +8 -0
- data/resources/common_3.0/samples/common-3.0_external-identifier.xml +11 -0
- data/resources/notification_3.0/README.md +130 -0
- data/resources/notification_3.0/images/notification-intro.jpg +0 -0
- data/resources/notification_3.0/images/notification-subject.jpg +0 -0
- data/resources/notification_3.0/notification-custom-3.0.xsd +38 -0
- data/resources/notification_3.0/notification-permission-3.0.xsd +134 -0
- data/resources/notification_3.0/samples/notification-custom-3.0.xml +27 -0
- data/resources/notification_3.0/samples/notification-permission-3.0.xml +58 -0
- data/resources/record_3.0/README.md +408 -0
- data/resources/record_3.0/activities-3.0.xsd +456 -0
- data/resources/record_3.0/address-3.0.xsd +73 -0
- data/resources/record_3.0/bulk-3.0.xsd +57 -0
- data/resources/record_3.0/distinction-3.0.xsd +51 -0
- data/resources/record_3.0/education-3.0.xsd +51 -0
- data/resources/record_3.0/email-3.0.xsd +76 -0
- data/resources/record_3.0/employment-3.0.xsd +51 -0
- data/resources/record_3.0/error-3.0.xsd +84 -0
- data/resources/record_3.0/expanded-search-3.0.xsd +114 -0
- data/resources/record_3.0/funding-3.0.xsd +204 -0
- data/resources/record_3.0/history-3.0.xsd +185 -0
- data/resources/record_3.0/invited-position-3.0.xsd +50 -0
- data/resources/record_3.0/keyword-3.0.xsd +72 -0
- data/resources/record_3.0/membership-3.0.xsd +51 -0
- data/resources/record_3.0/other-name-3.0.xsd +78 -0
- data/resources/record_3.0/peer-review-3.0.xsd +263 -0
- data/resources/record_3.0/person-3.0.xsd +85 -0
- data/resources/record_3.0/person-external-identifier-3.0.xsd +63 -0
- data/resources/record_3.0/personal-details-3.0.xsd +162 -0
- data/resources/record_3.0/preferences-3.0.xsd +50 -0
- data/resources/record_3.0/qualification-3.0.xsd +50 -0
- data/resources/record_3.0/record-3.0.xsd +91 -0
- data/resources/record_3.0/research-resource-3.0.xsd +144 -0
- data/resources/record_3.0/researcher-url-3.0.xsd +86 -0
- data/resources/record_3.0/samples/read_samples/activities-3.0.xml +742 -0
- data/resources/record_3.0/samples/read_samples/address-3.0.xml +16 -0
- data/resources/record_3.0/samples/read_samples/addresses-3.0.xml +32 -0
- data/resources/record_3.0/samples/read_samples/biography-3.0.xml +10 -0
- data/resources/record_3.0/samples/read_samples/bulk-work-err.xml +45 -0
- data/resources/record_3.0/samples/read_samples/credit-name-3.0.xml +5 -0
- data/resources/record_3.0/samples/read_samples/distinction-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/distinctions-3.0.xml +106 -0
- data/resources/record_3.0/samples/read_samples/education-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/education-full-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/educations-3.0.xml +118 -0
- data/resources/record_3.0/samples/read_samples/email-3.0.xml +16 -0
- data/resources/record_3.0/samples/read_samples/emails-3.0.xml +31 -0
- data/resources/record_3.0/samples/read_samples/employment-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/employment-full-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/employments-3.0.xml +108 -0
- data/resources/record_3.0/samples/read_samples/error-3.0.xml +8 -0
- data/resources/record_3.0/samples/read_samples/external-identifier-3.0.xml +21 -0
- data/resources/record_3.0/samples/read_samples/external-identifiers-3.0.xml +38 -0
- data/resources/record_3.0/samples/read_samples/full-record-3.0.json +2332 -0
- data/resources/record_3.0/samples/read_samples/funding-3.0.xml +75 -0
- data/resources/record_3.0/samples/read_samples/funding-full-3.0.xml +75 -0
- data/resources/record_3.0/samples/read_samples/fundings-3.0.xml +139 -0
- data/resources/record_3.0/samples/read_samples/history-3.0.xml +22 -0
- data/resources/record_3.0/samples/read_samples/invited-position-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/invited-positions-3.0.xml +106 -0
- data/resources/record_3.0/samples/read_samples/keyword-3.0.xml +18 -0
- data/resources/record_3.0/samples/read_samples/keywords-3.0.xml +34 -0
- data/resources/record_3.0/samples/read_samples/membership-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/memberships-3.0.xml +106 -0
- data/resources/record_3.0/samples/read_samples/name-3.0.xml +12 -0
- data/resources/record_3.0/samples/read_samples/other-name-3.0.xml +16 -0
- data/resources/record_3.0/samples/read_samples/other-names-3.0.xml +31 -0
- data/resources/record_3.0/samples/read_samples/peer-review-3.0.xml +59 -0
- data/resources/record_3.0/samples/read_samples/peer-review-full-3.0.xml +59 -0
- data/resources/record_3.0/samples/read_samples/peer-reviews-3.0.xml +76 -0
- data/resources/record_3.0/samples/read_samples/person-3.0.xml +122 -0
- data/resources/record_3.0/samples/read_samples/personal-details-3.0.xml +47 -0
- data/resources/record_3.0/samples/read_samples/preferences-3.0.xml +4 -0
- data/resources/record_3.0/samples/read_samples/qualification-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/qualifications-3.0.xml +106 -0
- data/resources/record_3.0/samples/read_samples/record-3.0.xml +770 -0
- data/resources/record_3.0/samples/read_samples/research-resource-3.0.xml +138 -0
- data/resources/record_3.0/samples/read_samples/research-resources-3.0.xml +143 -0
- data/resources/record_3.0/samples/read_samples/researcher-url-3.0.xml +19 -0
- data/resources/record_3.0/samples/read_samples/researcher-urls-3.0.xml +21 -0
- data/resources/record_3.0/samples/read_samples/search-3.0.xml +14 -0
- data/resources/record_3.0/samples/read_samples/service-3.0.xml +55 -0
- data/resources/record_3.0/samples/read_samples/services-3.0.xml +106 -0
- data/resources/record_3.0/samples/read_samples/work-3.0.xml +65 -0
- data/resources/record_3.0/samples/read_samples/work-full-3.0.xml +65 -0
- data/resources/record_3.0/samples/read_samples/works-3.0.xml +148 -0
- data/resources/record_3.0/samples/write_samples/address-3.0.xml +6 -0
- data/resources/record_3.0/samples/write_samples/bulk-work-3.0.json +53 -0
- data/resources/record_3.0/samples/write_samples/bulk-work-3.0.xml +47 -0
- data/resources/record_3.0/samples/write_samples/distinction-3.0.xml +46 -0
- data/resources/record_3.0/samples/write_samples/education-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/employment-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/external-identifier-3.0.xml +11 -0
- data/resources/record_3.0/samples/write_samples/funding-3.0.xml +44 -0
- data/resources/record_3.0/samples/write_samples/invited-position-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/keyword-3.0.xml +7 -0
- data/resources/record_3.0/samples/write_samples/membership-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/other-name-3.0.xml +6 -0
- data/resources/record_3.0/samples/write_samples/peer-review-full-3.0.xml +48 -0
- data/resources/record_3.0/samples/write_samples/peer-review-full-award-subject-type-3.0.xml +48 -0
- data/resources/record_3.0/samples/write_samples/peer-review-simple-3.0.xml +32 -0
- data/resources/record_3.0/samples/write_samples/qualification-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/research-resource-3.0.xml +110 -0
- data/resources/record_3.0/samples/write_samples/researcher-url-3.0-no-name.xml +6 -0
- data/resources/record_3.0/samples/write_samples/researcher-url-3.0.xml +7 -0
- data/resources/record_3.0/samples/write_samples/service-3.0.xml +45 -0
- data/resources/record_3.0/samples/write_samples/work-full-3.0.xml +60 -0
- data/resources/record_3.0/samples/write_samples/work-simple-3.0.xml +18 -0
- data/resources/record_3.0/search-3.0.xsd +62 -0
- data/resources/record_3.0/service-3.0.xsd +51 -0
- data/resources/record_3.0/work-3.0.xsd +269 -0
- data/spec/api_spec.rb +3 -3
- data/spec/author_spec.rb +1 -1
- data/spec/external_identifier_spec.rb +2 -2
- data/spec/fixtures/external_identifier.xml +1 -1
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/get/should_get_works.yml +23 -10
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/post/should_create_work.yml +71 -74
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/data.yml +43 -55
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_data.yml +43 -55
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_item_type_work.yml +39 -44
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/literal.yml +43 -51
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/valid.yml +40 -48
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/with_ORCID_IDs.yml +39 -30
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/data.yml +41 -49
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/publication_date.yml +40 -48
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_ORCID_IDs_for_contributors.yml +40 -31
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_data.yml +40 -48
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_staging_system.yml +104 -0
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_type_data-set.yml +40 -45
- data/spec/fixtures/work.xml +12 -16
- data/spec/notification_spec.rb +11 -10
- data/spec/work_spec.rb +26 -63
- metadata +133 -30
- data/.travis.yml +0 -17
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/multiple_titles.yml +0 -102
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_test_system.yml +0 -95
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/user_example/fail/valid.yml +0 -95
@@ -0,0 +1,456 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
3
|
+
xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
|
4
|
+
targetNamespace="http://www.orcid.org/ns/activities"
|
5
|
+
xmlns:activities="http://www.orcid.org/ns/activities"
|
6
|
+
xmlns:common="http://www.orcid.org/ns/common"
|
7
|
+
xmlns:work="http://www.orcid.org/ns/work"
|
8
|
+
xmlns:funding="http://www.orcid.org/ns/funding"
|
9
|
+
xmlns:distinction="http://www.orcid.org/ns/distinction"
|
10
|
+
xmlns:education="http://www.orcid.org/ns/education"
|
11
|
+
xmlns:employment="http://www.orcid.org/ns/employment"
|
12
|
+
xmlns:invited-position="http://www.orcid.org/ns/invited-position"
|
13
|
+
xmlns:membership="http://www.orcid.org/ns/membership"
|
14
|
+
xmlns:peer-review="http://www.orcid.org/ns/peer-review"
|
15
|
+
xmlns:qualification="http://www.orcid.org/ns/qualification"
|
16
|
+
xmlns:service="http://www.orcid.org/ns/service"
|
17
|
+
xmlns:research-resource="http://www.orcid.org/ns/research-resource">
|
18
|
+
<xs:annotation>
|
19
|
+
<xs:documentation>
|
20
|
+
=============================================================================
|
21
|
+
|
22
|
+
ORCID (R) Open Source
|
23
|
+
http://orcid.org
|
24
|
+
|
25
|
+
Copyright (c) 2012-2018 ORCID,
|
26
|
+
Inc.
|
27
|
+
Licensed under an MIT-Style License (MIT)
|
28
|
+
http://orcid.org/open-source-license
|
29
|
+
|
30
|
+
This copyright and license
|
31
|
+
information (including a link to the full
|
32
|
+
license)
|
33
|
+
shall be included in
|
34
|
+
its entirety in all copies or substantial portion of
|
35
|
+
the software.
|
36
|
+
|
37
|
+
=============================================================================
|
38
|
+
The schema describes the message format used for ORCID API requests
|
39
|
+
and responses.
|
40
|
+
The top level element is orcid-message.
|
41
|
+
</xs:documentation>
|
42
|
+
<xs:appinfo>
|
43
|
+
<sch:title>Schematron validation</sch:title>
|
44
|
+
<sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
|
45
|
+
</xs:appinfo>
|
46
|
+
</xs:annotation>
|
47
|
+
|
48
|
+
<xs:import namespace="http://www.orcid.org/ns/common"
|
49
|
+
schemaLocation="../common_3.0/common-3.0.xsd" />
|
50
|
+
<xs:import namespace="http://www.orcid.org/ns/employment"
|
51
|
+
schemaLocation="employment-3.0.xsd" />
|
52
|
+
<xs:import namespace="http://www.orcid.org/ns/education"
|
53
|
+
schemaLocation="education-3.0.xsd" />
|
54
|
+
<xs:import namespace="http://www.orcid.org/ns/funding"
|
55
|
+
schemaLocation="funding-3.0.xsd" />
|
56
|
+
<xs:import namespace="http://www.orcid.org/ns/work"
|
57
|
+
schemaLocation="work-3.0.xsd" />
|
58
|
+
<xs:import namespace="http://www.orcid.org/ns/peer-review"
|
59
|
+
schemaLocation="peer-review-3.0.xsd" />
|
60
|
+
<xs:import namespace="http://www.orcid.org/ns/distinction"
|
61
|
+
schemaLocation="distinction-3.0.xsd" />
|
62
|
+
<xs:import namespace="http://www.orcid.org/ns/invited-position"
|
63
|
+
schemaLocation="invited-position-3.0.xsd" />
|
64
|
+
<xs:import namespace="http://www.orcid.org/ns/membership"
|
65
|
+
schemaLocation="membership-3.0.xsd" />
|
66
|
+
<xs:import namespace="http://www.orcid.org/ns/qualification"
|
67
|
+
schemaLocation="qualification-3.0.xsd" />
|
68
|
+
<xs:import namespace="http://www.orcid.org/ns/service"
|
69
|
+
schemaLocation="service-3.0.xsd" />
|
70
|
+
<xs:import namespace="http://www.orcid.org/ns/research-resource"
|
71
|
+
schemaLocation="research-resource-3.0.xsd" />
|
72
|
+
|
73
|
+
<xs:element name="activities-summary">
|
74
|
+
<xs:complexType>
|
75
|
+
<xs:sequence>
|
76
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
77
|
+
|
78
|
+
<xs:element name="distinctions" type="activities:distinctions" minOccurs="0" maxOccurs="1">
|
79
|
+
<xs:annotation>
|
80
|
+
<xs:documentation>Container for the list of distinctions associated
|
81
|
+
with the researcher or contributor
|
82
|
+
</xs:documentation>
|
83
|
+
</xs:annotation>
|
84
|
+
</xs:element>
|
85
|
+
|
86
|
+
<xs:element name="educations" type="activities:educations" minOccurs="0" maxOccurs="1">
|
87
|
+
<xs:annotation>
|
88
|
+
<xs:documentation>Container for the list of educations associated
|
89
|
+
with the researcher or contributor
|
90
|
+
</xs:documentation>
|
91
|
+
</xs:annotation>
|
92
|
+
</xs:element>
|
93
|
+
|
94
|
+
<xs:element name="employments" type="activities:employments" minOccurs="0" maxOccurs="1">
|
95
|
+
<xs:annotation>
|
96
|
+
<xs:documentation>Container for the list of employments associated
|
97
|
+
with the researcher or contributor
|
98
|
+
</xs:documentation>
|
99
|
+
</xs:annotation>
|
100
|
+
</xs:element>
|
101
|
+
|
102
|
+
<xs:element name="fundings" type="activities:fundings" minOccurs="0" maxOccurs="1">
|
103
|
+
<xs:annotation>
|
104
|
+
<xs:documentation>Container for the funding received by the
|
105
|
+
researcher or contributor
|
106
|
+
</xs:documentation>
|
107
|
+
</xs:annotation>
|
108
|
+
</xs:element>
|
109
|
+
|
110
|
+
<xs:element name="invited-positions" type="activities:invited-positions" minOccurs="0" maxOccurs="1">
|
111
|
+
<xs:annotation>
|
112
|
+
<xs:documentation>Container for the list of invited-positions associated
|
113
|
+
with the researcher or contributor
|
114
|
+
</xs:documentation>
|
115
|
+
</xs:annotation>
|
116
|
+
</xs:element>
|
117
|
+
|
118
|
+
<xs:element name="memberships" type="activities:memberships" minOccurs="0" maxOccurs="1">
|
119
|
+
<xs:annotation>
|
120
|
+
<xs:documentation>Container for the list of memberships associated
|
121
|
+
with the researcher or contributor
|
122
|
+
</xs:documentation>
|
123
|
+
</xs:annotation>
|
124
|
+
</xs:element>
|
125
|
+
|
126
|
+
<xs:element name="peer-reviews" type="activities:peer-reviews" minOccurs="0" maxOccurs="1">
|
127
|
+
<xs:annotation>
|
128
|
+
<xs:documentation>Container for the funding received by the
|
129
|
+
researcher or contributor
|
130
|
+
</xs:documentation>
|
131
|
+
</xs:annotation>
|
132
|
+
</xs:element>
|
133
|
+
|
134
|
+
<xs:element name="qualifications" type="activities:qualifications" minOccurs="0" maxOccurs="1">
|
135
|
+
<xs:annotation>
|
136
|
+
<xs:documentation>Container for the list of qualifications associated
|
137
|
+
with the researcher or contributor
|
138
|
+
</xs:documentation>
|
139
|
+
</xs:annotation>
|
140
|
+
</xs:element>
|
141
|
+
|
142
|
+
<xs:element name="research-resources" type="activities:research-resources" minOccurs="0" maxOccurs="1">
|
143
|
+
<xs:annotation>
|
144
|
+
<xs:documentation>Container for the list of research resources associated
|
145
|
+
with the researcher or contributor
|
146
|
+
</xs:documentation>
|
147
|
+
</xs:annotation>
|
148
|
+
</xs:element>
|
149
|
+
|
150
|
+
<xs:element name="services" type="activities:services" minOccurs="0" maxOccurs="1">
|
151
|
+
<xs:annotation>
|
152
|
+
<xs:documentation>Container for the list of services associated
|
153
|
+
with the researcher or contributor
|
154
|
+
</xs:documentation>
|
155
|
+
</xs:annotation>
|
156
|
+
</xs:element>
|
157
|
+
|
158
|
+
<xs:element name="works" type="activities:works" minOccurs="0" maxOccurs="1">
|
159
|
+
<xs:annotation>
|
160
|
+
<xs:documentation>Container for the research outputs of the
|
161
|
+
researcher
|
162
|
+
or contributor.
|
163
|
+
</xs:documentation>
|
164
|
+
</xs:annotation>
|
165
|
+
</xs:element>
|
166
|
+
</xs:sequence>
|
167
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
168
|
+
</xs:complexType>
|
169
|
+
</xs:element>
|
170
|
+
|
171
|
+
<xs:complexType name="research-resource-group">
|
172
|
+
<xs:sequence>
|
173
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
174
|
+
<xs:element ref="common:external-ids"></xs:element>
|
175
|
+
<xs:sequence>
|
176
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
177
|
+
ref="research-resource:research-resource-summary" />
|
178
|
+
</xs:sequence>
|
179
|
+
</xs:sequence>
|
180
|
+
</xs:complexType>
|
181
|
+
|
182
|
+
<xs:complexType name="research-resources">
|
183
|
+
<xs:sequence>
|
184
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
185
|
+
<xs:element maxOccurs="unbounded" minOccurs="0" name="group" type="activities:research-resource-group" />
|
186
|
+
</xs:sequence>
|
187
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
188
|
+
</xs:complexType>
|
189
|
+
|
190
|
+
<xs:element name="research-resources">
|
191
|
+
<xs:complexType>
|
192
|
+
<xs:complexContent>
|
193
|
+
<xs:extension base="activities:research-resources" />
|
194
|
+
</xs:complexContent>
|
195
|
+
</xs:complexType>
|
196
|
+
</xs:element>
|
197
|
+
|
198
|
+
<xs:complexType name="distinctions">
|
199
|
+
<xs:sequence>
|
200
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
201
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
202
|
+
ref="activities:affiliation-group" />
|
203
|
+
</xs:sequence>
|
204
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
205
|
+
</xs:complexType>
|
206
|
+
|
207
|
+
<xs:element name="distinctions">
|
208
|
+
<xs:complexType>
|
209
|
+
<xs:complexContent>
|
210
|
+
<xs:extension base="activities:distinctions" />
|
211
|
+
</xs:complexContent>
|
212
|
+
</xs:complexType>
|
213
|
+
</xs:element>
|
214
|
+
|
215
|
+
<xs:complexType name="educations">
|
216
|
+
<xs:sequence>
|
217
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
218
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
219
|
+
ref="activities:affiliation-group" />
|
220
|
+
</xs:sequence>
|
221
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
222
|
+
</xs:complexType>
|
223
|
+
|
224
|
+
<xs:element name="educations">
|
225
|
+
<xs:complexType>
|
226
|
+
<xs:complexContent>
|
227
|
+
<xs:extension base="activities:educations" />
|
228
|
+
</xs:complexContent>
|
229
|
+
</xs:complexType>
|
230
|
+
</xs:element>
|
231
|
+
|
232
|
+
<xs:complexType name="employments">
|
233
|
+
<xs:sequence>
|
234
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
235
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
236
|
+
ref="activities:affiliation-group" />
|
237
|
+
</xs:sequence>
|
238
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
239
|
+
</xs:complexType>
|
240
|
+
|
241
|
+
<xs:element name="employments">
|
242
|
+
<xs:complexType>
|
243
|
+
<xs:complexContent>
|
244
|
+
<xs:extension base="activities:employments" />
|
245
|
+
</xs:complexContent>
|
246
|
+
</xs:complexType>
|
247
|
+
</xs:element>
|
248
|
+
|
249
|
+
<xs:complexType name="invited-positions">
|
250
|
+
<xs:sequence>
|
251
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
252
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
253
|
+
ref="activities:affiliation-group" />
|
254
|
+
</xs:sequence>
|
255
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
256
|
+
</xs:complexType>
|
257
|
+
|
258
|
+
<xs:element name="invited-positions">
|
259
|
+
<xs:complexType>
|
260
|
+
<xs:complexContent>
|
261
|
+
<xs:extension base="activities:invited-positions" />
|
262
|
+
</xs:complexContent>
|
263
|
+
</xs:complexType>
|
264
|
+
</xs:element>
|
265
|
+
|
266
|
+
<xs:complexType name="funding-group">
|
267
|
+
<xs:sequence>
|
268
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
269
|
+
<xs:element ref="common:external-ids"></xs:element>
|
270
|
+
<xs:sequence>
|
271
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
272
|
+
ref="funding:funding-summary" />
|
273
|
+
</xs:sequence>
|
274
|
+
</xs:sequence>
|
275
|
+
</xs:complexType>
|
276
|
+
|
277
|
+
<xs:complexType name="fundings">
|
278
|
+
<xs:sequence>
|
279
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
280
|
+
<xs:element maxOccurs="unbounded" minOccurs="0" name="group"
|
281
|
+
type="activities:funding-group" />
|
282
|
+
</xs:sequence>
|
283
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
284
|
+
</xs:complexType>
|
285
|
+
|
286
|
+
<xs:element name="fundings">
|
287
|
+
<xs:complexType>
|
288
|
+
<xs:complexContent>
|
289
|
+
<xs:extension base="activities:fundings" />
|
290
|
+
</xs:complexContent>
|
291
|
+
</xs:complexType>
|
292
|
+
</xs:element>
|
293
|
+
|
294
|
+
<xs:complexType name="memberships">
|
295
|
+
<xs:sequence>
|
296
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
297
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
298
|
+
ref="activities:affiliation-group" />
|
299
|
+
</xs:sequence>
|
300
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
301
|
+
</xs:complexType>
|
302
|
+
|
303
|
+
<xs:element name="memberships">
|
304
|
+
<xs:complexType>
|
305
|
+
<xs:complexContent>
|
306
|
+
<xs:extension base="activities:memberships" />
|
307
|
+
</xs:complexContent>
|
308
|
+
</xs:complexType>
|
309
|
+
</xs:element>
|
310
|
+
|
311
|
+
<xs:complexType name="peer-review-duplicates">
|
312
|
+
<xs:sequence>
|
313
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
314
|
+
<xs:element ref="common:external-ids"></xs:element>
|
315
|
+
<xs:sequence>
|
316
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
317
|
+
ref="peer-review:peer-review-summary" />
|
318
|
+
</xs:sequence>
|
319
|
+
</xs:sequence>
|
320
|
+
</xs:complexType>
|
321
|
+
|
322
|
+
<xs:complexType name="peer-review-group">
|
323
|
+
<xs:sequence>
|
324
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
325
|
+
<xs:element ref="common:external-ids"></xs:element>
|
326
|
+
<xs:sequence>
|
327
|
+
<xs:element maxOccurs="unbounded" minOccurs="0" name="peer-review-group"
|
328
|
+
type="activities:peer-review-duplicates" />
|
329
|
+
</xs:sequence>
|
330
|
+
</xs:sequence>
|
331
|
+
</xs:complexType>
|
332
|
+
|
333
|
+
<xs:complexType name="peer-reviews">
|
334
|
+
<xs:sequence>
|
335
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
336
|
+
<xs:element maxOccurs="unbounded" minOccurs="0" name="group"
|
337
|
+
type="activities:peer-review-group" />
|
338
|
+
</xs:sequence>
|
339
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
340
|
+
</xs:complexType>
|
341
|
+
|
342
|
+
<xs:element name="peer-reviews">
|
343
|
+
<xs:complexType>
|
344
|
+
<xs:complexContent>
|
345
|
+
<xs:extension base="activities:peer-reviews" />
|
346
|
+
</xs:complexContent>
|
347
|
+
</xs:complexType>
|
348
|
+
</xs:element>
|
349
|
+
|
350
|
+
<xs:complexType name="qualifications">
|
351
|
+
<xs:sequence>
|
352
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
353
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
354
|
+
ref="activities:affiliation-group" />
|
355
|
+
</xs:sequence>
|
356
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
357
|
+
</xs:complexType>
|
358
|
+
|
359
|
+
<xs:element name="qualifications">
|
360
|
+
<xs:complexType>
|
361
|
+
<xs:complexContent>
|
362
|
+
<xs:extension base="activities:qualifications" />
|
363
|
+
</xs:complexContent>
|
364
|
+
</xs:complexType>
|
365
|
+
</xs:element>
|
366
|
+
|
367
|
+
<xs:complexType name="services">
|
368
|
+
<xs:sequence>
|
369
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
370
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
371
|
+
ref="activities:affiliation-group" />
|
372
|
+
</xs:sequence>
|
373
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
374
|
+
</xs:complexType>
|
375
|
+
|
376
|
+
<xs:element name="services">
|
377
|
+
<xs:complexType>
|
378
|
+
<xs:complexContent>
|
379
|
+
<xs:extension base="activities:services" />
|
380
|
+
</xs:complexContent>
|
381
|
+
</xs:complexType>
|
382
|
+
</xs:element>
|
383
|
+
|
384
|
+
<xs:complexType name="affiliation-group">
|
385
|
+
<xs:sequence>
|
386
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
387
|
+
<xs:element ref="common:external-ids"></xs:element>
|
388
|
+
<xs:choice>
|
389
|
+
<xs:sequence>
|
390
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
391
|
+
ref="distinction:distinction-summary" />
|
392
|
+
</xs:sequence>
|
393
|
+
<xs:sequence>
|
394
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
395
|
+
ref="invited-position:invited-position-summary" />
|
396
|
+
</xs:sequence>
|
397
|
+
<xs:sequence>
|
398
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
399
|
+
ref="education:education-summary" />
|
400
|
+
</xs:sequence>
|
401
|
+
<xs:sequence>
|
402
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
403
|
+
ref="employment:employment-summary" />
|
404
|
+
</xs:sequence>
|
405
|
+
<xs:sequence>
|
406
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
407
|
+
ref="membership:membership-summary" />
|
408
|
+
</xs:sequence>
|
409
|
+
<xs:sequence>
|
410
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
411
|
+
ref="qualification:qualification-summary" />
|
412
|
+
</xs:sequence>
|
413
|
+
<xs:sequence>
|
414
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
415
|
+
ref="service:service-summary" />
|
416
|
+
</xs:sequence>
|
417
|
+
</xs:choice>
|
418
|
+
</xs:sequence>
|
419
|
+
</xs:complexType>
|
420
|
+
|
421
|
+
<xs:element name="affiliation-group">
|
422
|
+
<xs:complexType>
|
423
|
+
<xs:complexContent>
|
424
|
+
<xs:extension base="activities:affiliation-group" />
|
425
|
+
</xs:complexContent>
|
426
|
+
</xs:complexType>
|
427
|
+
</xs:element>
|
428
|
+
|
429
|
+
<xs:complexType name="work-group">
|
430
|
+
<xs:sequence>
|
431
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
432
|
+
<xs:element ref="common:external-ids"></xs:element>
|
433
|
+
<xs:sequence>
|
434
|
+
<xs:element maxOccurs="unbounded" minOccurs="0"
|
435
|
+
ref="work:work-summary" />
|
436
|
+
</xs:sequence>
|
437
|
+
</xs:sequence>
|
438
|
+
</xs:complexType>
|
439
|
+
|
440
|
+
<xs:complexType name="works">
|
441
|
+
<xs:sequence>
|
442
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
443
|
+
<xs:element maxOccurs="unbounded" minOccurs="0" name="group"
|
444
|
+
type="activities:work-group" />
|
445
|
+
</xs:sequence>
|
446
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
447
|
+
</xs:complexType>
|
448
|
+
|
449
|
+
<xs:element name="works">
|
450
|
+
<xs:complexType>
|
451
|
+
<xs:complexContent>
|
452
|
+
<xs:extension base="activities:works" />
|
453
|
+
</xs:complexContent>
|
454
|
+
</xs:complexType>
|
455
|
+
</xs:element>
|
456
|
+
</xs:schema>
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
3
|
+
xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
|
4
|
+
targetNamespace="http://www.orcid.org/ns/address" xmlns:address="http://www.orcid.org/ns/address"
|
5
|
+
xmlns:common="http://www.orcid.org/ns/common">
|
6
|
+
<xs:annotation>
|
7
|
+
<xs:documentation>
|
8
|
+
=============================================================================
|
9
|
+
|
10
|
+
ORCID (R) Open Source
|
11
|
+
http://orcid.org
|
12
|
+
|
13
|
+
Copyright (c) 2012-2018 ORCID,
|
14
|
+
Inc.
|
15
|
+
Licensed under an MIT-Style License (MIT)
|
16
|
+
http://orcid.org/open-source-license
|
17
|
+
|
18
|
+
This copyright and license
|
19
|
+
information (including a link to the full
|
20
|
+
license)
|
21
|
+
shall be included in
|
22
|
+
its entirety in all copies or substantial portion of
|
23
|
+
the software.
|
24
|
+
|
25
|
+
=============================================================================
|
26
|
+
The schema describes the message format used for ORCID API requests
|
27
|
+
and responses.
|
28
|
+
</xs:documentation>
|
29
|
+
<xs:appinfo>
|
30
|
+
<sch:title>Schematron validation</sch:title>
|
31
|
+
<sch:ns prefix="address" uri="http://www.orcid.org/ns/address" />
|
32
|
+
</xs:appinfo>
|
33
|
+
</xs:annotation>
|
34
|
+
<xs:import namespace="http://www.orcid.org/ns/common"
|
35
|
+
schemaLocation="../common_3.0/common-3.0.xsd" />
|
36
|
+
|
37
|
+
<xs:element name="addresses">
|
38
|
+
<xs:annotation>
|
39
|
+
<xs:documentation>Addresses container</xs:documentation>
|
40
|
+
</xs:annotation>
|
41
|
+
<xs:complexType>
|
42
|
+
<xs:sequence>
|
43
|
+
<xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
|
44
|
+
<xs:element name="address" type="address:address" minOccurs="0"
|
45
|
+
maxOccurs="unbounded" />
|
46
|
+
</xs:sequence>
|
47
|
+
<xs:attribute name="path" type="common:element-path" use="optional" />
|
48
|
+
</xs:complexType>
|
49
|
+
</xs:element>
|
50
|
+
|
51
|
+
<xs:element name="address">
|
52
|
+
<xs:annotation>
|
53
|
+
<xs:documentation>Address element
|
54
|
+
</xs:documentation>
|
55
|
+
</xs:annotation>
|
56
|
+
<xs:complexType>
|
57
|
+
<xs:complexContent>
|
58
|
+
<xs:extension base="address:address"></xs:extension>
|
59
|
+
</xs:complexContent>
|
60
|
+
</xs:complexType>
|
61
|
+
</xs:element>
|
62
|
+
|
63
|
+
|
64
|
+
<xs:complexType name="address">
|
65
|
+
<xs:complexContent>
|
66
|
+
<xs:extension base="common:element-summary">
|
67
|
+
<xs:sequence>
|
68
|
+
<xs:element name="country" type="common:iso-3166-country-or-empty" />
|
69
|
+
</xs:sequence>
|
70
|
+
</xs:extension>
|
71
|
+
</xs:complexContent>
|
72
|
+
</xs:complexType>
|
73
|
+
</xs:schema>
|
@@ -0,0 +1,57 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
3
|
+
xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
|
4
|
+
targetNamespace="http://www.orcid.org/ns/bulk"
|
5
|
+
xmlns:bulk="http://www.orcid.org/ns/bulk"
|
6
|
+
xmlns:work="http://www.orcid.org/ns/work"
|
7
|
+
xmlns:error="http://www.orcid.org/ns/error">
|
8
|
+
<xs:annotation>
|
9
|
+
<xs:documentation>
|
10
|
+
=============================================================================
|
11
|
+
|
12
|
+
ORCID (R) Open Source
|
13
|
+
http://orcid.org
|
14
|
+
|
15
|
+
Copyright (c) 2012-2018 ORCID,
|
16
|
+
Inc.
|
17
|
+
Licensed under an MIT-Style License (MIT)
|
18
|
+
http://orcid.org/open-source-license
|
19
|
+
|
20
|
+
This copyright and license
|
21
|
+
information (including a link to the full
|
22
|
+
license)
|
23
|
+
shall be included in
|
24
|
+
its entirety in all copies or substantial portion of
|
25
|
+
the software.
|
26
|
+
|
27
|
+
=============================================================================
|
28
|
+
The schema describes the message format used for ORCID API requests
|
29
|
+
and responses.
|
30
|
+
The top level element is orcid-message.
|
31
|
+
</xs:documentation>
|
32
|
+
<xs:appinfo>
|
33
|
+
<sch:title>Schematron validation</sch:title>
|
34
|
+
<sch:ns prefix="bulk" uri="http://www.orcid.org/ns/bulk" />
|
35
|
+
</xs:appinfo>
|
36
|
+
</xs:annotation>
|
37
|
+
|
38
|
+
<xs:import namespace="http://www.orcid.org/ns/error"
|
39
|
+
schemaLocation="error-3.0.xsd" />
|
40
|
+
|
41
|
+
<xs:import namespace="http://www.orcid.org/ns/work"
|
42
|
+
schemaLocation="work-3.0.xsd" />
|
43
|
+
|
44
|
+
<xs:element name="bulk">
|
45
|
+
<xs:complexType>
|
46
|
+
<xs:annotation>
|
47
|
+
<xs:documentation>Utilitary schema that allow the creation of multiple works in a single request</xs:documentation>
|
48
|
+
</xs:annotation>
|
49
|
+
<xs:sequence maxOccurs="unbounded">
|
50
|
+
<xs:choice>
|
51
|
+
<xs:element minOccurs="0" ref="work:work" />
|
52
|
+
<xs:element minOccurs="0" ref="error:error" />
|
53
|
+
</xs:choice>
|
54
|
+
</xs:sequence>
|
55
|
+
</xs:complexType>
|
56
|
+
</xs:element>
|
57
|
+
</xs:schema>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
3
|
+
xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
|
4
|
+
targetNamespace="http://www.orcid.org/ns/distinction" xmlns:distinction="http://www.orcid.org/ns/distinction"
|
5
|
+
xmlns:common="http://www.orcid.org/ns/common">
|
6
|
+
<xs:annotation>
|
7
|
+
<xs:documentation>
|
8
|
+
=============================================================================
|
9
|
+
|
10
|
+
ORCID (R) Open Source
|
11
|
+
http://orcid.org
|
12
|
+
|
13
|
+
Copyright (c) 2012-2018 ORCID,
|
14
|
+
Inc.
|
15
|
+
Licensed under an MIT-Style License (MIT)
|
16
|
+
http://orcid.org/open-source-license
|
17
|
+
|
18
|
+
This copyright and license
|
19
|
+
information (including a link to the full
|
20
|
+
license)
|
21
|
+
shall be included in
|
22
|
+
its entirety in all copies or substantial portion of
|
23
|
+
the software.
|
24
|
+
|
25
|
+
=============================================================================
|
26
|
+
The schema describes the message format used for ORCID API requests
|
27
|
+
and responses.
|
28
|
+
</xs:documentation>
|
29
|
+
<xs:appinfo>
|
30
|
+
<sch:title>Schematron validation</sch:title>
|
31
|
+
<sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
|
32
|
+
</xs:appinfo>
|
33
|
+
</xs:annotation>
|
34
|
+
|
35
|
+
<xs:import namespace="http://www.orcid.org/ns/common"
|
36
|
+
schemaLocation="../common_3.0/common-3.0.xsd" />
|
37
|
+
|
38
|
+
<xs:element name="distinction" type="common:affiliation">
|
39
|
+
<xs:annotation>
|
40
|
+
<xs:documentation>A distinction associated with or given to the researcher or contributor.
|
41
|
+
Distinction is defined as honorary and other awards, distinctions, and prizes made by an organization in recognition of an individual’s academic or other achievements.
|
42
|
+
* The put-code attribute is returned when reading this element.
|
43
|
+
When updating the item, the put-code attribute
|
44
|
+
must be included to indicate the specific item to be updated.
|
45
|
+
</xs:documentation>
|
46
|
+
</xs:annotation>
|
47
|
+
</xs:element>
|
48
|
+
|
49
|
+
<xs:element name="distinction-summary" type="common:affiliation-summary" />
|
50
|
+
|
51
|
+
</xs:schema>
|