orcid_client 0.3.3 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.env.example +1 -1
- data/Gemfile.lock +85 -81
- data/lib/orcid_client/api.rb +1 -1
- data/lib/orcid_client/base.rb +3 -2
- data/lib/orcid_client/external_identifier.rb +1 -1
- data/lib/orcid_client/notification.rb +1 -1
- data/lib/orcid_client/version.rb +1 -1
- data/lib/orcid_client/work.rb +6 -5
- data/orcid_client.gemspec +3 -3
- data/resources/README.md +131 -0
- data/resources/{common_2.0/common-2.0.xsd → common_2.1/common-2.1.xsd} +2 -2
- data/resources/{common_2.0/samples/common-2.0.xml → common_2.1/samples/common-2.1.xml} +2 -2
- data/resources/{notification_2.0 → notification_2.1}/README.md +10 -10
- data/resources/{notification_2.0/notification-custom-2.0.xsd → notification_2.1/notification-custom-2.1.xsd} +1 -1
- data/resources/{notification_2.0/notification-permission-2.0.xsd → notification_2.1/notification-permission-2.1.xsd} +3 -3
- data/resources/{notification_2.0/samples/notification-custom-2.0.xml → notification_2.1/samples/notification-custom-2.1.xml} +2 -2
- data/resources/{notification_2.0/samples/notification-permission-2.0.xml → notification_2.1/samples/notification-permission-2.1.xml} +2 -2
- data/resources/orcid-error-1.0.xsd +69 -0
- data/resources/{record_2.0 → record_2.1}/README.md +154 -155
- data/resources/{record_2.0/activities-2.0.xsd → record_2.1/activities-2.1.xsd} +6 -6
- data/resources/{record_2.0/address-2.0.xsd → record_2.1/address-2.1.xsd} +1 -1
- data/resources/{record_2.0/bulk-2.0.xsd → record_2.1/bulk-2.1.xsd} +2 -2
- data/resources/{record_2.0/education-2.0.xsd → record_2.1/education-2.1.xsd} +1 -1
- data/resources/{record_2.0/email-2.0.xsd → record_2.1/email-2.1.xsd} +1 -1
- data/resources/{record_2.0/employment-2.0.xsd → record_2.1/employment-2.1.xsd} +1 -1
- data/resources/{record_2.0/error-2.0.xsd → record_2.1/error-2.1.xsd} +0 -0
- data/resources/{record_2.0/funding-2.0.xsd → record_2.1/funding-2.1.xsd} +1 -1
- data/resources/{record_2.0/history-2.0.xsd → record_2.1/history-2.1.xsd} +1 -1
- data/resources/{record_2.0/keyword-2.0.xsd → record_2.1/keyword-2.1.xsd} +1 -1
- data/resources/{record_2.0/other-name-2.0.xsd → record_2.1/other-name-2.1.xsd} +1 -1
- data/resources/{record_2.0/peer-review-2.0.xsd → record_2.1/peer-review-2.1.xsd} +2 -2
- data/resources/{record_2.0/peer-review-guide-v2.0.md → record_2.1/peer-review-guide-v2.1.md} +17 -17
- data/resources/{record_2.0/person-2.0.xsd → record_2.1/person-2.1.xsd} +9 -9
- data/resources/{record_2.0/person-external-identifier-2.0.xsd → record_2.1/person-external-identifier-2.1.xsd} +1 -1
- data/resources/{record_2.0/personal-details-2.0.xsd → record_2.1/personal-details-2.1.xsd} +3 -3
- data/resources/{record_2.0/preferences-2.0.xsd → record_2.1/preferences-2.1.xsd} +1 -1
- data/resources/{record_2.0/record-2.0.xsd → record_2.1/record-2.1.xsd} +11 -11
- data/resources/{record_2.0/researcher-url-2.0.xsd → record_2.1/researcher-url-2.1.xsd} +1 -1
- data/resources/{record_2.0/samples/read_samples/activities-2.0.xml → record_2.1/samples/read_samples/activities-2.1.xml} +12 -12
- data/resources/{record_2.0/samples/read_samples/address-2.0.xml → record_2.1/samples/read_samples/address-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/addresses-2.0.xml → record_2.1/samples/read_samples/addresses-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/biography-2.0.xml → record_2.1/samples/read_samples/biography-2.1.xml} +2 -2
- data/resources/{record_2.0 → record_2.1}/samples/read_samples/bulk-work-error.xml +2 -2
- data/resources/{record_2.0/samples/read_samples/credit-name-2.0.xml → record_2.1/samples/read_samples/credit-name-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/read_samples/education-2.0.xml → record_2.1/samples/read_samples/education-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/education-full-2.0.xml → record_2.1/samples/read_samples/education-full-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/educations-2.0.xml → record_2.1/samples/read_samples/educations-2.1.xml} +4 -4
- data/resources/{record_2.0/samples/read_samples/email-2.0.xml → record_2.1/samples/read_samples/email-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/emails-2.0.xml → record_2.1/samples/read_samples/emails-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/employment-2.0.xml → record_2.1/samples/read_samples/employment-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/employment-full-2.0.xml → record_2.1/samples/read_samples/employment-full-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/employments-2.0.xml → record_2.1/samples/read_samples/employments-2.1.xml} +4 -4
- data/resources/{record_2.0/samples/read_samples/error-2.0.xml → record_2.1/samples/read_samples/error-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/read_samples/external-identifier-2.0.xml → record_2.1/samples/read_samples/external-identifier-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/external-identifiers-2.0.xml → record_2.1/samples/read_samples/external-identifiers-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/funding-2.0.xml → record_2.1/samples/read_samples/funding-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/funding-full-2.0.xml → record_2.1/samples/read_samples/funding-full-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/fundings-2.0.xml → record_2.1/samples/read_samples/fundings-2.1.xml} +4 -4
- data/resources/{record_2.0/samples/read_samples/history-2.0.xml → record_2.1/samples/read_samples/history-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/keyword-2.0.xml → record_2.1/samples/read_samples/keyword-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/keywords-2.0.xml → record_2.1/samples/read_samples/keywords-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/name-2.0.xml → record_2.1/samples/read_samples/name-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/read_samples/other-name-2.0.xml → record_2.1/samples/read_samples/other-name-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/other-names-2.0.xml → record_2.1/samples/read_samples/other-names-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/peer-review-2.0.xml → record_2.1/samples/read_samples/peer-review-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/peer-review-full-2.0.xml → record_2.1/samples/read_samples/peer-review-full-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/peer-reviews-2.0.xml → record_2.1/samples/read_samples/peer-reviews-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/person-2.0.xml → record_2.1/samples/read_samples/person-2.1.xml} +7 -7
- data/resources/{record_2.0/samples/read_samples/personal-details-2.0.xml → record_2.1/samples/read_samples/personal-details-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/preferences-2.0.xml → record_2.1/samples/read_samples/preferences-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/read_samples/record-2.0.xml → record_2.1/samples/read_samples/record-2.1.xml} +14 -14
- data/resources/{record_2.0/samples/read_samples/researcher-url-2.0.xml → record_2.1/samples/read_samples/researcher-url-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/researcher-urls-2.0.xml → record_2.1/samples/read_samples/researcher-urls-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/search-2.0.xml → record_2.1/samples/read_samples/search-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/read_samples/work-2.0.xml → record_2.1/samples/read_samples/work-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/work-full-2.0.xml → record_2.1/samples/read_samples/work-full-2.1.xml} +3 -3
- data/resources/{record_2.0/samples/read_samples/works-2.0.xml → record_2.1/samples/read_samples/works-2.1.xml} +4 -4
- data/resources/{record_2.0/samples/write_sample/address-2.0.xml → record_2.1/samples/write_samples/address-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/bulk-work-2.0.json → record_2.1/samples/write_samples/bulk-work-2.1.json} +0 -0
- data/resources/{record_2.0/samples/write_sample/bulk-work-2.0.xml → record_2.1/samples/write_samples/bulk-work-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/education-2.0.xml → record_2.1/samples/write_samples/education-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/employment-2.0.xml → record_2.1/samples/write_samples/employment-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/external-identifier-2.0.xml → record_2.1/samples/write_samples/external-identifier-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/funding-2.0.xml → record_2.1/samples/write_samples/funding-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/keyword-2.0.xml → record_2.1/samples/write_samples/keyword-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/other-name-2.0.xml → record_2.1/samples/write_samples/other-name-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/peer-review-full-2.0.xml → record_2.1/samples/write_samples/peer-review-full-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/peer-review-simple-2.0.xml → record_2.1/samples/write_samples/peer-review-simple-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/researcher-url-2.0.xml → record_2.1/samples/write_samples/researcher-url-2.1.xml} +1 -1
- data/resources/{record_2.0/samples/write_sample/work-full-2.0.xml → record_2.1/samples/write_samples/work-full-2.1.xml} +2 -2
- data/resources/{record_2.0/samples/write_sample/work-simple-2.0.xml → record_2.1/samples/write_samples/work-simple-2.1.xml} +1 -1
- data/resources/{record_2.0/search-2.0.xsd → record_2.1/search-2.1.xsd} +1 -1
- data/resources/{record_2.0/work-2.0.xsd → record_2.1/work-2.1.xsd} +2 -2
- data/resources/xml.xsd +286 -0
- data/spec/api_spec.rb +9 -9
- data/spec/author_spec.rb +1 -1
- data/spec/external_identifier_spec.rb +2 -2
- data/spec/fixtures/external_identifier.xml +1 -1
- data/spec/fixtures/vcr_cassettes/OrcidClient/external_identifier/delete/should_delete_external_identifier.yml +6 -6
- data/spec/fixtures/vcr_cassettes/OrcidClient/external_identifier/post/should_create_external_identifier.yml +8 -8
- data/spec/fixtures/vcr_cassettes/OrcidClient/notifications/delete/should_delete_notification.yml +11 -15
- data/spec/fixtures/vcr_cassettes/OrcidClient/notifications/get/should_get_notification.yml +10 -15
- data/spec/fixtures/vcr_cassettes/OrcidClient/notifications/post/should_create_notification.yml +48 -57
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/delete/should_delete_work.yml +6 -6
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/get/should_get_works.yml +6 -614
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/post/should_create_work.yml +48 -55
- data/spec/fixtures/vcr_cassettes/OrcidClient/works/put/should_update_work.yml +51 -62
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/data.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_data.yml +41 -50
- data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_item_type_work.yml +51 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/literal.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/multiple_titles.yml +51 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/valid.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/with_ORCID_IDs.yml +55 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/data.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/publication_date.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_ORCID_IDs_for_contributors.yml +55 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_data.yml +41 -52
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_test_system.yml +41 -60
- data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_type_data-set.yml +51 -52
- data/spec/fixtures/work.xml +1 -1
- data/spec/notification_spec.rb +3 -3
- data/spec/work_spec.rb +16 -17
- metadata +100 -103
@@ -2,7 +2,7 @@
|
|
2
2
|
<education:education
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:education="http://www.orcid.org/ns/education"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/education ../education-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/education ../education-2.1.xsd ">
|
6
6
|
<education:department-name>Department</education:department-name>
|
7
7
|
<education:role-title>Degree</education:role-title>
|
8
8
|
<common:start-date>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<employment:employment
|
3
3
|
xmlns:employment="http://www.orcid.org/ns/employment" xmlns:common="http://www.orcid.org/ns/common"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/employment ../employment-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/employment ../employment-2.1.xsd ">
|
6
6
|
<employment:department-name>Department</employment:department-name>
|
7
7
|
<employment:role-title>Role</employment:role-title>
|
8
8
|
<common:start-date>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<external-identifier:external-identifier
|
3
3
|
xmlns:external-identifier="http://www.orcid.org/ns/external-identifier"
|
4
4
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/external-identifier ../person-external-identifier-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/external-identifier ../person-external-identifier-2.1.xsd ">
|
6
6
|
<common:external-id-type>My ID System</common:external-id-type>
|
7
7
|
<common:external-id-value>A-0003</common:external-id-value>
|
8
8
|
<common:external-id-url>https://myid.com/A-0003</common:external-id-url>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<funding:funding
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:funding="http://www.orcid.org/ns/funding"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/funding /funding-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/funding /funding-2.1.xsd ">
|
6
6
|
<funding:type>grant</funding:type>
|
7
7
|
<funding:organization-defined-type>Funding sub-type</funding:organization-defined-type>
|
8
8
|
<funding:title>
|
@@ -2,6 +2,6 @@
|
|
2
2
|
<keyword:keyword
|
3
3
|
xmlns:keyword="http://www.orcid.org/ns/keyword"
|
4
4
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/keyword ../keyword-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/keyword ../keyword-2.1.xsd ">
|
6
6
|
<keyword:content>keyword1</keyword:content>
|
7
7
|
</keyword:keyword>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<other-name:other-name xmlns:other-name="http://www.orcid.org/ns/other-name"
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
-
xsi:schemaLocation="http://www.orcid.org/ns/other-name ../other-name-2.
|
4
|
+
xsi:schemaLocation="http://www.orcid.org/ns/other-name ../other-name-2.1.xsd ">
|
5
5
|
<other-name:content>Other Name</other-name:content>
|
6
6
|
</other-name:other-name>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<peer-review:peer-review xmlns:common="http://www.orcid.org/ns/common"
|
3
3
|
xmlns:peer-review="http://www.orcid.org/ns/peer-review" xmlns:work="http://www.orcid.org/ns/work"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/peer-review ../peer-review-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/peer-review ../peer-review-2.1.xsd ">
|
6
6
|
<peer-review:reviewer-role>reviewer</peer-review:reviewer-role>
|
7
7
|
<peer-review:review-identifiers>
|
8
8
|
<common:external-id>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<peer-review:peer-review xmlns:common="http://www.orcid.org/ns/common"
|
3
3
|
xmlns:peer-review="http://www.orcid.org/ns/peer-review" xmlns:work="http://www.orcid.org/ns/work"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/peer-review ../peer-review-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/peer-review ../peer-review-2.1.xsd ">
|
6
6
|
<peer-review:reviewer-role>reviewer</peer-review:reviewer-role>
|
7
7
|
<peer-review:review-identifiers>
|
8
8
|
<common:external-id>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<researcher-url:researcher-url xmlns:researcher-url="http://www.orcid.org/ns/researcher-url"
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
4
|
-
xsi:schemaLocation="http://www.orcid.org/ns/researcher-url ../researcher-url-2.
|
4
|
+
xsi:schemaLocation="http://www.orcid.org/ns/researcher-url ../researcher-url-2.1.xsd">
|
5
5
|
<researcher-url:url-name>Site # 1</researcher-url:url-name>
|
6
6
|
<researcher-url:url>https://site1.com/</researcher-url:url>
|
7
7
|
</researcher-url:researcher-url>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<work:work
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:work="http://www.orcid.org/ns/work"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/work /work-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/work /work-2.1.xsd ">
|
6
6
|
<work:title>
|
7
7
|
<common:title>Work Title</common:title>
|
8
8
|
<common:subtitle>Sub title</common:subtitle>
|
@@ -38,7 +38,7 @@
|
|
38
38
|
<work:contributors>
|
39
39
|
<work:contributor>
|
40
40
|
<common:contributor-orcid>
|
41
|
-
<common:uri>
|
41
|
+
<common:uri>https://orcid.org/0000-0001-5109-3700</common:uri>
|
42
42
|
<common:path>0000-0001-5109-3700</common:path>
|
43
43
|
<common:host>orcid.org</common:host>
|
44
44
|
</common:contributor-orcid>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<work:work
|
3
3
|
xmlns:common="http://www.orcid.org/ns/common" xmlns:work="http://www.orcid.org/ns/work"
|
4
4
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
-
xsi:schemaLocation="http://www.orcid.org/ns/work /work-2.
|
5
|
+
xsi:schemaLocation="http://www.orcid.org/ns/work /work-2.1.xsd ">
|
6
6
|
<work:title>
|
7
7
|
<common:title>Work Title</common:title>
|
8
8
|
</work:title>
|
@@ -33,10 +33,10 @@
|
|
33
33
|
</xs:appinfo>
|
34
34
|
</xs:annotation>
|
35
35
|
<xs:import namespace="http://www.orcid.org/ns/common"
|
36
|
-
schemaLocation="../common_2.
|
36
|
+
schemaLocation="../common_2.1/common-2.1.xsd" />
|
37
37
|
|
38
38
|
<xs:import namespace="http://www.orcid.org/ns/error"
|
39
|
-
schemaLocation="error-2.
|
39
|
+
schemaLocation="error-2.1.xsd" />
|
40
40
|
|
41
41
|
<xs:element name="work">
|
42
42
|
<xs:complexType>
|
data/resources/xml.xsd
ADDED
@@ -0,0 +1,286 @@
|
|
1
|
+
<?xml version='1.0'?>
|
2
|
+
<?xml-stylesheet href="../../2008/09/xsd.xsl" type="text/xsl"?>
|
3
|
+
<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace"
|
4
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
5
|
+
xmlns ="http://www.w3.org/1999/xhtml"
|
6
|
+
xml:lang="en">
|
7
|
+
|
8
|
+
<xs:annotation>
|
9
|
+
<xs:documentation>
|
10
|
+
<div>
|
11
|
+
<h1>About the XML namespace</h1>
|
12
|
+
|
13
|
+
<div class="bodytext">
|
14
|
+
<p>
|
15
|
+
This schema document describes the XML namespace, in a form
|
16
|
+
suitable for import by other schema documents.
|
17
|
+
</p>
|
18
|
+
<p>
|
19
|
+
See <a href="http://www.w3.org/XML/1998/namespace.html">
|
20
|
+
http://www.w3.org/XML/1998/namespace.html</a> and
|
21
|
+
<a href="http://www.w3.org/TR/REC-xml">
|
22
|
+
http://www.w3.org/TR/REC-xml</a> for information
|
23
|
+
about this namespace.
|
24
|
+
</p>
|
25
|
+
<p>
|
26
|
+
Note that local names in this namespace are intended to be
|
27
|
+
defined only by the World Wide Web Consortium or its subgroups.
|
28
|
+
The names currently defined in this namespace are listed below.
|
29
|
+
They should not be used with conflicting semantics by any Working
|
30
|
+
Group, specification, or document instance.
|
31
|
+
</p>
|
32
|
+
<p>
|
33
|
+
See further below in this document for more information about <a
|
34
|
+
href="#usage">how to refer to this schema document from your own
|
35
|
+
XSD schema documents</a> and about <a href="#nsversioning">the
|
36
|
+
namespace-versioning policy governing this schema document</a>.
|
37
|
+
</p>
|
38
|
+
</div>
|
39
|
+
</div>
|
40
|
+
</xs:documentation>
|
41
|
+
</xs:annotation>
|
42
|
+
|
43
|
+
<xs:attribute name="lang">
|
44
|
+
<xs:annotation>
|
45
|
+
<xs:documentation>
|
46
|
+
<div>
|
47
|
+
|
48
|
+
<h3>lang (as an attribute name)</h3>
|
49
|
+
<p>
|
50
|
+
denotes an attribute whose value
|
51
|
+
is a language code for the natural language of the content of
|
52
|
+
any element; its value is inherited. This name is reserved
|
53
|
+
by virtue of its definition in the XML specification.</p>
|
54
|
+
|
55
|
+
</div>
|
56
|
+
<div>
|
57
|
+
<h4>Notes</h4>
|
58
|
+
<p>
|
59
|
+
Attempting to install the relevant ISO 2- and 3-letter
|
60
|
+
codes as the enumerated possible values is probably never
|
61
|
+
going to be a realistic possibility.
|
62
|
+
</p>
|
63
|
+
<p>
|
64
|
+
See BCP 47 at <a href="http://www.rfc-editor.org/rfc/bcp/bcp47.txt">
|
65
|
+
http://www.rfc-editor.org/rfc/bcp/bcp47.txt</a>
|
66
|
+
and the IANA language subtag registry at
|
67
|
+
<a href="http://www.iana.org/assignments/language-subtag-registry">
|
68
|
+
http://www.iana.org/assignments/language-subtag-registry</a>
|
69
|
+
for further information.
|
70
|
+
</p>
|
71
|
+
<p>
|
72
|
+
The union allows for the 'un-declaration' of xml:lang with
|
73
|
+
the empty string.
|
74
|
+
</p>
|
75
|
+
</div>
|
76
|
+
</xs:documentation>
|
77
|
+
</xs:annotation>
|
78
|
+
<xs:simpleType>
|
79
|
+
<xs:union memberTypes="xs:language">
|
80
|
+
<xs:simpleType>
|
81
|
+
<xs:restriction base="xs:string">
|
82
|
+
<xs:enumeration value=""/>
|
83
|
+
</xs:restriction>
|
84
|
+
</xs:simpleType>
|
85
|
+
</xs:union>
|
86
|
+
</xs:simpleType>
|
87
|
+
</xs:attribute>
|
88
|
+
|
89
|
+
<xs:attribute name="space">
|
90
|
+
<xs:annotation>
|
91
|
+
<xs:documentation>
|
92
|
+
<div>
|
93
|
+
|
94
|
+
<h3>space (as an attribute name)</h3>
|
95
|
+
<p>
|
96
|
+
denotes an attribute whose
|
97
|
+
value is a keyword indicating what whitespace processing
|
98
|
+
discipline is intended for the content of the element; its
|
99
|
+
value is inherited. This name is reserved by virtue of its
|
100
|
+
definition in the XML specification.</p>
|
101
|
+
|
102
|
+
</div>
|
103
|
+
</xs:documentation>
|
104
|
+
</xs:annotation>
|
105
|
+
<xs:simpleType>
|
106
|
+
<xs:restriction base="xs:NCName">
|
107
|
+
<xs:enumeration value="default"/>
|
108
|
+
<xs:enumeration value="preserve"/>
|
109
|
+
</xs:restriction>
|
110
|
+
</xs:simpleType>
|
111
|
+
</xs:attribute>
|
112
|
+
|
113
|
+
<xs:attribute name="base" type="xs:anyURI"> <xs:annotation>
|
114
|
+
<xs:documentation>
|
115
|
+
<div>
|
116
|
+
|
117
|
+
<h3>base (as an attribute name)</h3>
|
118
|
+
<p>
|
119
|
+
denotes an attribute whose value
|
120
|
+
provides a URI to be used as the base for interpreting any
|
121
|
+
relative URIs in the scope of the element on which it
|
122
|
+
appears; its value is inherited. This name is reserved
|
123
|
+
by virtue of its definition in the XML Base specification.</p>
|
124
|
+
|
125
|
+
<p>
|
126
|
+
See <a
|
127
|
+
href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a>
|
128
|
+
for information about this attribute.
|
129
|
+
</p>
|
130
|
+
</div>
|
131
|
+
</xs:documentation>
|
132
|
+
</xs:annotation>
|
133
|
+
</xs:attribute>
|
134
|
+
|
135
|
+
<xs:attribute name="id" type="xs:ID">
|
136
|
+
<xs:annotation>
|
137
|
+
<xs:documentation>
|
138
|
+
<div>
|
139
|
+
|
140
|
+
<h3>id (as an attribute name)</h3>
|
141
|
+
<p>
|
142
|
+
denotes an attribute whose value
|
143
|
+
should be interpreted as if declared to be of type ID.
|
144
|
+
This name is reserved by virtue of its definition in the
|
145
|
+
xml:id specification.</p>
|
146
|
+
|
147
|
+
<p>
|
148
|
+
See <a
|
149
|
+
href="http://www.w3.org/TR/xml-id/">http://www.w3.org/TR/xml-id/</a>
|
150
|
+
for information about this attribute.
|
151
|
+
</p>
|
152
|
+
</div>
|
153
|
+
</xs:documentation>
|
154
|
+
</xs:annotation>
|
155
|
+
</xs:attribute>
|
156
|
+
|
157
|
+
<xs:attributeGroup name="specialAttrs">
|
158
|
+
<xs:attribute ref="xml:base"/>
|
159
|
+
<xs:attribute ref="xml:lang"/>
|
160
|
+
<xs:attribute ref="xml:space"/>
|
161
|
+
<xs:attribute ref="xml:id"/>
|
162
|
+
</xs:attributeGroup>
|
163
|
+
|
164
|
+
<xs:annotation>
|
165
|
+
<xs:documentation>
|
166
|
+
<div>
|
167
|
+
|
168
|
+
<h3>Father (in any context at all)</h3>
|
169
|
+
|
170
|
+
<div class="bodytext">
|
171
|
+
<p>
|
172
|
+
denotes Jon Bosak, the chair of
|
173
|
+
the original XML Working Group. This name is reserved by
|
174
|
+
the following decision of the W3C XML Plenary and
|
175
|
+
XML Coordination groups:
|
176
|
+
</p>
|
177
|
+
<blockquote>
|
178
|
+
<p>
|
179
|
+
In appreciation for his vision, leadership and
|
180
|
+
dedication the W3C XML Plenary on this 10th day of
|
181
|
+
February, 2000, reserves for Jon Bosak in perpetuity
|
182
|
+
the XML name "xml:Father".
|
183
|
+
</p>
|
184
|
+
</blockquote>
|
185
|
+
</div>
|
186
|
+
</div>
|
187
|
+
</xs:documentation>
|
188
|
+
</xs:annotation>
|
189
|
+
|
190
|
+
<xs:annotation>
|
191
|
+
<xs:documentation>
|
192
|
+
<div xml:id="usage" id="usage">
|
193
|
+
<h2><a name="usage">About this schema document</a></h2>
|
194
|
+
|
195
|
+
<div class="bodytext">
|
196
|
+
<p>
|
197
|
+
This schema defines attributes and an attribute group suitable
|
198
|
+
for use by schemas wishing to allow <code>xml:base</code>,
|
199
|
+
<code>xml:lang</code>, <code>xml:space</code> or
|
200
|
+
<code>xml:id</code> attributes on elements they define.
|
201
|
+
</p>
|
202
|
+
<p>
|
203
|
+
To enable this, such a schema must import this schema for
|
204
|
+
the XML namespace, e.g. as follows:
|
205
|
+
</p>
|
206
|
+
<pre>
|
207
|
+
<schema . . .>
|
208
|
+
. . .
|
209
|
+
<import namespace="http://www.w3.org/XML/1998/namespace"
|
210
|
+
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
|
211
|
+
</pre>
|
212
|
+
<p>
|
213
|
+
or
|
214
|
+
</p>
|
215
|
+
<pre>
|
216
|
+
<import namespace="http://www.w3.org/XML/1998/namespace"
|
217
|
+
schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
|
218
|
+
</pre>
|
219
|
+
<p>
|
220
|
+
Subsequently, qualified reference to any of the attributes or the
|
221
|
+
group defined below will have the desired effect, e.g.
|
222
|
+
</p>
|
223
|
+
<pre>
|
224
|
+
<type . . .>
|
225
|
+
. . .
|
226
|
+
<attributeGroup ref="xml:specialAttrs"/>
|
227
|
+
</pre>
|
228
|
+
<p>
|
229
|
+
will define a type which will schema-validate an instance element
|
230
|
+
with any of those attributes.
|
231
|
+
</p>
|
232
|
+
</div>
|
233
|
+
</div>
|
234
|
+
</xs:documentation>
|
235
|
+
</xs:annotation>
|
236
|
+
|
237
|
+
<xs:annotation>
|
238
|
+
<xs:documentation>
|
239
|
+
<div id="nsversioning" xml:id="nsversioning">
|
240
|
+
<h2><a name="nsversioning">Versioning policy for this schema document</a></h2>
|
241
|
+
<div class="bodytext">
|
242
|
+
<p>
|
243
|
+
In keeping with the XML Schema WG's standard versioning
|
244
|
+
policy, this schema document will persist at
|
245
|
+
<a href="http://www.w3.org/2009/01/xml.xsd">
|
246
|
+
http://www.w3.org/2009/01/xml.xsd</a>.
|
247
|
+
</p>
|
248
|
+
<p>
|
249
|
+
At the date of issue it can also be found at
|
250
|
+
<a href="http://www.w3.org/2001/xml.xsd">
|
251
|
+
http://www.w3.org/2001/xml.xsd</a>.
|
252
|
+
</p>
|
253
|
+
<p>
|
254
|
+
The schema document at that URI may however change in the future,
|
255
|
+
in order to remain compatible with the latest version of XML
|
256
|
+
Schema itself, or with the XML namespace itself. In other words,
|
257
|
+
if the XML Schema or XML namespaces change, the version of this
|
258
|
+
document at <a href="http://www.w3.org/2001/xml.xsd">
|
259
|
+
http://www.w3.org/2001/xml.xsd
|
260
|
+
</a>
|
261
|
+
will change accordingly; the version at
|
262
|
+
<a href="http://www.w3.org/2009/01/xml.xsd">
|
263
|
+
http://www.w3.org/2009/01/xml.xsd
|
264
|
+
</a>
|
265
|
+
will not change.
|
266
|
+
</p>
|
267
|
+
<p>
|
268
|
+
Previous dated (and unchanging) versions of this schema
|
269
|
+
document are at:
|
270
|
+
</p>
|
271
|
+
<ul>
|
272
|
+
<li><a href="http://www.w3.org/2009/01/xml.xsd">
|
273
|
+
http://www.w3.org/2009/01/xml.xsd</a></li>
|
274
|
+
<li><a href="http://www.w3.org/2007/08/xml.xsd">
|
275
|
+
http://www.w3.org/2007/08/xml.xsd</a></li>
|
276
|
+
<li><a href="http://www.w3.org/2004/10/xml.xsd">
|
277
|
+
http://www.w3.org/2004/10/xml.xsd</a></li>
|
278
|
+
<li><a href="http://www.w3.org/2001/03/xml.xsd">
|
279
|
+
http://www.w3.org/2001/03/xml.xsd</a></li>
|
280
|
+
</ul>
|
281
|
+
</div>
|
282
|
+
</div>
|
283
|
+
</xs:documentation>
|
284
|
+
</xs:annotation>
|
285
|
+
|
286
|
+
</xs:schema>
|
data/spec/api_spec.rb
CHANGED
@@ -5,7 +5,7 @@ describe OrcidClient, vcr: true do
|
|
5
5
|
let(:orcid) { "0000-0001-6528-2027" }
|
6
6
|
let(:access_token) { ENV['ACCESS_TOKEN'] }
|
7
7
|
let(:notification_access_token) { ENV['NOTIFICATION_ACCESS_TOKEN'] }
|
8
|
-
let(:put_code) { "
|
8
|
+
let(:put_code) { "921977" }
|
9
9
|
let(:fixture_path) { "spec/fixtures/" }
|
10
10
|
|
11
11
|
subject { OrcidClient::Work.new(doi: doi, orcid: orcid, access_token: access_token, put_code: put_code) }
|
@@ -31,9 +31,9 @@ describe OrcidClient, vcr: true do
|
|
31
31
|
it 'should get works' do
|
32
32
|
response = subject.get_works(sandbox: true)
|
33
33
|
works = response.body.fetch("data", {}).fetch("group", {})
|
34
|
-
expect(works.length).to eq(
|
34
|
+
expect(works.length).to eq(23)
|
35
35
|
work = works.first
|
36
|
-
expect(work["external-ids"]).to eq("external-id"=>[{"external-id-type"=>"doi", "external-id-value"=>"10.
|
36
|
+
expect(work["external-ids"]).to eq("external-id"=>[{"external-id-type"=>"doi", "external-id-value"=>"10.5438/53NZ-N4G7", "external-id-url"=>nil, "external-id-relationship"=>"SELF"}])
|
37
37
|
end
|
38
38
|
|
39
39
|
it 'access_token missing' do
|
@@ -74,7 +74,7 @@ describe OrcidClient, vcr: true do
|
|
74
74
|
end
|
75
75
|
|
76
76
|
describe "external_identifier", :order => :defined do
|
77
|
-
subject { OrcidClient::ExternalIdentifier.new(type: "GitHub", value: "mfenner", url: "https://github.com/mfenner", orcid: orcid, access_token: access_token, put_code: "
|
77
|
+
subject { OrcidClient::ExternalIdentifier.new(type: "GitHub", value: "mfenner", url: "https://github.com/mfenner", orcid: orcid, access_token: access_token, put_code: "4833") }
|
78
78
|
|
79
79
|
describe 'post' do
|
80
80
|
subject { OrcidClient::ExternalIdentifier.new(type: "GitHub", value: "mfenner", url: "https://github.com/mfenner", orcid: orcid, access_token: access_token) }
|
@@ -109,7 +109,7 @@ describe OrcidClient, vcr: true do
|
|
109
109
|
end
|
110
110
|
|
111
111
|
describe "notifications", :order => :defined do
|
112
|
-
subject { OrcidClient::Notification.new(doi: doi, orcid: orcid, notification_access_token: notification_access_token, put_code: "
|
112
|
+
subject { OrcidClient::Notification.new(doi: doi, orcid: orcid, notification_access_token: notification_access_token, put_code: "292000", subject: "Request to add a work", intro: "This is an intro", sandbox: true) }
|
113
113
|
|
114
114
|
describe 'post' do
|
115
115
|
subject { OrcidClient::Notification.new(doi: doi, orcid: orcid, notification_access_token: notification_access_token, subject: "Request to add a work", intro: "This is an intro", sandbox: true) }
|
@@ -131,8 +131,8 @@ describe OrcidClient, vcr: true do
|
|
131
131
|
it 'should get notification' do
|
132
132
|
response = subject.get_notification(sandbox: true)
|
133
133
|
notification = response.body.fetch("data", {}).fetch("notification", {})
|
134
|
-
expect(notification["put_code"]).to eq("
|
135
|
-
expect(notification["items"]["item"]).to eq("item_type"=>"work", "item_name"=>"
|
134
|
+
expect(notification["put_code"]).to eq("292000")
|
135
|
+
expect(notification["items"]["item"]).to eq("item_type"=>"work", "item_name"=>"Omniauth-Orcid: V.1.1.5", "external_id"=>nil)
|
136
136
|
expect(response.status).to eq(200)
|
137
137
|
end
|
138
138
|
|
@@ -147,8 +147,8 @@ describe OrcidClient, vcr: true do
|
|
147
147
|
it 'should delete notification' do
|
148
148
|
response = subject.delete_notification(sandbox: true)
|
149
149
|
notification = response.body.fetch("data", {}).fetch("notification", {})
|
150
|
-
expect(notification["put_code"]).to eq("
|
151
|
-
expect(notification["items"]["item"]).to eq("item_type"=>"work", "item_name"=>"
|
150
|
+
expect(notification["put_code"]).to eq("292000")
|
151
|
+
expect(notification["items"]["item"]).to eq("item_type"=>"work", "item_name"=>"Omniauth-Orcid: V.1.1.5", "external_identifier"=>nil)
|
152
152
|
expect(response.status).to eq(200)
|
153
153
|
end
|
154
154
|
|