orcid_client 0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. checksums.yaml +7 -0
  2. data/.env.example +10 -0
  3. data/.gitignore +42 -0
  4. data/.travis.yml +17 -0
  5. data/CHANGELOG.md +0 -0
  6. data/Gemfile +4 -0
  7. data/Gemfile.lock +115 -0
  8. data/LICENSE.md +21 -0
  9. data/README.md +45 -0
  10. data/Rakefile +5 -0
  11. data/lib/orcid_client.rb +3 -0
  12. data/lib/orcid_client/api.rb +75 -0
  13. data/lib/orcid_client/author.rb +56 -0
  14. data/lib/orcid_client/base.rb +21 -0
  15. data/lib/orcid_client/date.rb +61 -0
  16. data/lib/orcid_client/metadata.rb +128 -0
  17. data/lib/orcid_client/notification.rb +125 -0
  18. data/lib/orcid_client/version.rb +3 -0
  19. data/lib/orcid_client/work.rb +200 -0
  20. data/lib/orcid_client/work_type.rb +68 -0
  21. data/orcid_client.gemspec +37 -0
  22. data/resources/common_2.0_rc3/common-2.0_rc3.xsd +1624 -0
  23. data/resources/common_2.0_rc3/samples/common-2.0_rc3.xml +8 -0
  24. data/resources/notification_2.0_rc3/notification-custom-2.0_rc3.xsd +32 -0
  25. data/resources/notification_2.0_rc3/notification-permission-2.0_rc3.xsd +128 -0
  26. data/resources/notification_2.0_rc3/samples/notification-custom-2.0_rc3.xml +45 -0
  27. data/resources/notification_2.0_rc3/samples/notification-permission-2.0_rc3.xml +58 -0
  28. data/resources/record_2.0_rc3/activities-2.0_rc3.xsd +187 -0
  29. data/resources/record_2.0_rc3/address-2.0_rc3.xsd +73 -0
  30. data/resources/record_2.0_rc3/bulk-2.0_rc3.xsd +57 -0
  31. data/resources/record_2.0_rc3/deprecated-2.0_rc3.xsd +80 -0
  32. data/resources/record_2.0_rc3/education-2.0_rc3.xsd +96 -0
  33. data/resources/record_2.0_rc3/email-2.0_rc3.xsd +74 -0
  34. data/resources/record_2.0_rc3/employment-2.0_rc3.xsd +96 -0
  35. data/resources/record_2.0_rc3/error-2.0_rc3.xsd +84 -0
  36. data/resources/record_2.0_rc3/funding-2.0_rc3.xsd +257 -0
  37. data/resources/record_2.0_rc3/history-2.0_rc3.xsd +203 -0
  38. data/resources/record_2.0_rc3/internal-2.0_rc3.xsd +199 -0
  39. data/resources/record_2.0_rc3/keyword-2.0_rc3.xsd +72 -0
  40. data/resources/record_2.0_rc3/other-name-2.0_rc3.xsd +88 -0
  41. data/resources/record_2.0_rc3/peer-review-2.0_rc3.xsd +246 -0
  42. data/resources/record_2.0_rc3/person-2.0_rc3.xsd +98 -0
  43. data/resources/record_2.0_rc3/person-external-identifier-2.0_rc3.xsd +63 -0
  44. data/resources/record_2.0_rc3/personal-details-2.0_rc3.xsd +186 -0
  45. data/resources/record_2.0_rc3/preferences-2.0_rc3.xsd +50 -0
  46. data/resources/record_2.0_rc3/record-2.0_rc3.xsd +105 -0
  47. data/resources/record_2.0_rc3/researcher-url-2.0_rc3.xsd +90 -0
  48. data/resources/record_2.0_rc3/samples/activities-2.0_rc3.xml +236 -0
  49. data/resources/record_2.0_rc3/samples/address-2.0_rc3.xml +16 -0
  50. data/resources/record_2.0_rc3/samples/addresses-2.0_rc3.xml +32 -0
  51. data/resources/record_2.0_rc3/samples/biography-2.0_rc3.xml +10 -0
  52. data/resources/record_2.0_rc3/samples/bulk-work-2.0_rc3.json +56 -0
  53. data/resources/record_2.0_rc3/samples/bulk-work-2.0_rc3.xml +62 -0
  54. data/resources/record_2.0_rc3/samples/credit-name-2.0_rc3.xml +5 -0
  55. data/resources/record_2.0_rc3/samples/deprecated-2.0_rc3.xml +13 -0
  56. data/resources/record_2.0_rc3/samples/education-2.0_rc3.xml +30 -0
  57. data/resources/record_2.0_rc3/samples/education-full-2.0_rc3.xml +40 -0
  58. data/resources/record_2.0_rc3/samples/email-2.0_rc3.xml +16 -0
  59. data/resources/record_2.0_rc3/samples/emails-2.0_rc3.xml +31 -0
  60. data/resources/record_2.0_rc3/samples/employment-2.0_rc3.xml +30 -0
  61. data/resources/record_2.0_rc3/samples/employment-full-2.0_rc3.xml +40 -0
  62. data/resources/record_2.0_rc3/samples/error-2.0_rc3.xml +8 -0
  63. data/resources/record_2.0_rc3/samples/external-identifier-2.0_rc3.xml +20 -0
  64. data/resources/record_2.0_rc3/samples/external-identifiers-2.0_rc3.xml +36 -0
  65. data/resources/record_2.0_rc3/samples/funding-2.0_rc3.xml +65 -0
  66. data/resources/record_2.0_rc3/samples/funding-full-2.0_rc3.xml +75 -0
  67. data/resources/record_2.0_rc3/samples/history-2.0_rc3.xml +22 -0
  68. data/resources/record_2.0_rc3/samples/keyword-2.0_rc3.xml +18 -0
  69. data/resources/record_2.0_rc3/samples/keywords-2.0_rc3.xml +34 -0
  70. data/resources/record_2.0_rc3/samples/name-2.0_rc3.xml +12 -0
  71. data/resources/record_2.0_rc3/samples/other-name-2.0_rc3.xml +16 -0
  72. data/resources/record_2.0_rc3/samples/other-names-2.0_rc3.xml +31 -0
  73. data/resources/record_2.0_rc3/samples/peer-review-2.0_rc3.xml +49 -0
  74. data/resources/record_2.0_rc3/samples/peer-review-full-2.0_rc3.xml +59 -0
  75. data/resources/record_2.0_rc3/samples/person-2.0_rc3.xml +122 -0
  76. data/resources/record_2.0_rc3/samples/personal-details-2.0_rc3.xml +47 -0
  77. data/resources/record_2.0_rc3/samples/preferences-2.0_rc3.xml +4 -0
  78. data/resources/record_2.0_rc3/samples/record-2.0_rc3.xml +420 -0
  79. data/resources/record_2.0_rc3/samples/researcher-url-2.0_rc3.xml +19 -0
  80. data/resources/record_2.0_rc3/samples/researcher-urls-2.0_rc3.xml +21 -0
  81. data/resources/record_2.0_rc3/samples/search-2.0_rc3.xml +368 -0
  82. data/resources/record_2.0_rc3/samples/work-2.0_rc3.xml +49 -0
  83. data/resources/record_2.0_rc3/samples/work-full-2.0_rc3.xml +59 -0
  84. data/resources/record_2.0_rc3/search-2.0_rc3.xsd +82 -0
  85. data/resources/record_2.0_rc3/work-2.0_rc3.xsd +445 -0
  86. data/spec/api_spec.rb +59 -0
  87. data/spec/fixtures/vcr_cassettes/OrcidClient/get/should_get_works.yml +646 -0
  88. data/spec/fixtures/vcr_cassettes/OrcidClient/notifications/post/should_create_notification.yml +104 -0
  89. data/spec/fixtures/vcr_cassettes/OrcidClient/works/delete/should_delete_work.yml +38 -0
  90. data/spec/fixtures/vcr_cassettes/OrcidClient/works/get/should_get_works.yml +646 -0
  91. data/spec/fixtures/vcr_cassettes/OrcidClient/works/post/should_create_work.yml +116 -0
  92. data/spec/fixtures/vcr_cassettes/OrcidClient/works/put/should_update_work.yml +155 -0
  93. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/data.yml +44 -0
  94. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_data.yml +44 -0
  95. data/spec/fixtures/vcr_cassettes/OrcidClient_Notification/schema/validates_item_type_work.yml +41 -0
  96. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/citation.yml +50 -0
  97. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/literal.yml +47 -0
  98. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/multiple_titles.yml +47 -0
  99. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/valid.yml +50 -0
  100. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/contributors/with_ORCID_IDs.yml +157 -0
  101. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/data.yml +50 -0
  102. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/publication_date.yml +50 -0
  103. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_ORCID_IDs_for_contributors.yml +157 -0
  104. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_data.yml +50 -0
  105. data/spec/fixtures/vcr_cassettes/OrcidClient_Work/schema/validates_work_type_data-set.yml +47 -0
  106. data/spec/fixtures/work.xml +33 -0
  107. data/spec/notification_spec.rb +42 -0
  108. data/spec/spec_helper.rb +32 -0
  109. data/spec/work_spec.rb +100 -0
  110. metadata +392 -0
@@ -0,0 +1,98 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
+ xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
4
+ targetNamespace="http://www.orcid.org/ns/person" xmlns:person="http://www.orcid.org/ns/person"
5
+ xmlns:other-name="http://www.orcid.org/ns/other-name" xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:researcher-url="http://www.orcid.org/ns/researcher-url"
7
+ xmlns:email="http://www.orcid.org/ns/email" xmlns:personal-details="http://www.orcid.org/ns/personal-details"
8
+ xmlns:address="http://www.orcid.org/ns/address" xmlns:keyword="http://www.orcid.org/ns/keyword"
9
+ xmlns:external-identifier="http://www.orcid.org/ns/external-identifier">
10
+ <xs:annotation>
11
+ <xs:documentation>
12
+ =============================================================================
13
+
14
+ ORCID (R) Open Source
15
+ http://orcid.org
16
+
17
+ Copyright (c) 2012-2014 ORCID,
18
+ Inc.
19
+ Licensed under an MIT-Style License (MIT)
20
+ http://orcid.org/open-source-license
21
+
22
+ This copyright and license
23
+ information (including a link to the full
24
+ license)
25
+ shall be included in
26
+ its entirety in all copies or substantial portion of
27
+ the software.
28
+
29
+ =============================================================================
30
+ The schema describes the message format used for ORCID API requests
31
+ and responses.
32
+ </xs:documentation>
33
+ <xs:appinfo>
34
+ <sch:title>Schematron validation</sch:title>
35
+ <sch:ns prefix="person" uri="http://www.orcid.org/ns/person" />
36
+ </xs:appinfo>
37
+ </xs:annotation>
38
+
39
+ <xs:import namespace="http://www.orcid.org/ns/common"
40
+ schemaLocation="../common_2.0_rc3/common-2.0_rc3.xsd" />
41
+ <xs:import namespace="http://www.orcid.org/ns/personal-details"
42
+ schemaLocation="../record_2.0_rc3/personal-details-2.0_rc3.xsd" />
43
+ <xs:import namespace="http://www.orcid.org/ns/other-name"
44
+ schemaLocation="../record_2.0_rc3/other-name-2.0_rc3.xsd" />
45
+ <xs:import namespace="http://www.orcid.org/ns/researcher-url"
46
+ schemaLocation="../record_2.0_rc3/researcher-url-2.0_rc3.xsd" />
47
+ <xs:import namespace="http://www.orcid.org/ns/email"
48
+ schemaLocation="../record_2.0_rc3/email-2.0_rc3.xsd" />
49
+ <xs:import namespace="http://www.orcid.org/ns/address"
50
+ schemaLocation="../record_2.0_rc3/address-2.0_rc3.xsd" />
51
+ <xs:import namespace="http://www.orcid.org/ns/keyword"
52
+ schemaLocation="../record_2.0_rc3/keyword-2.0_rc3.xsd" />
53
+ <xs:import namespace="http://www.orcid.org/ns/external-identifier"
54
+ schemaLocation="../record_2.0_rc3/person-external-identifier-2.0_rc3.xsd" />
55
+
56
+ <xs:element name="person">
57
+ <xs:annotation>
58
+ <xs:documentation>The biographical details of the researcher or
59
+ contributor.
60
+ </xs:documentation>
61
+ </xs:annotation>
62
+ <xs:complexType>
63
+ <xs:sequence>
64
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
65
+ <xs:element name="name" type="personal-details:name"
66
+ minOccurs="0" maxOccurs="1" />
67
+ <xs:element ref="other-name:other-names" minOccurs="0"
68
+ maxOccurs="1" />
69
+ <xs:element name="biography" type="personal-details:biography"
70
+ minOccurs="0" maxOccurs="1" />
71
+ <xs:element ref="researcher-url:researcher-urls"
72
+ minOccurs="0" maxOccurs="1" />
73
+ <xs:element ref="email:emails" minOccurs="1" maxOccurs="1" />
74
+ <xs:element ref="address:addresses" minOccurs="0"
75
+ maxOccurs="1" />
76
+ <xs:element ref="keyword:keywords" minOccurs="0"
77
+ maxOccurs="1" />
78
+ <xs:element ref="external-identifier:external-identifiers"
79
+ minOccurs="0" maxOccurs="1" />
80
+ </xs:sequence>
81
+ <xs:attribute name="path" type="common:element-path" use="optional" />
82
+ </xs:complexType>
83
+ </xs:element>
84
+
85
+ <xs:complexType name="credit-name">
86
+ <xs:simpleContent>
87
+ <xs:extension base="personal-details:credit-name" />
88
+ </xs:simpleContent>
89
+ </xs:complexType>
90
+
91
+ <xs:complexType name="scope-paths">
92
+ <xs:sequence>
93
+ <xs:element name="scope-path" type="common:scope-path-type"
94
+ minOccurs="1" maxOccurs="unbounded" />
95
+ </xs:sequence>
96
+ </xs:complexType>
97
+
98
+ </xs:schema>
@@ -0,0 +1,63 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
+ xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
4
+ targetNamespace="http://www.orcid.org/ns/external-identifier"
5
+ xmlns:external-identifier="http://www.orcid.org/ns/external-identifier"
6
+ xmlns:common="http://www.orcid.org/ns/common">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2014 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="external-identifier" uri="http://www.orcid.org/ns/external-identifier" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+ <xs:import namespace="http://www.orcid.org/ns/common"
36
+ schemaLocation="../common_2.0_rc3/common-2.0_rc3.xsd" />
37
+
38
+ <xs:element name="external-identifiers">
39
+ <xs:annotation>
40
+ <xs:documentation>External identifier's container</xs:documentation>
41
+ </xs:annotation>
42
+ <xs:complexType>
43
+ <xs:sequence>
44
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
45
+ <xs:element name="external-identifier"
46
+ type="common:external-id" minOccurs="0"
47
+ maxOccurs="unbounded" />
48
+ </xs:sequence>
49
+ <xs:attribute name="path" type="common:element-path" use="optional" />
50
+ </xs:complexType>
51
+ </xs:element>
52
+
53
+ <xs:element name="external-identifier">
54
+ <xs:annotation>
55
+ <xs:documentation>External identifier container</xs:documentation>
56
+ </xs:annotation>
57
+ <xs:complexType>
58
+ <xs:complexContent>
59
+ <xs:extension base="common:external-id" />
60
+ </xs:complexContent>
61
+ </xs:complexType>
62
+ </xs:element>
63
+ </xs:schema>
@@ -0,0 +1,186 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
+ xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
4
+ targetNamespace="http://www.orcid.org/ns/personal-details"
5
+ xmlns:other-name="http://www.orcid.org/ns/other-name" xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:personal-details="http://www.orcid.org/ns/personal-details">
7
+ <xs:annotation>
8
+ <xs:documentation>
9
+ =============================================================================
10
+
11
+ ORCID (R) Open Source
12
+ http://orcid.org
13
+
14
+ Copyright (c) 2012-2014 ORCID,
15
+ Inc.
16
+ Licensed under an MIT-Style License (MIT)
17
+ http://orcid.org/open-source-license
18
+
19
+ This copyright and license
20
+ information (including a link to the full
21
+ license)
22
+ shall be included in
23
+ its entirety in all copies or substantial portion of
24
+ the software.
25
+
26
+ =============================================================================
27
+ The schema describes the message format used for ORCID API requests
28
+ and responses.
29
+ </xs:documentation>
30
+ <xs:appinfo>
31
+ <sch:title>Schematron validation</sch:title>
32
+ <sch:ns prefix="personal-details" uri="http://www.orcid.org/ns/personal-details" />
33
+ </xs:appinfo>
34
+ </xs:annotation>
35
+
36
+ <xs:import namespace="http://www.orcid.org/ns/common"
37
+ schemaLocation="../common_2.0_rc3/common-2.0_rc3.xsd" />
38
+ <xs:import namespace="http://www.orcid.org/ns/other-name"
39
+ schemaLocation="../record_2.0_rc3/other-name-2.0_rc3.xsd" />
40
+
41
+ <xs:element name="personal-details">
42
+ <xs:annotation>
43
+ <xs:documentation>Container for the personal details of the
44
+ researcher or contributor.
45
+ </xs:documentation>
46
+ </xs:annotation>
47
+ <xs:complexType>
48
+ <xs:sequence>
49
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
50
+ <xs:element name="name" type="personal-details:name"
51
+ minOccurs="0" maxOccurs="1" />
52
+ <xs:element ref="other-name:other-names" minOccurs="0"
53
+ maxOccurs="1" />
54
+ <xs:element name="biography" type="personal-details:biography"
55
+ minOccurs="0" maxOccurs="1" />
56
+ </xs:sequence>
57
+ <xs:attribute name="path" type="common:element-path" use="optional" />
58
+ </xs:complexType>
59
+ </xs:element>
60
+
61
+ <xs:element name="name">
62
+ <xs:annotation>
63
+ <xs:documentation>Container for the
64
+ researcher or contributor name.
65
+ </xs:documentation>
66
+ </xs:annotation>
67
+ <xs:complexType>
68
+ <xs:complexContent>
69
+ <xs:extension base="personal-details:name" />
70
+ </xs:complexContent>
71
+ </xs:complexType>
72
+ </xs:element>
73
+
74
+ <xs:element name="credit-name">
75
+ <xs:annotation>
76
+ <xs:documentation>Container for the
77
+ researcher or contributor credit name.
78
+ </xs:documentation>
79
+ </xs:annotation>
80
+ <xs:complexType>
81
+ <xs:simpleContent>
82
+ <xs:extension base="personal-details:credit-name" />
83
+ </xs:simpleContent>
84
+ </xs:complexType>
85
+ </xs:element>
86
+
87
+ <xs:element name="biography">
88
+ <xs:annotation>
89
+ <xs:documentation>Container for the
90
+ researcher or contributor biography.
91
+ </xs:documentation>
92
+ </xs:annotation>
93
+ <xs:complexType>
94
+ <xs:complexContent>
95
+ <xs:extension base="personal-details:biography" />
96
+ </xs:complexContent>
97
+ </xs:complexType>
98
+ </xs:element>
99
+
100
+ <xs:complexType name="name">
101
+ <xs:annotation>
102
+ <xs:documentation>Container for the names of the
103
+ researcher or
104
+ contributor.
105
+ </xs:documentation>
106
+ </xs:annotation>
107
+ <xs:sequence>
108
+ <xs:element ref="common:created-date" minOccurs="0" maxOccurs="1" />
109
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
110
+ <xs:element name="given-names" minOccurs="0" maxOccurs="1">
111
+ <xs:annotation>
112
+ <xs:documentation>The given (first and middle) name(s) of the
113
+ researcher or contributor.
114
+ </xs:documentation>
115
+ </xs:annotation>
116
+ <xs:complexType>
117
+ <xs:simpleContent>
118
+ <xs:extension base="common:non-empty-string" />
119
+ </xs:simpleContent>
120
+ </xs:complexType>
121
+ </xs:element>
122
+ <xs:element name="family-name" minOccurs="0" maxOccurs="1">
123
+ <xs:annotation>
124
+ <xs:documentation>The family (last) name of the researcher or
125
+ contributor. This element is optional, because some cultures only
126
+ use given names.
127
+ </xs:documentation>
128
+ </xs:annotation>
129
+ <xs:complexType>
130
+ <xs:simpleContent>
131
+ <xs:extension base="common:non-empty-string" />
132
+ </xs:simpleContent>
133
+ </xs:complexType>
134
+ </xs:element>
135
+ <xs:element name="credit-name" minOccurs="0" maxOccurs="1">
136
+ <xs:annotation>
137
+ <xs:documentation>The full name of the researcher or contributor
138
+ as
139
+ it generally appears on their published works. (see element
140
+ for
141
+ more details.) The visibility attribute (private, limited or
142
+ public) can be set at record creation, and indicates who can see
143
+ this section of information.
144
+ </xs:documentation>
145
+ </xs:annotation>
146
+ <xs:complexType>
147
+ <xs:simpleContent>
148
+ <xs:extension base="personal-details:credit-name" />
149
+ </xs:simpleContent>
150
+ </xs:complexType>
151
+ </xs:element>
152
+ </xs:sequence>
153
+ <xs:attribute name="visibility" type="common:visibility" use="optional"/>
154
+ <xs:attribute name="path" type="common:element-path" use="optional" />
155
+ </xs:complexType>
156
+
157
+ <xs:complexType name="biography">
158
+ <xs:annotation>
159
+ <xs:documentation>Description of the researcher's professional
160
+ career. The visibility attribute (private, limited or public) can be
161
+ set at record creation, and indicates who can see this section of
162
+ information.
163
+ </xs:documentation>
164
+ </xs:annotation>
165
+ <xs:sequence>
166
+ <xs:element ref="common:created-date" minOccurs="0" maxOccurs="1" />
167
+ <xs:element ref="common:last-modified-date" minOccurs="0" maxOccurs="1" />
168
+ <xs:element minOccurs="1" name="content" type="common:non-empty-string">
169
+ <xs:annotation>
170
+ <xs:documentation>A short display name describing the URL.
171
+ </xs:documentation>
172
+ </xs:annotation>
173
+ </xs:element>
174
+ </xs:sequence>
175
+ <xs:attribute name="visibility" type="common:visibility" use="optional"/>
176
+ <xs:attribute name="path" type="common:element-path" use="optional" />
177
+ </xs:complexType>
178
+
179
+ <xs:complexType name="credit-name">
180
+ <xs:simpleContent>
181
+ <xs:extension base="common:non-empty-string">
182
+ <xs:attribute name="visibility" type="common:visibility" use="optional"/>
183
+ </xs:extension>
184
+ </xs:simpleContent>
185
+ </xs:complexType>
186
+ </xs:schema>
@@ -0,0 +1,50 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
+ xmlns:sch="http://purl.oclc.org/dsdl/schematron" elementFormDefault="qualified"
4
+ targetNamespace="http://www.orcid.org/ns/preferences" xmlns:preferences="http://www.orcid.org/ns/preferences"
5
+ xmlns:common="http://www.orcid.org/ns/common">
6
+ <xs:annotation>
7
+ <xs:documentation>
8
+ =============================================================================
9
+
10
+ ORCID (R) Open Source
11
+ http://orcid.org
12
+
13
+ Copyright (c) 2012-2014 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_2.0_rc3/common-2.0_rc3.xsd" />
37
+ <xs:element name="preferences">
38
+ <xs:complexType>
39
+ <xs:annotation>
40
+ <xs:documentation>Preferences set by the researcher or contributor.
41
+ (currently language preference)
42
+ </xs:documentation>
43
+ </xs:annotation>
44
+ <xs:sequence>
45
+ <xs:element name="locale" type="common:locale" />
46
+ </xs:sequence>
47
+ </xs:complexType>
48
+ </xs:element>
49
+
50
+ </xs:schema>
@@ -0,0 +1,105 @@
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/record" xmlns:internal="http://www.orcid.org/ns/internal"
5
+ xmlns:person="http://www.orcid.org/ns/person" xmlns:common="http://www.orcid.org/ns/common"
6
+ xmlns:work="http://www.orcid.org/ns/work" xmlns:funding="http://www.orcid.org/ns/funding"
7
+ xmlns:education="http://www.orcid.org/ns/education" xmlns:employment="http://www.orcid.org/ns/employment"
8
+ xmlns:deprecated="http://www.orcid.org/ns/deprecated" xmlns:activities="http://www.orcid.org/ns/activities"
9
+ xmlns:history="http://www.orcid.org/ns/history" xmlns:record="http://www.orcid.org/ns/record"
10
+ xmlns:preferences="http://www.orcid.org/ns/preferences" xmlns:peer-review="http://www.orcid.org/ns/peer-review">
11
+ <xs:annotation>
12
+ <xs:documentation>
13
+ =============================================================================
14
+
15
+ ORCID (R) Open Source
16
+ http://orcid.org
17
+
18
+ Copyright (c) 2012-2014 ORCID,
19
+ Inc.
20
+ Licensed under an MIT-Style License (MIT)
21
+ http://orcid.org/open-source-license
22
+
23
+ This copyright and license
24
+ information (including a link to the full
25
+ license)
26
+ shall be included in
27
+ its entirety in all copies or substantial portion of
28
+ the software.
29
+
30
+ =============================================================================
31
+ The schema describes the message format used for ORCID API requests
32
+ and responses.
33
+ The top level element is orcid-message.
34
+ </xs:documentation>
35
+ <xs:appinfo>
36
+ <sch:title>Schematron validation</sch:title>
37
+ <sch:ns prefix="orcid" uri="http://www.orcid.org/ns/orcid" />
38
+ </xs:appinfo>
39
+ </xs:annotation>
40
+
41
+ <xs:import namespace="http://www.orcid.org/ns/activities"
42
+ schemaLocation="activities-2.0_rc3.xsd" />
43
+ <xs:import namespace="http://www.orcid.org/ns/person"
44
+ schemaLocation="person-2.0_rc3.xsd" />
45
+ <xs:import namespace="http://www.orcid.org/ns/common"
46
+ schemaLocation="../common_2.0_rc3/common-2.0_rc3.xsd" />
47
+ <xs:import namespace="http://www.orcid.org/ns/deprecated"
48
+ schemaLocation="deprecated-2.0_rc3.xsd" />
49
+ <xs:import namespace="http://www.orcid.org/ns/history"
50
+ schemaLocation="history-2.0_rc3.xsd" />
51
+ <xs:import namespace="http://www.orcid.org/ns/internal"
52
+ schemaLocation="internal-2.0_rc3.xsd" />
53
+ <xs:import namespace="http://www.orcid.org/ns/preferences"
54
+ schemaLocation="preferences-2.0_rc3.xsd" />
55
+ <xs:import namespace="http://www.orcid.org/ns/work"
56
+ schemaLocation="work-2.0_rc3.xsd" />
57
+ <xs:import namespace="http://www.orcid.org/ns/funding"
58
+ schemaLocation="funding-2.0_rc3.xsd" />
59
+ <xs:import namespace="http://www.orcid.org/ns/education"
60
+ schemaLocation="education-2.0_rc3.xsd" />
61
+ <xs:import namespace="http://www.orcid.org/ns/employment"
62
+ schemaLocation="employment-2.0_rc3.xsd" />
63
+ <xs:import namespace="http://www.orcid.org/ns/peer-review"
64
+ schemaLocation="peer-review-2.0_rc3.xsd" />
65
+
66
+ <xs:element name="record">
67
+ <xs:complexType>
68
+ <xs:annotation>
69
+ <xs:documentation>The container element for a researcher or
70
+ contributor ORCID Record.
71
+ * The type attribute can only be set by
72
+ ORCID, and indicates the type of ORCID Record the information
73
+ refers
74
+ to. In most cases the value will be "user" to indicate an
75
+ ORCID iD
76
+ holder.
77
+ * The client type attribute is set by ORCID, and is
78
+ present
79
+ when the type attribute is "group" or "client". This
80
+ attribute
81
+ indicates the API privileges held by the group as
82
+ indicated by
83
+ their
84
+ ORCID Membership Agreement.
85
+ </xs:documentation>
86
+ </xs:annotation>
87
+ <xs:sequence>
88
+ <xs:element ref="common:orcid-identifier" minOccurs="0"
89
+ maxOccurs="1" />
90
+ <xs:element ref="deprecated:deprecated" minOccurs="0"
91
+ maxOccurs="1" />
92
+ <xs:element ref="preferences:preferences" minOccurs="0"
93
+ maxOccurs="1" />
94
+ <xs:element ref="history:history" minOccurs="0"
95
+ maxOccurs="1" />
96
+ <xs:element ref="person:person" minOccurs="0" maxOccurs="1" />
97
+ <xs:element ref="activities:activities-summary"
98
+ minOccurs="0" maxOccurs="1" />
99
+ <xs:element ref="internal:internal" minOccurs="0"
100
+ maxOccurs="1" />
101
+ </xs:sequence>
102
+ </xs:complexType>
103
+ </xs:element>
104
+
105
+ </xs:schema>