orcid_client 0.5.2 → 0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. checksums.yaml +4 -4
  2. data/.env.example +1 -2
  3. data/.github/workflows/build.yml +39 -0
  4. data/.github/workflows/changelog.yml +36 -0
  5. data/.github/workflows/release.yml +49 -0
  6. data/Gemfile.lock +129 -109
  7. data/lib/orcid_client/api.rb +15 -16
  8. data/lib/orcid_client/external_identifier.rb +4 -4
  9. data/lib/orcid_client/version.rb +1 -1
  10. data/lib/orcid_client/work.rb +4 -4
  11. data/orcid_client.gemspec +9 -9
  12. data/resources/README.md +48 -43
  13. data/resources/common_3.0/common-3.0.xsd +998 -0
  14. data/resources/common_3.0/samples/common-3.0.xml +8 -0
  15. data/resources/common_3.0/samples/common-3.0_external-identifier.xml +11 -0
  16. data/resources/notification_3.0/README.md +130 -0
  17. data/resources/notification_3.0/images/notification-intro.jpg +0 -0
  18. data/resources/notification_3.0/images/notification-subject.jpg +0 -0
  19. data/resources/notification_3.0/notification-custom-3.0.xsd +38 -0
  20. data/resources/notification_3.0/notification-permission-3.0.xsd +134 -0
  21. data/resources/notification_3.0/samples/notification-custom-3.0.xml +27 -0
  22. data/resources/notification_3.0/samples/notification-permission-3.0.xml +58 -0
  23. data/resources/record_3.0/README.md +408 -0
  24. data/resources/record_3.0/activities-3.0.xsd +456 -0
  25. data/resources/record_3.0/address-3.0.xsd +73 -0
  26. data/resources/record_3.0/bulk-3.0.xsd +57 -0
  27. data/resources/record_3.0/distinction-3.0.xsd +51 -0
  28. data/resources/record_3.0/education-3.0.xsd +51 -0
  29. data/resources/record_3.0/email-3.0.xsd +76 -0
  30. data/resources/record_3.0/employment-3.0.xsd +51 -0
  31. data/resources/record_3.0/error-3.0.xsd +84 -0
  32. data/resources/record_3.0/expanded-search-3.0.xsd +114 -0
  33. data/resources/record_3.0/funding-3.0.xsd +204 -0
  34. data/resources/record_3.0/history-3.0.xsd +185 -0
  35. data/resources/record_3.0/invited-position-3.0.xsd +50 -0
  36. data/resources/record_3.0/keyword-3.0.xsd +72 -0
  37. data/resources/record_3.0/membership-3.0.xsd +51 -0
  38. data/resources/record_3.0/other-name-3.0.xsd +78 -0
  39. data/resources/record_3.0/peer-review-3.0.xsd +263 -0
  40. data/resources/record_3.0/person-3.0.xsd +85 -0
  41. data/resources/record_3.0/person-external-identifier-3.0.xsd +63 -0
  42. data/resources/record_3.0/personal-details-3.0.xsd +162 -0
  43. data/resources/record_3.0/preferences-3.0.xsd +50 -0
  44. data/resources/record_3.0/qualification-3.0.xsd +50 -0
  45. data/resources/record_3.0/record-3.0.xsd +91 -0
  46. data/resources/record_3.0/research-resource-3.0.xsd +144 -0
  47. data/resources/record_3.0/researcher-url-3.0.xsd +86 -0
  48. data/resources/record_3.0/samples/read_samples/activities-3.0.xml +742 -0
  49. data/resources/record_3.0/samples/read_samples/address-3.0.xml +16 -0
  50. data/resources/record_3.0/samples/read_samples/addresses-3.0.xml +32 -0
  51. data/resources/record_3.0/samples/read_samples/biography-3.0.xml +10 -0
  52. data/resources/record_3.0/samples/read_samples/bulk-work-err.xml +45 -0
  53. data/resources/record_3.0/samples/read_samples/credit-name-3.0.xml +5 -0
  54. data/resources/record_3.0/samples/read_samples/distinction-3.0.xml +55 -0
  55. data/resources/record_3.0/samples/read_samples/distinctions-3.0.xml +106 -0
  56. data/resources/record_3.0/samples/read_samples/education-3.0.xml +55 -0
  57. data/resources/record_3.0/samples/read_samples/education-full-3.0.xml +55 -0
  58. data/resources/record_3.0/samples/read_samples/educations-3.0.xml +118 -0
  59. data/resources/record_3.0/samples/read_samples/email-3.0.xml +16 -0
  60. data/resources/record_3.0/samples/read_samples/emails-3.0.xml +31 -0
  61. data/resources/record_3.0/samples/read_samples/employment-3.0.xml +55 -0
  62. data/resources/record_3.0/samples/read_samples/employment-full-3.0.xml +55 -0
  63. data/resources/record_3.0/samples/read_samples/employments-3.0.xml +108 -0
  64. data/resources/record_3.0/samples/read_samples/error-3.0.xml +8 -0
  65. data/resources/record_3.0/samples/read_samples/external-identifier-3.0.xml +21 -0
  66. data/resources/record_3.0/samples/read_samples/external-identifiers-3.0.xml +38 -0
  67. data/resources/record_3.0/samples/read_samples/full-record-3.0.json +2332 -0
  68. data/resources/record_3.0/samples/read_samples/funding-3.0.xml +75 -0
  69. data/resources/record_3.0/samples/read_samples/funding-full-3.0.xml +75 -0
  70. data/resources/record_3.0/samples/read_samples/fundings-3.0.xml +139 -0
  71. data/resources/record_3.0/samples/read_samples/history-3.0.xml +22 -0
  72. data/resources/record_3.0/samples/read_samples/invited-position-3.0.xml +55 -0
  73. data/resources/record_3.0/samples/read_samples/invited-positions-3.0.xml +106 -0
  74. data/resources/record_3.0/samples/read_samples/keyword-3.0.xml +18 -0
  75. data/resources/record_3.0/samples/read_samples/keywords-3.0.xml +34 -0
  76. data/resources/record_3.0/samples/read_samples/membership-3.0.xml +55 -0
  77. data/resources/record_3.0/samples/read_samples/memberships-3.0.xml +106 -0
  78. data/resources/record_3.0/samples/read_samples/name-3.0.xml +12 -0
  79. data/resources/record_3.0/samples/read_samples/other-name-3.0.xml +16 -0
  80. data/resources/record_3.0/samples/read_samples/other-names-3.0.xml +31 -0
  81. data/resources/record_3.0/samples/read_samples/peer-review-3.0.xml +59 -0
  82. data/resources/record_3.0/samples/read_samples/peer-review-full-3.0.xml +59 -0
  83. data/resources/record_3.0/samples/read_samples/peer-reviews-3.0.xml +76 -0
  84. data/resources/record_3.0/samples/read_samples/person-3.0.xml +122 -0
  85. data/resources/record_3.0/samples/read_samples/personal-details-3.0.xml +47 -0
  86. data/resources/record_3.0/samples/read_samples/preferences-3.0.xml +4 -0
  87. data/resources/record_3.0/samples/read_samples/qualification-3.0.xml +55 -0
  88. data/resources/record_3.0/samples/read_samples/qualifications-3.0.xml +106 -0
  89. data/resources/record_3.0/samples/read_samples/record-3.0.xml +770 -0
  90. data/resources/record_3.0/samples/read_samples/research-resource-3.0.xml +138 -0
  91. data/resources/record_3.0/samples/read_samples/research-resources-3.0.xml +143 -0
  92. data/resources/record_3.0/samples/read_samples/researcher-url-3.0.xml +19 -0
  93. data/resources/record_3.0/samples/read_samples/researcher-urls-3.0.xml +21 -0
  94. data/resources/record_3.0/samples/read_samples/search-3.0.xml +14 -0
  95. data/resources/record_3.0/samples/read_samples/service-3.0.xml +55 -0
  96. data/resources/record_3.0/samples/read_samples/services-3.0.xml +106 -0
  97. data/resources/record_3.0/samples/read_samples/work-3.0.xml +65 -0
  98. data/resources/record_3.0/samples/read_samples/work-full-3.0.xml +65 -0
  99. data/resources/record_3.0/samples/read_samples/works-3.0.xml +148 -0
  100. data/resources/record_3.0/samples/write_samples/address-3.0.xml +6 -0
  101. data/resources/record_3.0/samples/write_samples/bulk-work-3.0.json +53 -0
  102. data/resources/record_3.0/samples/write_samples/bulk-work-3.0.xml +47 -0
  103. data/resources/record_3.0/samples/write_samples/distinction-3.0.xml +46 -0
  104. data/resources/record_3.0/samples/write_samples/education-3.0.xml +45 -0
  105. data/resources/record_3.0/samples/write_samples/employment-3.0.xml +45 -0
  106. data/resources/record_3.0/samples/write_samples/external-identifier-3.0.xml +11 -0
  107. data/resources/record_3.0/samples/write_samples/funding-3.0.xml +44 -0
  108. data/resources/record_3.0/samples/write_samples/invited-position-3.0.xml +45 -0
  109. data/resources/record_3.0/samples/write_samples/keyword-3.0.xml +7 -0
  110. data/resources/record_3.0/samples/write_samples/membership-3.0.xml +45 -0
  111. data/resources/record_3.0/samples/write_samples/other-name-3.0.xml +6 -0
  112. data/resources/record_3.0/samples/write_samples/peer-review-full-3.0.xml +48 -0
  113. data/resources/record_3.0/samples/write_samples/peer-review-full-award-subject-type-3.0.xml +48 -0
  114. data/resources/record_3.0/samples/write_samples/peer-review-simple-3.0.xml +32 -0
  115. data/resources/record_3.0/samples/write_samples/qualification-3.0.xml +45 -0
  116. data/resources/record_3.0/samples/write_samples/research-resource-3.0.xml +110 -0
  117. data/resources/record_3.0/samples/write_samples/researcher-url-3.0-no-name.xml +6 -0
  118. data/resources/record_3.0/samples/write_samples/researcher-url-3.0.xml +7 -0
  119. data/resources/record_3.0/samples/write_samples/service-3.0.xml +45 -0
  120. data/resources/record_3.0/samples/write_samples/work-full-3.0.xml +60 -0
  121. data/resources/record_3.0/samples/write_samples/work-simple-3.0.xml +18 -0
  122. data/resources/record_3.0/search-3.0.xsd +62 -0
  123. data/resources/record_3.0/service-3.0.xsd +51 -0
  124. data/resources/record_3.0/work-3.0.xsd +269 -0
  125. data/spec/api_spec.rb +25 -25
  126. data/spec/author_spec.rb +2 -2
  127. data/spec/external_identifier_spec.rb +4 -4
  128. data/spec/fixtures/external_identifier.xml +1 -1
  129. data/spec/fixtures/vcr_cassettes/OrcidClient/works/get/should_get_works.yml +20 -11
  130. data/spec/fixtures/vcr_cassettes/OrcidClient/works/post/should_create_work.yml +67 -42
  131. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/data.yml +47 -29
  132. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_data.yml +47 -29
  133. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_item_type_work.yml +31 -38
  134. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/literal.yml +49 -28
  135. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/multiple_titles.yml +36 -28
  136. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/valid.yml +47 -29
  137. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/with_ORCID_IDs.yml +30 -22
  138. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/data.yml +47 -29
  139. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/publication_date.yml +47 -29
  140. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_ORCID_IDs_for_contributors.yml +30 -22
  141. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_data.yml +46 -28
  142. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_from_DataCite_test_system.yml +30 -22
  143. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_type_data-set.yml +31 -38
  144. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/user_example/fail/valid.yml +31 -23
  145. data/spec/fixtures/work.xml +1 -1
  146. data/spec/notification_spec.rb +2 -2
  147. data/spec/spec_helper.rb +1 -1
  148. data/spec/work_spec.rb +11 -11
  149. metadata +193 -67
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <researcher-url:researcher-url xmlns:researcher-url="http://www.orcid.org/ns/researcher-url"
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-3.0.xsd">
5
+ <researcher-url:url>https://site1.com/</researcher-url:url>
6
+ </researcher-url:researcher-url>
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <researcher-url:researcher-url xmlns:researcher-url="http://www.orcid.org/ns/researcher-url"
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-3.0.xsd">
5
+ <researcher-url:url-name>Site # 1</researcher-url:url-name>
6
+ <researcher-url:url>https://site1.com/</researcher-url:url>
7
+ </researcher-url:researcher-url>
@@ -0,0 +1,45 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <service:service
3
+ xmlns:service="http://www.orcid.org/ns/service" xmlns:common="http://www.orcid.org/ns/common"
4
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
+ xsi:schemaLocation="http://www.orcid.org/ns/service ../service-3.0.xsd ">
6
+ <common:department-name>department-name</common:department-name>
7
+ <common:role-title>role-title</common:role-title>
8
+ <common:start-date>
9
+ <common:year>1948</common:year>
10
+ <common:month>02</common:month>
11
+ <common:day>02</common:day>
12
+ </common:start-date>
13
+ <common:end-date>
14
+ <common:year>1948</common:year>
15
+ <common:month>02</common:month>
16
+ <common:day>02</common:day>
17
+ </common:end-date>
18
+ <common:organization>
19
+ <common:name>common:name</common:name>
20
+ <common:address>
21
+ <common:city>common:city</common:city>
22
+ <common:region>common:region</common:region>
23
+ <common:country>AF</common:country>
24
+ </common:address>
25
+ <common:disambiguated-organization>
26
+ <common:disambiguated-organization-identifier>http://dx.doi.org/10.13039/100000001</common:disambiguated-organization-identifier>
27
+ <common:disambiguation-source>FUNDREF</common:disambiguation-source>
28
+ </common:disambiguated-organization>
29
+ </common:organization>
30
+ <common:url>http://tempuri.org</common:url>
31
+ <common:external-ids>
32
+ <common:external-id>
33
+ <common:external-id-type>grant_number</common:external-id-type>
34
+ <common:external-id-value>external-identifier-value</common:external-id-value>
35
+ <common:external-id-url>http://tempuri.org</common:external-id-url>
36
+ <common:external-id-relationship>self</common:external-id-relationship>
37
+ </common:external-id>
38
+ <common:external-id>
39
+ <common:external-id-type>grant_number</common:external-id-type>
40
+ <common:external-id-value>external-identifier-value2</common:external-id-value>
41
+ <common:external-id-url>http://tempuri.org/2</common:external-id-url>
42
+ <common:external-id-relationship>self</common:external-id-relationship>
43
+ </common:external-id>
44
+ </common:external-ids>
45
+ </service:service>
@@ -0,0 +1,60 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <work:work
3
+ xmlns:common="http://www.orcid.org/ns/common" xmlns:work="http://www.orcid.org/ns/work"
4
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
+ xsi:schemaLocation="http://www.orcid.org/ns/work /work-3.0.xsd ">
6
+ <work:title>
7
+ <common:title>Work Title</common:title>
8
+ <common:subtitle>Sub title</common:subtitle>
9
+ <common:translated-title language-code="en">Translated-title</common:translated-title>
10
+ </work:title>
11
+ <work:journal-title>Journal Title</work:journal-title>
12
+ <work:short-description>Short description</work:short-description>
13
+ <work:citation>
14
+ <work:citation-type>bibtex</work:citation-type>
15
+ <work:citation-value>
16
+ @article {ORCID2012,
17
+ title = "ORCID: a system to uniquely identify researchers",
18
+ journal = "Learned Publishing",
19
+ year = "2012",
20
+ doi = "doi:10.1087/20120404"
21
+ }</work:citation-value>
22
+ </work:citation>
23
+ <work:type>journal-article</work:type>
24
+ <common:publication-date>
25
+ <common:year>2012</common:year>
26
+ <common:month>10</common:month>
27
+ <common:day>01</common:day>
28
+ </common:publication-date>
29
+ <common:external-ids>
30
+ <common:external-id>
31
+ <common:external-id-type>doi</common:external-id-type>
32
+ <common:external-id-value>10.1087/20120404</common:external-id-value>
33
+ <common:external-id-url>https://doi.org/10.1087/20120404</common:external-id-url>
34
+ <common:external-id-relationship>version-of</common:external-id-relationship>
35
+ </common:external-id>
36
+ <common:external-id>
37
+ <common:external-id-type>doi</common:external-id-type>
38
+ <common:external-id-value>work:doi</common:external-id-value>
39
+ <common:external-id-url>http://orcid.org</common:external-id-url>
40
+ <common:external-id-relationship>self</common:external-id-relationship>
41
+ </common:external-id>
42
+ </common:external-ids>
43
+ <common:url>http://alt-uri.org</common:url>
44
+ <work:contributors>
45
+ <work:contributor>
46
+ <common:contributor-orcid>
47
+ <common:uri>https://orcid.org/0000-0001-5109-3700</common:uri>
48
+ <common:path>0000-0001-5109-3700</common:path>
49
+ <common:host>orcid.org</common:host>
50
+ </common:contributor-orcid>
51
+ <work:credit-name>Laure L. Haak</work:credit-name>
52
+ <work:contributor-attributes>
53
+ <work:contributor-sequence>first</work:contributor-sequence>
54
+ <work:contributor-role>author</work:contributor-role>
55
+ </work:contributor-attributes>
56
+ </work:contributor>
57
+ </work:contributors>
58
+ <common:language-code>en</common:language-code>
59
+ <common:country>US</common:country>
60
+ </work:work>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <work:work
3
+ xmlns:common="http://www.orcid.org/ns/common" xmlns:work="http://www.orcid.org/ns/work"
4
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
+ xsi:schemaLocation="http://www.orcid.org/ns/work /work-3.0.xsd ">
6
+ <work:title>
7
+ <common:title>Work Title</common:title>
8
+ </work:title>
9
+ <work:type>journal-article</work:type>
10
+ <common:external-ids>
11
+ <common:external-id>
12
+ <common:external-id-type>doi</common:external-id-type>
13
+ <common:external-id-value>10.1087/20120404</common:external-id-value>
14
+ <common:external-id-url>https://doi.org/10.1087/20120404</common:external-id-url>
15
+ <common:external-id-relationship>self</common:external-id-relationship>
16
+ </common:external-id>
17
+ </common:external-ids>
18
+ </work:work>
@@ -0,0 +1,62 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
+ elementFormDefault="qualified"
4
+ targetNamespace="http://www.orcid.org/ns/search"
5
+ xmlns:search="http://www.orcid.org/ns/search"
6
+ xmlns:common="http://www.orcid.org/ns/common">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2018 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ The top level element is orcid-message.
30
+ </xs:documentation>
31
+ </xs:annotation>
32
+ <xs:import namespace="http://www.orcid.org/ns/common"
33
+ schemaLocation="../common_3.0/common-3.0.xsd" />
34
+
35
+ <xs:element name="search">
36
+ <xs:complexType>
37
+ <xs:annotation>
38
+ <xs:documentation>The container element for the results when
39
+ performing a search on the ORCID Registry. the num-found attribute
40
+ indicates the number of successful matches.
41
+ </xs:documentation>
42
+ </xs:annotation>
43
+ <xs:sequence>
44
+ <xs:element name="result" type="search:result" minOccurs="0"
45
+ maxOccurs="unbounded" />
46
+ </xs:sequence>
47
+ <xs:attribute name="num-found" type="xs:integer" default="0" />
48
+ </xs:complexType>
49
+ </xs:element>
50
+
51
+ <xs:complexType name="result">
52
+ <xs:annotation>
53
+ <xs:documentation>A single result when performing a search on the
54
+ ORCID Registry.
55
+ </xs:documentation>
56
+ </xs:annotation>
57
+ <xs:sequence>
58
+ <xs:element ref="common:orcid-identifier" maxOccurs="1" />
59
+ </xs:sequence>
60
+ </xs:complexType>
61
+
62
+ </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/service" xmlns:service="http://www.orcid.org/ns/service"
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="service" type="common:affiliation">
39
+ <xs:annotation>
40
+ <xs:documentation>A service associated with the researcher.
41
+ Service is defined as significant donations of time, money, or other resources to an organization or community
42
+ * The put-code attribute is used only when
43
+ reading this element. When updating the item, the put-code attribute
44
+ must be included to indicate the specific record to be updated.
45
+ </xs:documentation>
46
+ </xs:annotation>
47
+ </xs:element>
48
+
49
+ <xs:element name="service-summary" type="common:affiliation-summary" />
50
+
51
+ </xs:schema>
@@ -0,0 +1,269 @@
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/work" xmlns:work="http://www.orcid.org/ns/work"
5
+ xmlns:common="http://www.orcid.org/ns/common" xmlns:error="http://www.orcid.org/ns/error">
6
+ <xs:annotation>
7
+ <xs:documentation>
8
+ =============================================================================
9
+
10
+ ORCID (R) Open Source
11
+ http://orcid.org
12
+
13
+ Copyright (c) 2012-2018 ORCID,
14
+ Inc.
15
+ Licensed under an MIT-Style License (MIT)
16
+ http://orcid.org/open-source-license
17
+
18
+ This copyright and license
19
+ information (including a link to the full
20
+ license)
21
+ shall be included in
22
+ its entirety in all copies or substantial portion of
23
+ the software.
24
+
25
+ =============================================================================
26
+ The schema describes the message format used for ORCID API requests
27
+ and responses.
28
+ The top level element is orcid-message.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+ <xs:import namespace="http://www.orcid.org/ns/common"
36
+ schemaLocation="../common_3.0/common-3.0.xsd" />
37
+
38
+ <xs:import namespace="http://www.orcid.org/ns/error"
39
+ schemaLocation="error-3.0.xsd" />
40
+
41
+ <xs:element name="work">
42
+ <xs:complexType>
43
+ <xs:annotation>
44
+ <xs:documentation>A work is any research output that the researcher produced or contributed to
45
+ * The put-code attribute is used only when reading this
46
+ element. When updating the item, the put-code attribute must be
47
+ included to indicate the specific record to be updated.
48
+ </xs:documentation>
49
+ </xs:annotation>
50
+ <xs:complexContent>
51
+ <xs:extension base="common:element-summary">
52
+ <xs:sequence>
53
+
54
+ <xs:element name="title" type="work:work-title"
55
+ minOccurs="1" />
56
+ <xs:element name="journal-title" type="common:string-1000"
57
+ minOccurs="0" maxOccurs="1">
58
+ <xs:annotation>
59
+ <xs:documentation>The title of the publication or group under which
60
+ the work was published.
61
+ * If a journal, include the journal title of the work.
62
+ * If a book chapter, use the book title.
63
+ * If a translation or a manual, use the series title.
64
+ * If a dictionary entry, use the dictionary title.
65
+ * If a conference poster, abstract or paper, use the conference name.
66
+ </xs:documentation>
67
+ </xs:annotation>
68
+ </xs:element>
69
+ <xs:element name="short-description" type="common:short-description"
70
+ minOccurs="0" />
71
+ <xs:element name="citation" minOccurs="0" type="work:citation">
72
+ <xs:annotation>
73
+ <xs:documentation>Element containing the type and content of the
74
+ citation for this work
75
+ </xs:documentation>
76
+ </xs:annotation>
77
+ </xs:element>
78
+ <xs:element name="type" type="work:work-type">
79
+ <xs:annotation>
80
+ <xs:documentation>Required. The type of work
81
+ </xs:documentation>
82
+ </xs:annotation>
83
+ </xs:element>
84
+ <xs:element ref="common:publication-date" minOccurs="0" />
85
+ <xs:element ref="common:external-ids"
86
+ minOccurs="0">
87
+ <xs:annotation>
88
+ <xs:documentation>Required when writing work items. The list of supported identifier types is at https://pub.qa.orcid.org/v2.0/identifiers
89
+ </xs:documentation>
90
+ </xs:annotation>
91
+ </xs:element>
92
+ <xs:element ref="common:url" minOccurs="0" maxOccurs="1"/>
93
+ <xs:element name="contributors" type="work:work-contributors"
94
+ minOccurs="0" />
95
+ <xs:element ref="common:language-code" minOccurs="0"
96
+ maxOccurs="1">
97
+ <xs:annotation>
98
+ <xs:documentation>The language used for the metadata provided about the work
99
+ </xs:documentation>
100
+ </xs:annotation>
101
+ </xs:element>
102
+ <xs:element ref="common:country" minOccurs="0" />
103
+ </xs:sequence>
104
+ </xs:extension>
105
+ </xs:complexContent>
106
+ </xs:complexType>
107
+ </xs:element>
108
+
109
+ <xs:element name="work-summary">
110
+ <xs:complexType>
111
+ <xs:complexContent>
112
+ <xs:extension base="common:element-summary">
113
+ <xs:sequence>
114
+ <xs:element name="title" type="work:work-title"
115
+ minOccurs="1" />
116
+ <xs:element ref="common:external-ids"
117
+ minOccurs="0" />
118
+ <xs:element ref="common:url" minOccurs="0" maxOccurs="1"/>
119
+ <xs:element name="type" type="work:work-type" />
120
+ <xs:element ref="common:publication-date" minOccurs="0" />
121
+ <xs:element name="journal-title" type="common:string-1000"
122
+ minOccurs="0" maxOccurs="1">
123
+ <xs:annotation>
124
+ <xs:documentation>The title of the publication or group under which
125
+ the work was published.
126
+ * If a journal, include the journal title of the work.
127
+ * If a book chapter, use the book title.
128
+ * If a translation or a manual, use the series title.
129
+ * If a dictionary entry, use the dictionary title.
130
+ * If a conference poster, abstract or paper, use the conference name.
131
+ </xs:documentation>
132
+ </xs:annotation>
133
+ </xs:element>
134
+ </xs:sequence>
135
+ </xs:extension>
136
+ </xs:complexContent>
137
+ </xs:complexType>
138
+ </xs:element>
139
+
140
+ <xs:simpleType name="work-type">
141
+ <xs:annotation>
142
+ <xs:documentation>The type of object that the work is, from the list of supported types in https://members.orcid.org/api/resources/work-types
143
+ ORCID will validate this value against the enumeration
144
+ https://github.com/ORCID/orcid-model/blob/master/src/main/java/org/orcid/jaxb/model/common/WorkType.java and other rules when necessary
145
+ </xs:documentation>
146
+ </xs:annotation>
147
+ <xs:restriction base="xs:string" />
148
+ </xs:simpleType>
149
+
150
+ <xs:complexType name="work-contributors">
151
+ <xs:annotation>
152
+ <xs:documentation>Container for the contributors of a Work.
153
+ </xs:documentation>
154
+ </xs:annotation>
155
+ <xs:sequence>
156
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="contributor"
157
+ type="work:contributor" />
158
+ </xs:sequence>
159
+ </xs:complexType>
160
+ <xs:complexType name="contributor">
161
+ <xs:annotation>
162
+ <xs:documentation>A collaborator or other contributor to a work or
163
+ other orcid-activity
164
+ </xs:documentation>
165
+ </xs:annotation>
166
+ <xs:sequence>
167
+ <xs:element ref="common:contributor-orcid" minOccurs="0"
168
+ maxOccurs="1">
169
+ <xs:annotation>
170
+ <xs:documentation>ORCID iD for the contributor - only add if you have collected an authenticated iD for the contributor</xs:documentation>
171
+ </xs:annotation>
172
+ </xs:element>
173
+ <xs:element name="credit-name" type="common:credit-name"
174
+ minOccurs="0" maxOccurs="1" />
175
+ <xs:element name="contributor-email" type="work:contributor-email"
176
+ minOccurs="0" maxOccurs="1" />
177
+ <xs:element name="contributor-attributes" type="work:contributor-attributes"
178
+ minOccurs="0" maxOccurs="1" />
179
+ </xs:sequence>
180
+ </xs:complexType>
181
+ <xs:complexType name="contributor-email">
182
+ <xs:annotation>
183
+ <xs:documentation>Email of the contributor. This field is not returned when reading a work
184
+ </xs:documentation>
185
+ </xs:annotation>
186
+
187
+ <xs:simpleContent>
188
+ <xs:extension base="common:email" />
189
+ </xs:simpleContent>
190
+ </xs:complexType>
191
+ <xs:complexType name="contributor-attributes">
192
+ <xs:annotation>
193
+ <xs:documentation>Provides detail of the nature of the contribution
194
+ by the collaborator or other contirbutor.
195
+ </xs:documentation>
196
+ </xs:annotation>
197
+ <xs:sequence>
198
+ <xs:element name="contributor-sequence" type="work:contributor-sequence"
199
+ minOccurs="0" />
200
+ <xs:element name="contributor-role" type="common:contributor-role"
201
+ minOccurs="0" />
202
+ </xs:sequence>
203
+ </xs:complexType>
204
+ <xs:simpleType name="contributor-sequence">
205
+ <xs:annotation>
206
+ <xs:documentation>Indication of where in the contributor list the
207
+ collaborator or other contributor's name would appear
208
+ </xs:documentation>
209
+ </xs:annotation>
210
+
211
+ <xs:restriction base="xs:string">
212
+ <xs:enumeration value="first" />
213
+ <xs:enumeration value="additional" />
214
+ </xs:restriction>
215
+ </xs:simpleType>
216
+
217
+ <xs:complexType name="work-title">
218
+ <xs:annotation>
219
+ <xs:documentation>Container for titles of the work.
220
+ </xs:documentation>
221
+ </xs:annotation>
222
+ <xs:sequence>
223
+ <xs:element ref="common:title">
224
+ <xs:annotation>
225
+ <xs:documentation>The main name or title of the work. For a
226
+ spin-off company, include use the company name
227
+ </xs:documentation>
228
+ </xs:annotation>
229
+ </xs:element>
230
+ <xs:element ref="common:subtitle" minOccurs="0" />
231
+ <xs:element ref="common:translated-title" minOccurs="0" />
232
+ </xs:sequence>
233
+ </xs:complexType>
234
+
235
+ <xs:complexType name="citation">
236
+ <xs:annotation>
237
+ <xs:documentation>Container for a work citation. Citations may be
238
+ fielded (e.g., RIS, BibTeX - preferred citation type), or may be
239
+ textual (APA, MLA, Chicago, etc.) The required work-citation-type
240
+ element indicates the format of the citation.
241
+ </xs:documentation>
242
+ </xs:annotation>
243
+ <xs:sequence>
244
+ <xs:element name="citation-type" default="formatted-unspecified"
245
+ type="work:citation-type" maxOccurs="1" minOccurs="1" />
246
+ <xs:element name="citation-value" type="xs:string" maxOccurs="1"
247
+ minOccurs="1" />
248
+ </xs:sequence>
249
+ </xs:complexType>
250
+
251
+ <xs:simpleType name="citation-type">
252
+ <xs:annotation>
253
+ <xs:documentation>The type (format) of the citation, selected from the following options (bibtex is preferred):
254
+ * bibtex
255
+ * formatted-apa
256
+ * formatted-chicago
257
+ * formatted-harvard
258
+ * formatted-ieee
259
+ * formatted-mla
260
+ * formatted-vancouver
261
+ * formatted-unspecified
262
+ * ris
263
+ ORCID will validate this value against the enumeration
264
+ https://github.com/ORCID/orcid-model/blob/master/src/main/java/org/orcid/jaxb/model/common/CitationType.java and other rules when necessary
265
+ </xs:documentation>
266
+ </xs:annotation>
267
+ <xs:restriction base="xs:string" />
268
+ </xs:simpleType>
269
+ </xs:schema>