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
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Ruby client for ORCID API
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/orcid_client.svg)](https://badge.fury.io/rb/orcid_client)
4
- [![Build Status](https://travis-ci.org/datacite/orcid_client.svg?branch=master)](https://travis-ci.org/datacite/orcid_client)
4
+ ![Build Ruby Gem](https://github.com/datacite/orcid_client/workflows/Build%20Ruby%20Gem/badge.svg)
5
5
  [![Test Coverage](https://codeclimate.com/github/datacite/orcid_client/badges/coverage.svg)](https://codeclimate.com/github/datacite/orcid_client/coverage)
6
6
  [![Code Climate](https://codeclimate.com/github/datacite/orcid_client/badges/gpa.svg)](https://codeclimate.com/github/datacite/orcid_client)
7
7
 
@@ -11,14 +11,14 @@ Ruby gem for integrating Ruby applications with the ORCID API.
11
11
 
12
12
  The following functionality is supported:
13
13
 
14
- * get all works from an ORCID record, including those set to limited access
15
- * create work in an ORCID record
16
- * create notification for an ORCID record (needs special permissions)
14
+ - get all works from an ORCID record, including those set to limited access
15
+ - create work in an ORCID record
16
+ - create notification for an ORCID record (needs special permissions)
17
17
 
18
18
  ## Requirements
19
19
 
20
- * [ORCID membership](https://orcid.org/about/membership), needed to create, update or delete content via the ORCID API
21
- * valid access tokens for ORCID user accounts, collected and safely stored in your application using for example the [omniauth-orcid](https://github.com/datacite/omniauth-orcid) gem.
20
+ - [ORCID membership](https://orcid.org/about/membership), needed to create, update or delete content via the ORCID API
21
+ - valid access tokens for ORCID user accounts, collected and safely stored in your application using for example the [omniauth-orcid](https://github.com/datacite/omniauth-orcid) gem.
22
22
 
23
23
  ## Installation
24
24
 
@@ -2,7 +2,7 @@ require "uri"
2
2
 
3
3
  module OrcidClient
4
4
  module Api
5
- API_VERSION = "2.1"
5
+ API_VERSION = "3.0"
6
6
 
7
7
  def get_works(options={})
8
8
  return OpenStruct.new(body: { "errors" => [{ "title" => "ORCID access token missing" }] }) unless orcid_token.present?
@@ -29,6 +29,7 @@ module OrcidClient
29
29
  return OpenStruct.new(body: { "errors" => [{ "title" => "ORCID access token missing" }] }) unless orcid_token.present?
30
30
  return OpenStruct.new(body: { "errors" => [{ "title" => "Put code missing" }] }) unless put_code.present?
31
31
 
32
+ visibility = nil
32
33
  orcid_api_url = options[:sandbox] ? 'https://api.sandbox.orcid.org' : 'https://api.orcid.org'
33
34
 
34
35
  url = "#{orcid_api_url}/v#{API_VERSION}/#{orcid}/work/#{put_code}"
@@ -18,6 +18,6 @@ module OrcidClient
18
18
 
19
19
  # default values for some ENV variables
20
20
  ENV['ORCID_API_URL'] ||= "https://api.sandbox.orcid.org"
21
- ENV['API_URL'] ||= "https://api.datacite.org"
21
+ ENV['API_URL'] ||= "https://api.stage.datacite.org"
22
22
  end
23
23
  end
@@ -45,7 +45,7 @@ module OrcidClient
45
45
  { :'put-code' => put_code,
46
46
  :'visibility' => 'public',
47
47
  :'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
48
- :'xsi:schemaLocation' => 'http://www.orcid.org/ns/external-identifier ../person-external-identifier-2.1.xsd',
48
+ :'xsi:schemaLocation' => 'http://www.orcid.org/ns/external-identifier ../person-external-identifier-3.0.xsd',
49
49
  :'xmlns:common' => 'http://www.orcid.org/ns/common',
50
50
  :'xmlns:external-identifier' => 'http://www.orcid.org/ns/external-identifier' }.compact
51
51
  end
@@ -1,3 +1,3 @@
1
1
  module OrcidClient
2
- VERSION = "0.8"
2
+ VERSION = "0.9.5"
3
3
  end
@@ -17,14 +17,17 @@ module OrcidClient
17
17
 
18
18
  include Bolognese::Utils
19
19
 
20
- attr_reader :doi, :orcid, :schema, :orcid_token, :sandbox, :put_code, :validation_errors, :name_detector
20
+ attr_reader :doi, :orcid, :schema, :orcid_token, :sandbox, :put_code, :visibility, :validation_errors, :name_detector
21
+
22
+ attr_writer :visibility
21
23
 
22
24
  def initialize(doi:, orcid:, orcid_token:, **options)
23
25
  @doi = doi
24
26
  @orcid = orcid
25
27
  @orcid_token = orcid_token
26
- @sandbox = options.fetch(:sandbox, nil) || ENV['API_URL'] == "https://api.test.datacite.org"
28
+ @sandbox = options.fetch(:sandbox, nil) || ENV['API_URL'] == "https://api.stage.datacite.org"
27
29
  @put_code = options.fetch(:put_code, nil)
30
+ @visibility = options.fetch(:visibility, 'public')
28
31
  end
29
32
 
30
33
  SCHEMA = File.expand_path("../../../resources/record_#{API_VERSION}/work-#{API_VERSION}.xsd", __FILE__)
@@ -42,7 +45,7 @@ module OrcidClient
42
45
  Array.wrap(metadata.creators).map do |contributor|
43
46
  orcid = Array.wrap(contributor["nameIdentifiers"]).find { |c| c["nameIdentifierScheme"] == "ORCID" }.to_h.fetch("nameIdentifier", nil)
44
47
  credit_name = contributor["familyName"].present? ? [contributor["givenName"], contributor["familyName"]].join(" ") : contributor["name"]
45
-
48
+
46
49
  { orcid: orcid,
47
50
  credit_name: credit_name,
48
51
  role: nil }.compact
@@ -179,9 +182,9 @@ module OrcidClient
179
182
 
180
183
  def root_attributes
181
184
  { :'put-code' => put_code,
182
- :'visibility' => 'public',
185
+ :'visibility' => visibility,
183
186
  :'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
184
- :'xsi:schemaLocation' => 'http://www.orcid.org/ns/work ../work-2.1.xsd',
187
+ :'xsi:schemaLocation' => 'http://www.orcid.org/ns/work ../work-3.0.xsd',
185
188
  :'xmlns:common' => 'http://www.orcid.org/ns/common',
186
189
  :'xmlns:work' => 'http://www.orcid.org/ns/work' }.compact
187
190
  end
data/orcid_client.gemspec CHANGED
@@ -20,14 +20,13 @@ Gem::Specification.new do |s|
20
20
 
21
21
  # Declary dependencies here, rather than in the Gemfile
22
22
  s.add_dependency 'activesupport', '>= 4.2.5', '< 6'
23
- s.add_dependency 'bolognese', '~> 1.3', '>= 1.3.19'
23
+ s.add_dependency 'bolognese', '~> 1.3', '>= 1.9.8'
24
24
  s.add_dependency 'builder', '~> 3.2', '>= 3.2.2'
25
25
  s.add_dependency 'dotenv', '~> 2.1', '>= 2.1.1'
26
26
  s.add_dependency 'maremma', '>= 4.4'
27
27
  s.add_dependency 'namae', '~> 1.0.1'
28
- s.add_dependency 'nokogiri', '~> 1.10.4'
29
- s.add_development_dependency 'bundler', '~> 1.0'
30
- s.add_development_dependency 'codeclimate-test-reporter', '~> 1.0.0'
28
+ s.add_dependency 'nokogiri', '>= 1.10.4', '< 1.12.0'
29
+ s.add_development_dependency "bundler", ">= 2.2.10"
31
30
  s.add_development_dependency 'rack-test', '~> 0'
32
31
  s.add_development_dependency 'rake'
33
32
  s.add_development_dependency 'rspec', '~> 3.4'
data/resources/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ## ORCID Message (XSD) Readme
1
+ ## ORCID Message (XSD) Readme
2
2
 
3
3
  **Contents**
4
4
 
@@ -14,51 +14,55 @@
14
14
 
15
15
  # ORCID XSD information
16
16
 
17
- ##Active XSD versions and base URLs
17
+ ## Active XSD versions and base URLs
18
18
 
19
- #### XSD release version
19
+ ### Current Version
20
+ **[ORCID Message 3.0](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_3.0/README.md)**
20
21
 
21
- * **[ORCID Message 2.0](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0)** - [Documentation](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/record_2.0/README.md), [Change log from 1.2](https://members.orcid.org/api/news/xsd-20-update)
22
22
  * API Base URLs - PRODUCTION
23
- * Public API: https://pub.orcid.org/v2.0/
24
- * Member API: https://api.orcid.org/v2.0/
23
+ * Public API: https://pub.orcid.org/v3.0/
24
+ * Member API: https://api.orcid.org/v3.0/
25
25
  * API Base URLs - SANDBOX
26
- * Public API: https://pub.sandbox.orcid.org/v2.0/
27
- * Member API: https://api.sandbox.orcid.org/v2.0/
26
+ * Public API: https://pub.sandbox.orcid.org/v3.0/
27
+ * Member API: https://api.sandbox.orcid.org/v3.0/
28
+
29
+ #### XSD old versions
30
+
31
+ These versions are still supported, but integrations should start planning to move to version 3.0
32
+
33
+ * **[ORCID Message 2.1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.1)** - [Documentation](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.1/README.md)
34
+
35
+ * **[ORCID Message 2.0](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0)** - [Documentation](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0/README.md), [Change log from 1.2](https://members.orcid.org/api/news/xsd-20-update)
28
36
 
29
37
  #### XSD release candidate(s)
30
38
 
31
- * **[ORCID Message 2.0_rc4](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc4)** - _Contains: Minor corrections and updates_ <br/>
32
- * **[ORCID Message 2.0_rc3](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc3)** - _Contains: bulk works, activities section endpoints_ <br/>
33
- * **[ORCID Message 2.0_rc2](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc2)** - _Contains: Person section, migrates all identifiers to external-identifier_ <br/>
34
- * **[ORCID Message 2.0_rc1](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc1)** - _Contains: Peer-review, new format XSD for activities_ <br/><br/>
35
- * API Base URLs - PRODUCTION (replace 'X' in the URL with the rc version)
36
- * Public API: https://pub.orcid.org/v2.0_rcX/
37
- * Member API: https://api.orcid.org/v2.0_rcX/
38
- * API Base URLs - SANDBOX
39
- * Public API: https://pub.sandbox.orcid.org/v2.0_rcX/
40
- * Member API: https://api.sandbox.orcid.org/v2.0_rcX/
39
+ If using these release candidates please migrate to the current stable version 3.0
40
+
41
+ * **[ORCID Message 3.0_rc1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_3.0_rc1)** -
42
+
43
+ * **[ORCID Message 3.0_rc2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_3.0_rc2)** -
44
+
41
45
 
42
46
  #### XSD deprecated versions
43
47
 
44
- * **[ORCID Message 1.2](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2.xsd)**
45
- * API Base URLs - PRODUCTION
46
- * Public API: https://pub.orcid.org/v1.2/
47
- * Member API: https://api.orcid.org/v1.2/
48
- * API Base URLs - SANDBOX
49
- * Public API: https://pub.sandbox.orcid.org/v1.2/
50
- * Member API: https://api.sandbox.orcid.org/v1.2/
48
+ * **[ORCID Message 2.0_rc4](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc4)** - _Contains: Minor corrections and updates_ <br/>
49
+ * **[ORCID Message 2.0_rc3](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc3)** - _Contains: bulk works, activities section endpoints_ <br/>
50
+ * **[ORCID Message 2.0_rc2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc2)** - _Contains: Person section, migrates all identifiers to external-identifier_ <br/>
51
+ * **[ORCID Message 2.0_rc1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc1)** - _Contains: Peer-review, new format XSD for activities_ <br/><br/>
52
+
53
+ * **[ORCID Message 1.2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2.xsd)**
51
54
 
52
55
 
53
56
  #### Sunset versions (unavailable, unsupported, should not be used)
54
57
 
55
58
  * **Version 1.0.x (includes versions 1.0.1 through 1.0.23)** <br>_Sunset Date: March 1, 2014_
56
- * **[ORCID Message 1.1](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.1.xsd)** <br>_Sunset Date: April 1, 2015_
59
+ * **[ORCID Message 1.1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.1.xsd)** <br>_Sunset Date: April 1, 2015_
60
+ * **Version 1.2.x ** <br>_Sunset Date: Aug 1, 2018_
57
61
 
58
62
  _NOTE:<br />API calls for member to ORCID iD holder authorization using OAuth are not affected by XSD versions. Regardless of the XSD version used, the OAuth endpoints are:_
59
63
 
60
- * _[http://orcid.org/oauth/authorize](http://support.orcid.org/knowledgebase/articles/120107)_
61
- * _[https://orcid.org/oauth/token](http://support.orcid.org/knowledgebase/articles/119985)_
64
+ * _[http://orcid.org/oauth/authorize](https://members.orcid.org/api/oauth/get-oauthauthorize)_
65
+ * _[https://orcid.org/oauth/token](https://members.orcid.org/api/oauth/3legged-oauth)_
62
66
 
63
67
 
64
68
  # About XSD Updates and Versioning
@@ -76,7 +80,7 @@ The XSD version you should use depends on what you are trying to do. Most develo
76
80
 
77
81
  ## Staying informed
78
82
 
79
- You can stay informed of updates to the XSD and API by subscribing to our [API Users Group](https://groups.google.com/forum/?fromgroups#!forum/orcid-api-users) mailing list and forum.
83
+ You can stay informed of updates to the XSD and API by subscribing to our [API Users Group](https://groups.google.com/forum/?fromgroups#!forum/orcid-api-users) mailing list and forum.
80
84
 
81
85
  ## Using XSD versions
82
86
 
@@ -84,11 +88,11 @@ You can stay informed of updates to the XSD and API by subscribing to our [API U
84
88
 
85
89
  The deprecated version(s) of the XSD are former versions of the XSD. If you are using a deprecated version, you should be planning a migration to move to a release version. Other things of note about deprecated versions:
86
90
 
87
- * An XSD that has changed to deprecated status will not be removed immediately, though we are actively encouraging all developers to move to the current release version.
91
+ * An XSD that has changed to deprecated status will not be removed immediately, though we are actively encouraging all developers to move to the current release version.
88
92
  * Developers on deprecated versions should refer to the migration notes to assist in moving to the latest release version.
89
93
  * Future functionality will not be supported in deprecated versions.
90
94
  * Future versions may not be backward compatible with deprecated versions.
91
- * Deprecated versions will have a sunset date”, after which they will no longer be supported. Developers experiencing problems with deprecated versions will be directed to move to the release version.
95
+ * Deprecated versions will have a "sunset date", after which they will no longer be supported. Developers experiencing problems with deprecated versions will be directed to move to the release version.
92
96
 
93
97
  ### <a name="releaseVersion"></a>Release version(s)
94
98
 
@@ -102,7 +106,7 @@ Release versions of the XSD are fully documented, tested, supported and encourag
102
106
 
103
107
  Release candidate versions of the XSD contain elements and data structures for future functionality, potential changes and other enhancements. Of note about release candidates:
104
108
 
105
- * The version number of release candidates will contain rc to indicate that they are release candidates (for example, version 1.2_rc1). The first two numbers indicate the target release version for the candidate. For example, the changes and enhancements in version 1.2_rc1 are being considered for inclusion with release version 1.2.
109
+ * The version number of release candidates will contain "rc" to indicate that they are release candidates (for example, version 1.2_rc1). The first two numbers indicate the target release version for the candidate. For example, the changes and enhancements in version 1.2_rc1 are being considered for inclusion with release version 1.2.
106
110
  * Release candidates are generally unsupported, and have limited documentation.
107
111
  * Elements and data structure within a release candidate XSD could change at any time based on development needs and feedback from early adopters.
108
112
  * We welcome feedback from any developers working with current release candidates.
@@ -112,20 +116,21 @@ Release candidate versions of the XSD contain elements and data structures for f
112
116
 
113
117
  | Version/link | Release Date | Sunset date | Notes | Who should be using this version |
114
118
  | ------------ | ------------ | ----------- | ----- | -------------------------------- |
115
- | [ORCID XSD 2.0](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0) | Feb 13, 2017 | | **[Release version](#releaseVersion)**<br><br>CURRENT SUPPORTED VERSION<br/>[Change log from 1.2](https://members.orcid.org/api/news/xsd-20-update) |This is the preferred version. All developers should be using or migrating to this version. [Documentation](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/record_2.0/README.md)|
116
- | [ORCID XSD 2.0_rc4](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc4) | Jan 24, 2017 | | **[Release candidate version](#releaseCandidate)**<br><br/>_minor fixes and corrections_ | |
117
- | [ORCID XSD 2.0_rc3](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc3) | Nov 18, 2016 | | **[Release candidate version](#releaseCandidate)**<br><br/>_adds bulk works_ | |
118
- | [ORCID XSD 2.0_rc2](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc2) | Jul 20, 2016 | | **[Release candidate version](#releaseCandidate)**<br><br/>_adds person section_ | |
119
- | [ORCID XSD 2.0_rc1](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources/record_2.0_rc1) | Jul 01, 2015 | | **[Release candidate version](#releaseCandidate)**<br><br/>_adds peer-review section, reformats XSD for activities_ | |
120
- | [ORCID XSD 1.2](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2.xsd) | Jan 12, 2015 | Late 2017 | **[Deprecated version](#deprecatedVersion)**<br/><br/> | All developers on this version should migrate to version 2.0 |
121
- | XSD 1.2_rcX | throughout 2014 | Apr 1, 2015 | **[Deprecated versions](#deprecatedVersion)**<br/><br/>[XSD 1.2_rc1](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc1.xsd): _adds elements for education or employment affiliations_<br/>[XSD 1.2_rc2](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc2.xsd): _updates the options for the creation-method field, and adds elements needed for funding_<br/>[XSD 1.2_rc3](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc3.xsd): _restricts the valid language codes to those supported by ORCID, and removes patents as a separate element (included under the works element)_<br/>[XSD 1.2_rc4](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc4.xsd): _provides more details about existing elements, email verification info, organization details that create an ORCID record, and funding agency details for funding element_<br/>[XSD 1.2_rc5](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc5.xsd): _clarifies elements for data provenance - the data source, creation date and modification date; work external IDs are required_<br/>[XSD 1.2_rc6](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.2_rc6.xsd): _adds more work types_ | These versions were sunset as of Apr 1, 2015. They are no longer available and should not be used. |
122
- | [ORCID XSD 1.1](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/orcid-message-1.1.xsd) | Nov 25, 2013 | Apr 1, 2015 | **[Deprecated version](#deprecatedVersion)**<br><br> | This version was sunset as of Apr 1, 2015. It is no longer available and should not be used. |
123
- | [ORCID XSD 1.0.x](https://github.com/ORCID/ORCID-Source/tree/master/orcid-model/src/main/resources) | various | Mar 1, 2014 | **Sunset version** | These versions were sunset as of March 1, 2014. They are no longer available and should not be used. _(Versions 1.0.1 - 1.0.23)_ |
119
+ | [ORCID XSD 2.1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.1) | Nov 17, 2017 | | **[Release version](#releaseVersion)**<br><br>CURRENT SUPPORTED VERSION<br/>*ORCID iDs are expressed in the canonical form with the https prefix* |This is a preferred version. All developers should be using or migrating to this version or 2.0. [Documentation](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.1/README.md)|
120
+ | [ORCID XSD 2.0](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0) | Feb 13, 2017 | | **[Release version](#releaseVersion)**<br><br>CURRENT SUPPORTED VERSION<br/>[Change log from 1.2](https://members.orcid.org/api/news/xsd-20-update) |This is a preferred version. All developers should be using or migrating to this version or 2.1. [Documentation](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0/README.md)|
121
+ | [ORCID XSD 2.0_rc4](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc4) | Jan 24, 2017 | Spring 2018 | **[Release candidate version](#releaseCandidate)**<br><br/>_minor fixes and corrections_ | |
122
+ | [ORCID XSD 2.0_rc3](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc3) | Nov 18, 2016 | Spring 2018 | **[Release candidate version](#releaseCandidate)**<br><br/>_adds bulk works_ | |
123
+ | [ORCID XSD 2.0_rc2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc2) | Jul 20, 2016 | Spring 2018 | **[Release candidate version](#releaseCandidate)**<br><br/>_adds person section_ | |
124
+ | [ORCID XSD 2.0_rc1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.0_rc1) | Jul 01, 2015 | Spring 2018 | **[Release candidate version](#releaseCandidate)**<br><br/>_adds peer-review section, reformats XSD for activities_ | |
125
+ | [ORCID XSD 1.2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2.xsd) | Jan 12, 2015 | August 1st 2018 | **[Deprecated version](#deprecatedVersion)**<br/><br/> | All developers on this version should migrate to version 2.0 |
126
+ | XSD 1.2_rcX | throughout 2014 | Apr 1, 2015 | **[Deprecated versions](#deprecatedVersion)**<br/><br/>[XSD 1.2_rc1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc1.xsd): _adds elements for education or employment affiliations_<br/>[XSD 1.2_rc2](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc2.xsd): _updates the options for the creation-method field, and adds elements needed for funding_<br/>[XSD 1.2_rc3](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc3.xsd): _restricts the valid language codes to those supported by ORCID, and removes patents as a separate element (included under the works element)_<br/>[XSD 1.2_rc4](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc4.xsd): _provides more details about existing elements, email verification info, organization details that create an ORCID record, and funding agency details for funding element_<br/>[XSD 1.2_rc5](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc5.xsd): _clarifies elements for data provenance - the data source, creation date and modification date; work external IDs are required_<br/>[XSD 1.2_rc6](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.2_rc6.xsd): _adds more work types_ | These versions were sunset as of Apr 1, 2015. They are no longer available and should not be used. |
127
+ | [ORCID XSD 1.1](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/orcid-message-1.1.xsd) | Nov 25, 2013 | Apr 1, 2015 | **[Deprecated version](#deprecatedVersion)**<br><br> | This version was sunset as of Apr 1, 2015. It is no longer available and should not be used. |
128
+ | [ORCID XSD 1.0.x](https://github.com/ORCID/orcid-model/blob/master/src/main/resources) | various | Mar 1, 2014 | **Sunset version** | These versions were sunset as of March 1, 2014. They are no longer available and should not be used. _(Versions 1.0.1 - 1.0.23)_ |
124
129
 
125
130
  # Getting help
126
131
 
127
- Technical documentation is included with the read-me file for each version. [Current release documentation](https://github.com/ORCID/ORCID-Source/blob/master/orcid-model/src/main/resources/record_2.0/README.md)
132
+ Technical documentation is included with the read-me file for each version. [Current release documentation](https://github.com/ORCID/orcid-model/blob/master/src/main/resources/record_2.1/README.md)
128
133
 
129
- The [ORCID Member Support Site](https://members.orcid.org) has additional documentation, tutorials and guides, as well as contact for our support team.
134
+ The [ORCID Member Support Site](https://members.orcid.org) has additional documentation, tutorials and guides, as well as contact for our support team.
130
135
 
131
136
  We also invite you to submit questions to the [API Users Group](https://groups.google.com/forum/?fromgroups#!forum/orcid-api-users) mailing list and forum.