orcid_client 0.8 → 0.9.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (152) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +39 -0
  3. data/.github/workflows/changelog.yml +36 -0
  4. data/.github/workflows/release.yml +48 -0
  5. data/CHANGELOG.md +169 -0
  6. data/Gemfile.lock +135 -117
  7. data/README.md +6 -6
  8. data/lib/orcid_client/api.rb +2 -1
  9. data/lib/orcid_client/base.rb +1 -1
  10. data/lib/orcid_client/external_identifier.rb +1 -1
  11. data/lib/orcid_client/version.rb +1 -1
  12. data/lib/orcid_client/work.rb +8 -5
  13. data/orcid_client.gemspec +3 -4
  14. data/resources/README.md +48 -43
  15. data/resources/common_3.0/common-3.0.xsd +998 -0
  16. data/resources/common_3.0/samples/common-3.0.xml +8 -0
  17. data/resources/common_3.0/samples/common-3.0_external-identifier.xml +11 -0
  18. data/resources/notification_3.0/README.md +130 -0
  19. data/resources/notification_3.0/images/notification-intro.jpg +0 -0
  20. data/resources/notification_3.0/images/notification-subject.jpg +0 -0
  21. data/resources/notification_3.0/notification-custom-3.0.xsd +38 -0
  22. data/resources/notification_3.0/notification-permission-3.0.xsd +134 -0
  23. data/resources/notification_3.0/samples/notification-custom-3.0.xml +27 -0
  24. data/resources/notification_3.0/samples/notification-permission-3.0.xml +58 -0
  25. data/resources/record_3.0/README.md +408 -0
  26. data/resources/record_3.0/activities-3.0.xsd +456 -0
  27. data/resources/record_3.0/address-3.0.xsd +73 -0
  28. data/resources/record_3.0/bulk-3.0.xsd +57 -0
  29. data/resources/record_3.0/distinction-3.0.xsd +51 -0
  30. data/resources/record_3.0/education-3.0.xsd +51 -0
  31. data/resources/record_3.0/email-3.0.xsd +76 -0
  32. data/resources/record_3.0/employment-3.0.xsd +51 -0
  33. data/resources/record_3.0/error-3.0.xsd +84 -0
  34. data/resources/record_3.0/expanded-search-3.0.xsd +114 -0
  35. data/resources/record_3.0/funding-3.0.xsd +204 -0
  36. data/resources/record_3.0/history-3.0.xsd +185 -0
  37. data/resources/record_3.0/invited-position-3.0.xsd +50 -0
  38. data/resources/record_3.0/keyword-3.0.xsd +72 -0
  39. data/resources/record_3.0/membership-3.0.xsd +51 -0
  40. data/resources/record_3.0/other-name-3.0.xsd +78 -0
  41. data/resources/record_3.0/peer-review-3.0.xsd +263 -0
  42. data/resources/record_3.0/person-3.0.xsd +85 -0
  43. data/resources/record_3.0/person-external-identifier-3.0.xsd +63 -0
  44. data/resources/record_3.0/personal-details-3.0.xsd +162 -0
  45. data/resources/record_3.0/preferences-3.0.xsd +50 -0
  46. data/resources/record_3.0/qualification-3.0.xsd +50 -0
  47. data/resources/record_3.0/record-3.0.xsd +91 -0
  48. data/resources/record_3.0/research-resource-3.0.xsd +144 -0
  49. data/resources/record_3.0/researcher-url-3.0.xsd +86 -0
  50. data/resources/record_3.0/samples/read_samples/activities-3.0.xml +742 -0
  51. data/resources/record_3.0/samples/read_samples/address-3.0.xml +16 -0
  52. data/resources/record_3.0/samples/read_samples/addresses-3.0.xml +32 -0
  53. data/resources/record_3.0/samples/read_samples/biography-3.0.xml +10 -0
  54. data/resources/record_3.0/samples/read_samples/bulk-work-err.xml +45 -0
  55. data/resources/record_3.0/samples/read_samples/credit-name-3.0.xml +5 -0
  56. data/resources/record_3.0/samples/read_samples/distinction-3.0.xml +55 -0
  57. data/resources/record_3.0/samples/read_samples/distinctions-3.0.xml +106 -0
  58. data/resources/record_3.0/samples/read_samples/education-3.0.xml +55 -0
  59. data/resources/record_3.0/samples/read_samples/education-full-3.0.xml +55 -0
  60. data/resources/record_3.0/samples/read_samples/educations-3.0.xml +118 -0
  61. data/resources/record_3.0/samples/read_samples/email-3.0.xml +16 -0
  62. data/resources/record_3.0/samples/read_samples/emails-3.0.xml +31 -0
  63. data/resources/record_3.0/samples/read_samples/employment-3.0.xml +55 -0
  64. data/resources/record_3.0/samples/read_samples/employment-full-3.0.xml +55 -0
  65. data/resources/record_3.0/samples/read_samples/employments-3.0.xml +108 -0
  66. data/resources/record_3.0/samples/read_samples/error-3.0.xml +8 -0
  67. data/resources/record_3.0/samples/read_samples/external-identifier-3.0.xml +21 -0
  68. data/resources/record_3.0/samples/read_samples/external-identifiers-3.0.xml +38 -0
  69. data/resources/record_3.0/samples/read_samples/full-record-3.0.json +2332 -0
  70. data/resources/record_3.0/samples/read_samples/funding-3.0.xml +75 -0
  71. data/resources/record_3.0/samples/read_samples/funding-full-3.0.xml +75 -0
  72. data/resources/record_3.0/samples/read_samples/fundings-3.0.xml +139 -0
  73. data/resources/record_3.0/samples/read_samples/history-3.0.xml +22 -0
  74. data/resources/record_3.0/samples/read_samples/invited-position-3.0.xml +55 -0
  75. data/resources/record_3.0/samples/read_samples/invited-positions-3.0.xml +106 -0
  76. data/resources/record_3.0/samples/read_samples/keyword-3.0.xml +18 -0
  77. data/resources/record_3.0/samples/read_samples/keywords-3.0.xml +34 -0
  78. data/resources/record_3.0/samples/read_samples/membership-3.0.xml +55 -0
  79. data/resources/record_3.0/samples/read_samples/memberships-3.0.xml +106 -0
  80. data/resources/record_3.0/samples/read_samples/name-3.0.xml +12 -0
  81. data/resources/record_3.0/samples/read_samples/other-name-3.0.xml +16 -0
  82. data/resources/record_3.0/samples/read_samples/other-names-3.0.xml +31 -0
  83. data/resources/record_3.0/samples/read_samples/peer-review-3.0.xml +59 -0
  84. data/resources/record_3.0/samples/read_samples/peer-review-full-3.0.xml +59 -0
  85. data/resources/record_3.0/samples/read_samples/peer-reviews-3.0.xml +76 -0
  86. data/resources/record_3.0/samples/read_samples/person-3.0.xml +122 -0
  87. data/resources/record_3.0/samples/read_samples/personal-details-3.0.xml +47 -0
  88. data/resources/record_3.0/samples/read_samples/preferences-3.0.xml +4 -0
  89. data/resources/record_3.0/samples/read_samples/qualification-3.0.xml +55 -0
  90. data/resources/record_3.0/samples/read_samples/qualifications-3.0.xml +106 -0
  91. data/resources/record_3.0/samples/read_samples/record-3.0.xml +770 -0
  92. data/resources/record_3.0/samples/read_samples/research-resource-3.0.xml +138 -0
  93. data/resources/record_3.0/samples/read_samples/research-resources-3.0.xml +143 -0
  94. data/resources/record_3.0/samples/read_samples/researcher-url-3.0.xml +19 -0
  95. data/resources/record_3.0/samples/read_samples/researcher-urls-3.0.xml +21 -0
  96. data/resources/record_3.0/samples/read_samples/search-3.0.xml +14 -0
  97. data/resources/record_3.0/samples/read_samples/service-3.0.xml +55 -0
  98. data/resources/record_3.0/samples/read_samples/services-3.0.xml +106 -0
  99. data/resources/record_3.0/samples/read_samples/work-3.0.xml +65 -0
  100. data/resources/record_3.0/samples/read_samples/work-full-3.0.xml +65 -0
  101. data/resources/record_3.0/samples/read_samples/works-3.0.xml +148 -0
  102. data/resources/record_3.0/samples/write_samples/address-3.0.xml +6 -0
  103. data/resources/record_3.0/samples/write_samples/bulk-work-3.0.json +53 -0
  104. data/resources/record_3.0/samples/write_samples/bulk-work-3.0.xml +47 -0
  105. data/resources/record_3.0/samples/write_samples/distinction-3.0.xml +46 -0
  106. data/resources/record_3.0/samples/write_samples/education-3.0.xml +45 -0
  107. data/resources/record_3.0/samples/write_samples/employment-3.0.xml +45 -0
  108. data/resources/record_3.0/samples/write_samples/external-identifier-3.0.xml +11 -0
  109. data/resources/record_3.0/samples/write_samples/funding-3.0.xml +44 -0
  110. data/resources/record_3.0/samples/write_samples/invited-position-3.0.xml +45 -0
  111. data/resources/record_3.0/samples/write_samples/keyword-3.0.xml +7 -0
  112. data/resources/record_3.0/samples/write_samples/membership-3.0.xml +45 -0
  113. data/resources/record_3.0/samples/write_samples/other-name-3.0.xml +6 -0
  114. data/resources/record_3.0/samples/write_samples/peer-review-full-3.0.xml +48 -0
  115. data/resources/record_3.0/samples/write_samples/peer-review-full-award-subject-type-3.0.xml +48 -0
  116. data/resources/record_3.0/samples/write_samples/peer-review-simple-3.0.xml +32 -0
  117. data/resources/record_3.0/samples/write_samples/qualification-3.0.xml +45 -0
  118. data/resources/record_3.0/samples/write_samples/research-resource-3.0.xml +110 -0
  119. data/resources/record_3.0/samples/write_samples/researcher-url-3.0-no-name.xml +6 -0
  120. data/resources/record_3.0/samples/write_samples/researcher-url-3.0.xml +7 -0
  121. data/resources/record_3.0/samples/write_samples/service-3.0.xml +45 -0
  122. data/resources/record_3.0/samples/write_samples/work-full-3.0.xml +60 -0
  123. data/resources/record_3.0/samples/write_samples/work-simple-3.0.xml +18 -0
  124. data/resources/record_3.0/search-3.0.xsd +62 -0
  125. data/resources/record_3.0/service-3.0.xsd +51 -0
  126. data/resources/record_3.0/work-3.0.xsd +269 -0
  127. data/spec/api_spec.rb +3 -3
  128. data/spec/author_spec.rb +1 -1
  129. data/spec/external_identifier_spec.rb +2 -2
  130. data/spec/fixtures/external_identifier.xml +1 -1
  131. data/spec/fixtures/vcr_cassettes/OrcidClient/works/get/should_get_works.yml +23 -10
  132. data/spec/fixtures/vcr_cassettes/OrcidClient/works/post/should_create_work.yml +71 -74
  133. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/data.yml +43 -55
  134. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_data.yml +43 -55
  135. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_item_type_work.yml +39 -44
  136. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/literal.yml +43 -51
  137. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/valid.yml +40 -48
  138. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/with_ORCID_IDs.yml +39 -30
  139. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/data.yml +41 -49
  140. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/publication_date.yml +40 -48
  141. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_ORCID_IDs_for_contributors.yml +40 -31
  142. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_data.yml +40 -48
  143. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_staging_system.yml +104 -0
  144. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_type_data-set.yml +40 -45
  145. data/spec/fixtures/work.xml +12 -16
  146. data/spec/notification_spec.rb +11 -10
  147. data/spec/work_spec.rb +26 -63
  148. metadata +133 -30
  149. data/.travis.yml +0 -17
  150. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/multiple_titles.yml +0 -102
  151. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_test_system.yml +0 -95
  152. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/user_example/fail/valid.yml +0 -95
@@ -0,0 +1,263 @@
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/peer-review"
5
+ xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:peer-review="http://www.orcid.org/ns/peer-review">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2018 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ The top level element is orcid-message.
30
+ </xs:documentation>
31
+ <xs:appinfo>
32
+ <sch:title>Schematron validation</sch:title>
33
+ <sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
34
+ </xs:appinfo>
35
+ </xs:annotation>
36
+
37
+ <xs:import namespace="http://www.orcid.org/ns/common"
38
+ schemaLocation="../common_3.0/common-3.0.xsd" />
39
+
40
+ <xs:element name="peer-review">
41
+ <xs:complexType>
42
+ <xs:complexContent>
43
+ <xs:extension base="common:element-summary">
44
+ <xs:sequence>
45
+ <xs:element name="reviewer-role" type="peer-review:role" minOccurs="1" maxOccurs="1">
46
+ <xs:annotation>
47
+ <xs:documentation>The role played by a person in their contribution to a review.
48
+ Options for this field are: chair, editor, member, organizer, reviewer
49
+ </xs:documentation>
50
+ </xs:annotation>
51
+ </xs:element>
52
+ <xs:element name="review-identifiers" type="common:external-ids"
53
+ minOccurs="1">
54
+ <xs:annotation>
55
+ <xs:documentation>Unique identifier(s) of the review. <i>This identifier refers to the review itself, NOT to the item that was reviewed.</i> At least one identifier is required. In the case where there is no persistent unique identifier for the review, the source providing the data should generate a locally-sourced unique identifier for the review (e.g., type "organization-defined-type"). This field will be checked when adding new reviews to prevent double counting of review activity.
56
+ Identifier types must be selected from the list at https://pub.orcid.org/v2.0/identifiers
57
+ </xs:documentation>
58
+ </xs:annotation>
59
+ </xs:element>
60
+ <xs:element name="review-url" type="common:url" minOccurs="0">
61
+ <xs:annotation>
62
+ <xs:documentation>A link to a representation of the review on the web. <i>This URL refers to the review itself, NOT to the item that was reviewed.</i>
63
+ </xs:documentation>
64
+ </xs:annotation>
65
+ </xs:element>
66
+ <xs:element name="review-type" type="peer-review:type"
67
+ minOccurs="1" maxOccurs="1">
68
+ <xs:annotation>
69
+ <xs:documentation>The kind of review. Options for this field are: evaluation, review
70
+ </xs:documentation>
71
+ </xs:annotation>
72
+ </xs:element>
73
+ <xs:element name="review-completion-date" type="common:fuzzy-date"
74
+ minOccurs="1" maxOccurs="1">
75
+ <xs:annotation>
76
+ <xs:documentation>The date on which the review was completed. Allowable values: yyyy; yyyy-mm; yyyy-mm-dd, formatted using the ORCID fuzzy date format.
77
+ </xs:documentation>
78
+ </xs:annotation>
79
+ </xs:element>
80
+ <xs:element name="review-group-id" type="common:group-id" minOccurs="1" maxOccurs="1">
81
+ <xs:annotation>
82
+ <xs:documentation>Identifier for the group that this review should be a part of for aggregation purposes
83
+ </xs:documentation>
84
+ </xs:annotation>
85
+ </xs:element>
86
+ <xs:element name="subject-external-identifier" type="common:external-id"
87
+ minOccurs="0">
88
+ <xs:annotation>
89
+ <xs:documentation>The unique identifier of the subject being reviewed.
90
+ Identifier types must be selected from the list at https://pub.orcid.org/v2.0/identifiers
91
+ </xs:documentation>
92
+ </xs:annotation>
93
+ </xs:element>
94
+ <xs:element name="subject-container-name" type="common:string-1000"
95
+ minOccurs="0" maxOccurs="1">
96
+ <xs:annotation>
97
+ <xs:documentation>The name of the journal, conference, grant review panel, or other applicable object of which the review subject was a part.
98
+ </xs:documentation>
99
+ </xs:annotation>
100
+ </xs:element>
101
+ <xs:element name="subject-type" type="peer-review:subject-type" minOccurs="0" maxOccurs="1">
102
+ <xs:annotation>
103
+ <xs:documentation>The type of object that the review subject is (for example, a journal article, grant, etc).
104
+ </xs:documentation>
105
+ </xs:annotation>
106
+ </xs:element>
107
+ <xs:element name="subject-name" type="peer-review:subject-name"
108
+ minOccurs="0" maxOccurs="1">
109
+ <xs:annotation>
110
+ <xs:documentation>The name/title of the object that was reviewed.
111
+ </xs:documentation>
112
+ </xs:annotation>
113
+ </xs:element>
114
+ <xs:element name="subject-url" type="common:url" minOccurs="0" maxOccurs="1">
115
+ <xs:annotation>
116
+ <xs:documentation>The URL of the object that was reviewed.
117
+ </xs:documentation>
118
+ </xs:annotation>
119
+ </xs:element>
120
+ <!-- orcid orgs doesn't match specification -->
121
+ <xs:element name="convening-organization" type="common:organization"
122
+ minOccurs="1" maxOccurs="1">
123
+ <xs:annotation>
124
+ <xs:documentation>Information about the organization convening the review (journal publisher, conference organizer, funding agency, etc). A valid organizational identifier (Ringgold ID, GRID ID or FundRef ID is required).
125
+ </xs:documentation>
126
+ </xs:annotation>
127
+ </xs:element>
128
+ </xs:sequence>
129
+ </xs:extension>
130
+ </xs:complexContent>
131
+ </xs:complexType>
132
+ </xs:element>
133
+
134
+ <xs:element name="peer-review-summary">
135
+ <xs:complexType>
136
+ <xs:complexContent>
137
+ <xs:extension base="common:element-summary">
138
+ <xs:sequence>
139
+ <!-- orcid orgs doesn't match specification -->
140
+ <xs:element name="reviewer-role" type="peer-review:role" minOccurs="1" maxOccurs="1">
141
+ <xs:annotation>
142
+ <xs:documentation>The role played by a person in their
143
+ contribution to a review.
144
+ </xs:documentation>
145
+ </xs:annotation>
146
+ </xs:element>
147
+ <xs:element ref="common:external-ids"
148
+ minOccurs="0">
149
+ <xs:annotation>
150
+ <xs:documentation>The unique identifier of the review.
151
+ </xs:documentation>
152
+ </xs:annotation>
153
+ </xs:element>
154
+ <xs:element name="review-url" type="common:url" minOccurs="0">
155
+ <xs:annotation>
156
+ <xs:documentation>A link to a representation of the review on the web. <i>This URL refers to the review itself, NOT to the item that was reviewed.</i>
157
+ </xs:documentation>
158
+ </xs:annotation>
159
+ </xs:element>
160
+ <xs:element name="review-type" type="peer-review:type"
161
+ minOccurs="1" maxOccurs="1">
162
+ <xs:annotation>
163
+ <xs:documentation>The kind of review applied to the subject type
164
+ reviewed
165
+ </xs:documentation>
166
+ </xs:annotation>
167
+ </xs:element>
168
+ <xs:element name="completion-date" type="common:fuzzy-date"
169
+ minOccurs="1" maxOccurs="1">
170
+ <xs:annotation>
171
+ <xs:documentation>The date on which the review was completed. Allowable values: yyyy; yyyy-mm; yyyy-mm-dd, formatted using the ORCID fuzzy date format.
172
+ </xs:documentation>
173
+ </xs:annotation>
174
+ </xs:element>
175
+ <xs:element name="review-group-id" type="common:group-id" minOccurs="1" maxOccurs="1">
176
+ <xs:annotation>
177
+ <xs:documentation>Identifier for the group that this review should be a part of for aggregation purposes
178
+ </xs:documentation>
179
+ </xs:annotation>
180
+ </xs:element>
181
+ <xs:element name="convening-organization" type="common:organization"
182
+ minOccurs="1" maxOccurs="1">
183
+ <xs:annotation>
184
+ <xs:documentation>Information about the organization convening the review (journal publisher, conference organizer, funding agency, etc). Whenever possible, this organization is identified by a unique identifier like the Ringgold ID or FundRef ID.
185
+ </xs:documentation>
186
+ </xs:annotation>
187
+ </xs:element>
188
+ </xs:sequence>
189
+ </xs:extension>
190
+ </xs:complexContent>
191
+ </xs:complexType>
192
+ </xs:element>
193
+
194
+ <xs:simpleType name="subject-type">
195
+ <xs:annotation>
196
+ <xs:documentation>The type of object that the review subject is, from the list of supported work types in https://members.orcid.org/api/resources/work-types as well as the following types:
197
+ * award: Peer-reviewed funding providing direct research costs through competitions
198
+ * contract: Works commissioned by external public agencies or industry building on research expertise and aimed at deliverables. Include research contracts awarded by federal agencies for both direct and indirect costs, and honoraria
199
+ * grant: Peer-reviewed funding providing direct research costs through competitions
200
+ * salary-award: A competitive, peer-reviewed award that is paid as salary to the awardee/faculty member
201
+ * research-resource-proposal: A peer-reviewed proposal of use of a research resource
202
+ * undefined
203
+ ORCID will validate this value against the enumeration
204
+ https://github.com/ORCID/orcid-model/blob/master/src/main/java/org/orcid/jaxb/model/common/PeerReviewSubjectType.java and other rules when necessary.
205
+ </xs:documentation>
206
+ </xs:annotation>
207
+ <xs:restriction base="xs:string" />
208
+ </xs:simpleType>
209
+
210
+ <xs:simpleType name="role">
211
+ <xs:annotation>
212
+ <xs:documentation>
213
+ The role performed by the reviewer, selected from the following options:
214
+ * reviewer: A person who formally assess or examines an
215
+ output with a view to
216
+ commenting and evaluating it.
217
+ * editor: A person who coordinates reviews and/or is
218
+ responsible for decision making on the content of a publication.
219
+ * member: A person participating in a process, committee or
220
+ activity.
221
+ * chair: A person who coordinates reviews and/or is
222
+ responsible for decision making on the content of a conference.
223
+ * organizer: A person who makes arrangements or preparations
224
+ for an event or activity.
225
+ ORCID will validate this value against the enumeration
226
+ https://github.com/ORCID/orcid-model/blob/master/src/main/java/org/orcid/jaxb/model/common/Role.java and other rules when necessary
227
+ </xs:documentation>
228
+ </xs:annotation>
229
+ <xs:restriction base="xs:string" />
230
+ </xs:simpleType>
231
+
232
+ <xs:simpleType name="type">
233
+ <xs:annotation>
234
+ <xs:documentation>
235
+ The type of review this is, selected from the following options:
236
+ * review: An expert assessment of a scholarly output that
237
+ contributes to a decision regarding on the object of the review.
238
+ * evaluation: A post-peer review, expert evaluation of a
239
+ scholarly output.
240
+ ORCID will validate this value against the enumeration
241
+ https://github.com/ORCID/orcid-model/blob/master/src/main/java/org/orcid/jaxb/model/common/PeerReviewType.java and other rules when necessary
242
+ </xs:documentation>
243
+ </xs:annotation>
244
+ <xs:restriction base="xs:string" />
245
+ </xs:simpleType>
246
+
247
+ <xs:complexType name="subject-name">
248
+ <xs:annotation>
249
+ <xs:documentation>Container for peer-review subject name.
250
+ </xs:documentation>
251
+ </xs:annotation>
252
+ <xs:sequence>
253
+ <xs:element ref="common:title">
254
+ <xs:annotation>
255
+ <xs:documentation>The main name or title of the subject.
256
+ </xs:documentation>
257
+ </xs:annotation>
258
+ </xs:element>
259
+ <xs:element ref="common:subtitle" minOccurs="0" />
260
+ <xs:element ref="common:translated-title" minOccurs="0" />
261
+ </xs:sequence>
262
+ </xs:complexType>
263
+ </xs:schema>
@@ -0,0 +1,85 @@
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/person" xmlns:person="http://www.orcid.org/ns/person"
5
+ xmlns:other-name="http://www.orcid.org/ns/other-name" xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:researcher-url="http://www.orcid.org/ns/researcher-url"
7
+ xmlns:email="http://www.orcid.org/ns/email" xmlns:personal-details="http://www.orcid.org/ns/personal-details"
8
+ xmlns:address="http://www.orcid.org/ns/address" xmlns:keyword="http://www.orcid.org/ns/keyword"
9
+ xmlns:external-identifier="http://www.orcid.org/ns/external-identifier">
10
+ <xs:annotation>
11
+ <xs:documentation>
12
+ =============================================================================
13
+
14
+ ORCID (R) Open Source
15
+ http://orcid.org
16
+
17
+ Copyright (c) 2012-2018 ORCID,
18
+ Inc.
19
+ Licensed under an MIT-Style License (MIT)
20
+ http://orcid.org/open-source-license
21
+
22
+ This copyright and license
23
+ information (including a link to the full
24
+ license)
25
+ shall be included in
26
+ its entirety in all copies or substantial portion of
27
+ the software.
28
+
29
+ =============================================================================
30
+ The schema describes the message format used for ORCID API requests
31
+ and responses.
32
+ </xs:documentation>
33
+ <xs:appinfo>
34
+ <sch:title>Schematron validation</sch:title>
35
+ <sch:ns prefix="person" uri="http://www.orcid.org/ns/person" />
36
+ </xs:appinfo>
37
+ </xs:annotation>
38
+
39
+ <xs:import namespace="http://www.orcid.org/ns/common"
40
+ schemaLocation="../common_3.0/common-3.0.xsd" />
41
+ <xs:import namespace="http://www.orcid.org/ns/personal-details"
42
+ schemaLocation="../record_3.0/personal-details-3.0.xsd" />
43
+ <xs:import namespace="http://www.orcid.org/ns/other-name"
44
+ schemaLocation="../record_3.0/other-name-3.0.xsd" />
45
+ <xs:import namespace="http://www.orcid.org/ns/researcher-url"
46
+ schemaLocation="../record_3.0/researcher-url-3.0.xsd" />
47
+ <xs:import namespace="http://www.orcid.org/ns/email"
48
+ schemaLocation="../record_3.0/email-3.0.xsd" />
49
+ <xs:import namespace="http://www.orcid.org/ns/address"
50
+ schemaLocation="../record_3.0/address-3.0.xsd" />
51
+ <xs:import namespace="http://www.orcid.org/ns/keyword"
52
+ schemaLocation="../record_3.0/keyword-3.0.xsd" />
53
+ <xs:import namespace="http://www.orcid.org/ns/external-identifier"
54
+ schemaLocation="../record_3.0/person-external-identifier-3.0.xsd" />
55
+
56
+ <xs:element name="person">
57
+ <xs:annotation>
58
+ <xs:documentation>The biographical details of the researcher or
59
+ contributor.
60
+ </xs:documentation>
61
+ </xs:annotation>
62
+ <xs:complexType>
63
+ <xs:sequence>
64
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
65
+ <xs:element name="name" type="personal-details:name"
66
+ minOccurs="0" maxOccurs="1" />
67
+ <xs:element ref="other-name:other-names" minOccurs="0"
68
+ maxOccurs="1" />
69
+ <xs:element name="biography" type="personal-details:biography"
70
+ minOccurs="0" maxOccurs="1" />
71
+ <xs:element ref="researcher-url:researcher-urls"
72
+ minOccurs="0" maxOccurs="1" />
73
+ <xs:element ref="email:emails" minOccurs="1" maxOccurs="1" />
74
+ <xs:element ref="address:addresses" minOccurs="0"
75
+ maxOccurs="1" />
76
+ <xs:element ref="keyword:keywords" minOccurs="0"
77
+ maxOccurs="1" />
78
+ <xs:element ref="external-identifier:external-identifiers"
79
+ minOccurs="0" maxOccurs="1" />
80
+ </xs:sequence>
81
+ <xs:attribute name="path" type="common:element-path" use="optional" />
82
+ </xs:complexType>
83
+ </xs:element>
84
+
85
+ </xs:schema>
@@ -0,0 +1,63 @@
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/external-identifier"
5
+ xmlns:external-identifier="http://www.orcid.org/ns/external-identifier"
6
+ xmlns:common="http://www.orcid.org/ns/common">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2018 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="external-identifier" uri="http://www.orcid.org/ns/external-identifier" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+ <xs:import namespace="http://www.orcid.org/ns/common"
36
+ schemaLocation="../common_3.0/common-3.0.xsd" />
37
+
38
+ <xs:element name="external-identifiers">
39
+ <xs:annotation>
40
+ <xs:documentation>Container for identifiers that apply to the researcher themselves.</xs:documentation>
41
+ </xs:annotation>
42
+ <xs:complexType>
43
+ <xs:sequence>
44
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
45
+ <xs:element name="external-identifier"
46
+ type="common:external-id" minOccurs="0"
47
+ maxOccurs="unbounded" />
48
+ </xs:sequence>
49
+ <xs:attribute name="path" type="common:element-path" use="optional" />
50
+ </xs:complexType>
51
+ </xs:element>
52
+
53
+ <xs:element name="external-identifier">
54
+ <xs:annotation>
55
+ <xs:documentation>External identifier container</xs:documentation>
56
+ </xs:annotation>
57
+ <xs:complexType>
58
+ <xs:complexContent>
59
+ <xs:extension base="common:external-id" />
60
+ </xs:complexContent>
61
+ </xs:complexType>
62
+ </xs:element>
63
+ </xs:schema>
@@ -0,0 +1,162 @@
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/personal-details"
5
+ xmlns:other-name="http://www.orcid.org/ns/other-name" xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:personal-details="http://www.orcid.org/ns/personal-details">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2018 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="personal-details" uri="http://www.orcid.org/ns/personal-details" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+
36
+ <xs:import namespace="http://www.orcid.org/ns/common"
37
+ schemaLocation="../common_3.0/common-3.0.xsd" />
38
+ <xs:import namespace="http://www.orcid.org/ns/other-name"
39
+ schemaLocation="../record_3.0/other-name-3.0.xsd" />
40
+
41
+ <xs:element name="personal-details">
42
+ <xs:annotation>
43
+ <xs:documentation>Container for the biography and names of the researcher. These fields can only be edited by the researcher.
44
+ </xs:documentation>
45
+ </xs:annotation>
46
+ <xs:complexType>
47
+ <xs:sequence>
48
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
49
+ <xs:element name="name" type="personal-details:name"
50
+ minOccurs="0" maxOccurs="1" />
51
+ <xs:element ref="other-name:other-names" minOccurs="0"
52
+ maxOccurs="1" />
53
+ <xs:element name="biography" type="personal-details:biography"
54
+ minOccurs="0" maxOccurs="1" />
55
+ </xs:sequence>
56
+ <xs:attribute name="path" type="common:element-path" use="optional" />
57
+ </xs:complexType>
58
+ </xs:element>
59
+
60
+ <xs:element name="name">
61
+ <xs:annotation>
62
+ <xs:documentation>Container for the researcher's first and last name.
63
+ </xs:documentation>
64
+ </xs:annotation>
65
+ <xs:complexType>
66
+ <xs:complexContent>
67
+ <xs:extension base="personal-details:name" />
68
+ </xs:complexContent>
69
+ </xs:complexType>
70
+ </xs:element>
71
+
72
+ <xs:element name="credit-name">
73
+ <xs:annotation>
74
+ <xs:documentation>Container for the researcher's credit name.
75
+ </xs:documentation>
76
+ </xs:annotation>
77
+ <xs:complexType>
78
+ <xs:simpleContent>
79
+ <xs:extension base="personal-details:credit-name" />
80
+ </xs:simpleContent>
81
+ </xs:complexType>
82
+ </xs:element>
83
+
84
+ <xs:element name="biography">
85
+ <xs:annotation>
86
+ <xs:documentation>Container for the researcher's biography.
87
+ </xs:documentation>
88
+ </xs:annotation>
89
+ <xs:complexType>
90
+ <xs:complexContent>
91
+ <xs:extension base="personal-details:biography" />
92
+ </xs:complexContent>
93
+ </xs:complexType>
94
+ </xs:element>
95
+
96
+ <xs:complexType name="name">
97
+ <xs:annotation>
98
+ <xs:documentation>Container for the researcher's first and last name.
99
+ </xs:documentation>
100
+ </xs:annotation>
101
+ <xs:sequence>
102
+ <xs:element ref="common:created-date" minOccurs="0" maxOccurs="1" />
103
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
104
+ <xs:element name="given-names" minOccurs="0" maxOccurs="1">
105
+ <xs:annotation>
106
+ <xs:documentation>The given name(s) of the researcher or contributor.
107
+ </xs:documentation>
108
+ </xs:annotation>
109
+ <xs:complexType>
110
+ <xs:simpleContent>
111
+ <xs:extension base="common:string-150" />
112
+ </xs:simpleContent>
113
+ </xs:complexType>
114
+ </xs:element>
115
+ <xs:element name="family-name" minOccurs="0" maxOccurs="1">
116
+ <xs:annotation>
117
+ <xs:documentation>The family (last) name of the researcher. This element is optional, because some cultures only use given names.
118
+ </xs:documentation>
119
+ </xs:annotation>
120
+ <xs:complexType>
121
+ <xs:simpleContent>
122
+ <xs:extension base="common:string-150" />
123
+ </xs:simpleContent>
124
+ </xs:complexType>
125
+ </xs:element>
126
+ <xs:element name="credit-name" minOccurs="0" maxOccurs="1">
127
+ <xs:annotation>
128
+ <xs:documentation>The full name of the researcher as they prefer it to appear.
129
+ </xs:documentation>
130
+ </xs:annotation>
131
+ <xs:complexType>
132
+ <xs:simpleContent>
133
+ <xs:extension base="personal-details:credit-name" />
134
+ </xs:simpleContent>
135
+ </xs:complexType>
136
+ </xs:element>
137
+ </xs:sequence>
138
+ <xs:attribute name="visibility" type="common:visibility" use="optional"/>
139
+ <xs:attribute name="path" type="common:element-path" use="optional" />
140
+ </xs:complexType>
141
+
142
+ <xs:complexType name="biography">
143
+ <xs:annotation>
144
+ <xs:documentation>Description of the researcher's professional career.
145
+ </xs:documentation>
146
+ </xs:annotation>
147
+ <xs:sequence>
148
+ <xs:element ref="common:created-date" minOccurs="0" maxOccurs="1" />
149
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
150
+ <xs:element minOccurs="1" name="content" type="common:non-empty-string">
151
+ </xs:element>
152
+ </xs:sequence>
153
+ <xs:attribute name="visibility" type="common:visibility" use="optional"/>
154
+ <xs:attribute name="path" type="common:element-path" use="optional" />
155
+ </xs:complexType>
156
+
157
+ <xs:complexType name="credit-name">
158
+ <xs:simpleContent>
159
+ <xs:extension base="common:credit-name" />
160
+ </xs:simpleContent>
161
+ </xs:complexType>
162
+ </xs:schema>
@@ -0,0 +1,50 @@
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/preferences" xmlns:preferences="http://www.orcid.org/ns/preferences"
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
+ The top level element is orcid-message.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+ <xs:import namespace="http://www.orcid.org/ns/common"
36
+ schemaLocation="../common_3.0/common-3.0.xsd" />
37
+ <xs:element name="preferences">
38
+ <xs:complexType>
39
+ <xs:annotation>
40
+ <xs:documentation>Preferences set by the researcher or contributor.
41
+ (currently language preference)
42
+ </xs:documentation>
43
+ </xs:annotation>
44
+ <xs:sequence>
45
+ <xs:element name="locale" type="common:locale" />
46
+ </xs:sequence>
47
+ </xs:complexType>
48
+ </xs:element>
49
+
50
+ </xs:schema>