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,185 @@
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/history" xmlns:history="http://www.orcid.org/ns/history"
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
+
36
+ <xs:import namespace="http://www.orcid.org/ns/common"
37
+ schemaLocation="../common_3.0/common-3.0.xsd" />
38
+
39
+ <xs:element name="history">
40
+ <xs:complexType>
41
+ <xs:annotation>
42
+ <xs:documentation>The history of the researcher's ORCID record
43
+ </xs:documentation>
44
+ </xs:annotation>
45
+ <xs:sequence>
46
+ <xs:element name="creation-method" type="history:creation-method"
47
+ minOccurs="0" maxOccurs="1">
48
+ <xs:annotation>
49
+ <xs:documentation>The method used to create the ORCID Record
50
+ * API method - Institution created the record on behalf of the
51
+ individual
52
+ * Direct/website methods - Individual registered directly at
53
+ orcid.org
54
+ * Member-referred method - Individual registered as
55
+ part of the OAuth workflow
56
+ </xs:documentation>
57
+ </xs:annotation>
58
+ </xs:element>
59
+ <xs:element name="completion-date" type="history:completion-date"
60
+ minOccurs="0" maxOccurs="1" />
61
+ <xs:element name="submission-date" type="history:submission-date"
62
+ minOccurs="0" maxOccurs="1" />
63
+ <xs:element ref="common:last-modified-date"
64
+ minOccurs="0" maxOccurs="1" />
65
+ <xs:element name="claimed" type="history:claimed" minOccurs="0"
66
+ maxOccurs="1" />
67
+ <xs:element ref="common:source" minOccurs="0" maxOccurs="1" />
68
+ <xs:element name="deactivation-date" type="history:deactivation-date"
69
+ minOccurs="0" maxOccurs="1" />
70
+ <xs:element name="verified-email" type="xs:boolean"
71
+ minOccurs="1" maxOccurs="1">
72
+ <xs:annotation>
73
+ <xs:documentation>True if the user has a verified email
74
+ </xs:documentation>
75
+ </xs:annotation>
76
+ </xs:element>
77
+ <xs:element name="verified-primary-email" type="xs:boolean"
78
+ minOccurs="1" maxOccurs="1">
79
+ <xs:annotation>
80
+ <xs:documentation>True if the user's current primary email is verified
81
+ </xs:documentation>
82
+ </xs:annotation>
83
+ </xs:element>
84
+ </xs:sequence>
85
+ <xs:attribute name="visibility" type="common:visibility" />
86
+ </xs:complexType>
87
+ </xs:element>
88
+
89
+ <xs:complexType name="completion-date">
90
+ <xs:annotation>
91
+ <xs:documentation>Only returned on records with a creation method of API, this date is when the user took control of the record and set a password
92
+ </xs:documentation>
93
+ </xs:annotation>
94
+ <xs:simpleContent>
95
+ <xs:extension base="xs:dateTime" />
96
+ </xs:simpleContent>
97
+ </xs:complexType>
98
+
99
+ <xs:complexType name="submission-date">
100
+ <xs:annotation>
101
+ <xs:documentation>The date time when the ORCID record was first created.
102
+ </xs:documentation>
103
+ </xs:annotation>
104
+ <xs:simpleContent>
105
+ <xs:extension base="xs:dateTime" />
106
+ </xs:simpleContent>
107
+ </xs:complexType>
108
+
109
+ <xs:complexType name="claimed">
110
+ <xs:annotation>
111
+ <xs:documentation>True for all records created via direct/website or member-referred.
112
+ If the record was created via the API this will be set to True when the user takes control of the record and sets a password.
113
+ </xs:documentation>
114
+ </xs:annotation>
115
+ <xs:simpleContent>
116
+ <xs:extension base="xs:boolean" />
117
+ </xs:simpleContent>
118
+ </xs:complexType>
119
+
120
+ <xs:complexType name="deactivation-date">
121
+ <xs:annotation>
122
+ <xs:documentation>The date and time when the ORCID Record was
123
+ deactivated. (If the account is active, this field will be NULL.)
124
+ </xs:documentation>
125
+ </xs:annotation>
126
+ <xs:simpleContent>
127
+ <xs:extension base="xs:dateTime" />
128
+ </xs:simpleContent>
129
+ </xs:complexType>
130
+
131
+ <xs:complexType mixed="true" name="source-reference">
132
+ <xs:annotation>
133
+ <xs:documentation>(UNUSED) The identifier or other reference
134
+ information for the researcher or contributor in the source client
135
+ application (Member Organization's) system.
136
+ </xs:documentation>
137
+ </xs:annotation>
138
+ </xs:complexType>
139
+
140
+ <xs:complexType name="source-date">
141
+ <xs:annotation>
142
+ <xs:documentation>The date time that the source client application
143
+ (Member organization system) or individual user created/attempted to
144
+ create the item.
145
+ </xs:documentation>
146
+ </xs:annotation>
147
+ <xs:simpleContent>
148
+ <xs:extension base="xs:dateTime" />
149
+ </xs:simpleContent>
150
+ </xs:complexType>
151
+
152
+ <xs:simpleType name="creation-method">
153
+ <xs:annotation>
154
+ <xs:documentation>Indicates how the ORCID record was created.
155
+ </xs:documentation>
156
+ </xs:annotation>
157
+ <xs:restriction base="common:non-empty-string">
158
+ <xs:enumeration value="API">
159
+ <xs:annotation>
160
+ <xs:documentation>The ORCID Record was created using the ORCID Member API.
161
+ </xs:documentation>
162
+ </xs:annotation>
163
+ </xs:enumeration>
164
+ <xs:enumeration value="Direct">
165
+ <xs:annotation>
166
+ <xs:documentation>The user registered on the ORCID website.
167
+ </xs:documentation>
168
+ </xs:annotation>
169
+ </xs:enumeration>
170
+ <xs:enumeration value="Member-referred">
171
+ <xs:annotation>
172
+ <xs:documentation>The user registered as part of the OAuth process.
173
+ </xs:documentation>
174
+ </xs:annotation>
175
+ </xs:enumeration>
176
+ <xs:enumeration value="website">
177
+ <xs:annotation>
178
+ <xs:documentation>DEPRECATED use Direct instead.
179
+ </xs:documentation>
180
+ </xs:annotation>
181
+ </xs:enumeration>
182
+ </xs:restriction>
183
+ </xs:simpleType>
184
+
185
+ </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/invited-position" xmlns:invited-position="http://www.orcid.org/ns/invited-position"
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="invited-position" type="common:affiliation">
39
+ <xs:annotation>
40
+ <xs:documentation>An invited position the researcher served.
41
+ Invited Position is defined as an invited non-employment affiliation. This includes formal acknowledgements of an individual’s academic efforts through honorary titles and/or positions which require no specific service. May be paid or unpaid.
42
+ * The put-code attribute is returned when reading this element.
43
+ When updating the item, the put-code attribute must be included to indicate the specific item to be updated.
44
+ </xs:documentation>
45
+ </xs:annotation>
46
+ </xs:element>
47
+
48
+ <xs:element name="invited-position-summary" type="common:affiliation-summary" />
49
+
50
+ </xs:schema>
@@ -0,0 +1,72 @@
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/keyword" xmlns:keyword="http://www.orcid.org/ns/keyword"
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="keyword" uri="http://www.orcid.org/ns/keyword" />
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="keywords">
39
+ <xs:complexType>
40
+ <xs:annotation>
41
+ <xs:documentation>Keyworks container</xs:documentation>
42
+ </xs:annotation>
43
+ <xs:sequence>
44
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
45
+ <xs:element name="keyword" type="keyword:keyword" minOccurs="0"
46
+ maxOccurs="unbounded" />
47
+ </xs:sequence>
48
+ <xs:attribute name="path" type="common:element-path" use="optional" />
49
+ </xs:complexType>
50
+ </xs:element>
51
+
52
+ <xs:element name="keyword">
53
+ <xs:annotation>
54
+ <xs:documentation>Keyword</xs:documentation>
55
+ </xs:annotation>
56
+ <xs:complexType>
57
+ <xs:complexContent>
58
+ <xs:extension base="keyword:keyword" />
59
+ </xs:complexContent>
60
+ </xs:complexType>
61
+ </xs:element>
62
+
63
+ <xs:complexType name="keyword">
64
+ <xs:complexContent>
65
+ <xs:extension base="common:element-summary">
66
+ <xs:sequence>
67
+ <xs:element minOccurs="1" name="content" type="common:string-255" />
68
+ </xs:sequence>
69
+ </xs:extension>
70
+ </xs:complexContent>
71
+ </xs:complexType>
72
+ </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/membership" xmlns:membership="http://www.orcid.org/ns/membership"
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="membership" type="common:affiliation">
39
+ <xs:annotation>
40
+ <xs:documentation>A membership associated with the researcher.
41
+ Membership is defined as paid or gratis membership of a society or association (i.e. does not include honorary memberships and fellowships as defined under Invited Position and Distinctions)
42
+ * The put-code attribute is returned when reading this element.
43
+ When updating the item, the put-code attribute must be included to indicate the specific item to be updated.
44
+
45
+ </xs:documentation>
46
+ </xs:annotation>
47
+ </xs:element>
48
+
49
+ <xs:element name="membership-summary" type="common:affiliation-summary" />
50
+
51
+ </xs:schema>
@@ -0,0 +1,78 @@
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/other-name" xmlns:other-name="http://www.orcid.org/ns/other-name"
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="other-name" uri="http://www.orcid.org/ns/other-name" />
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="other-names">
38
+ <xs:complexType>
39
+ <xs:annotation>
40
+ <xs:documentation>Container for other names.
41
+ </xs:documentation>
42
+ </xs:annotation>
43
+ <xs:sequence>
44
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
45
+ <xs:element name="other-name" type="other-name:other-name"
46
+ minOccurs="0" maxOccurs="unbounded" />
47
+ </xs:sequence>
48
+ <xs:attribute name="path" type="common:element-path" use="optional" />
49
+ </xs:complexType>
50
+ </xs:element>
51
+
52
+ <xs:element name="other-name">
53
+ <xs:annotation>
54
+ <xs:documentation>Other name(s) that the researcher is or was known by. Max length is 255 characters
55
+ </xs:documentation>
56
+ </xs:annotation>
57
+ <xs:complexType>
58
+ <xs:complexContent>
59
+ <xs:extension base="other-name:other-name"></xs:extension>
60
+ </xs:complexContent>
61
+ </xs:complexType>
62
+ </xs:element>
63
+
64
+ <xs:complexType name="other-name">
65
+ <xs:complexContent>
66
+ <xs:extension base="common:element-summary">
67
+ <xs:sequence>
68
+ <xs:element minOccurs="1" name="content" type="common:string-255">
69
+ <xs:annotation>
70
+ <xs:documentation>A name for the researcher.
71
+ </xs:documentation>
72
+ </xs:annotation>
73
+ </xs:element>
74
+ </xs:sequence>
75
+ </xs:extension>
76
+ </xs:complexContent>
77
+ </xs:complexType>
78
+ </xs:schema>