nominet-epp 0.0.12 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (197) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +24 -0
  3. data/.travis.yml +14 -0
  4. data/.yardopts +8 -2
  5. data/Gemfile +22 -0
  6. data/Gemfile.lock +64 -0
  7. data/HISTORY.md +78 -0
  8. data/LICENSE +1 -1
  9. data/README.md +23 -0
  10. data/Rakefile +2 -37
  11. data/gemfiles/Gemfile.ruby18 +13 -0
  12. data/lib/nominet-epp/client.rb +364 -0
  13. data/lib/nominet-epp/notification.rb +346 -0
  14. data/lib/nominet-epp/operations.rb +2 -7
  15. data/lib/nominet-epp/request.rb +165 -0
  16. data/lib/nominet-epp/requests/contact/check.rb +9 -0
  17. data/lib/nominet-epp/requests/contact/create.rb +60 -0
  18. data/lib/nominet-epp/requests/contact/delete.rb +9 -0
  19. data/lib/nominet-epp/requests/contact/info.rb +9 -0
  20. data/lib/nominet-epp/requests/contact/release.rb +33 -0
  21. data/lib/nominet-epp/requests/contact/update.rb +63 -0
  22. data/lib/nominet-epp/requests/custom/handshake.rb +36 -0
  23. data/lib/nominet-epp/requests/custom/list.rb +38 -0
  24. data/lib/nominet-epp/requests/custom/tag_list.rb +25 -0
  25. data/lib/nominet-epp/requests/domain/check.rb +98 -0
  26. data/lib/nominet-epp/requests/domain/create.rb +97 -0
  27. data/lib/nominet-epp/requests/domain/delete.rb +9 -0
  28. data/lib/nominet-epp/requests/domain/info.rb +9 -0
  29. data/lib/nominet-epp/requests/domain/release.rb +33 -0
  30. data/lib/nominet-epp/requests/domain/renew.rb +9 -0
  31. data/lib/nominet-epp/requests/domain/unrenew.rb +33 -0
  32. data/lib/nominet-epp/requests/domain/update.rb +134 -0
  33. data/lib/nominet-epp/requests/host/check.rb +9 -0
  34. data/lib/nominet-epp/requests/host/create.rb +9 -0
  35. data/lib/nominet-epp/requests/host/delete.rb +9 -0
  36. data/lib/nominet-epp/requests/host/info.rb +9 -0
  37. data/lib/nominet-epp/requests/host/update.rb +9 -0
  38. data/lib/nominet-epp/responses/contact/check_response.rb +10 -0
  39. data/lib/nominet-epp/responses/contact/create_response.rb +14 -0
  40. data/lib/nominet-epp/responses/contact/delete_response.rb +10 -0
  41. data/lib/nominet-epp/responses/contact/info_response.rb +89 -0
  42. data/lib/nominet-epp/responses/contact/release_response.rb +10 -0
  43. data/lib/nominet-epp/responses/contact/update_response.rb +10 -0
  44. data/lib/nominet-epp/responses/custom/handshake_response.rb +33 -0
  45. data/lib/nominet-epp/responses/custom/list_response.rb +29 -0
  46. data/lib/nominet-epp/responses/custom/tag_list_response.rb +37 -0
  47. data/lib/nominet-epp/responses/domain/check_response.rb +40 -0
  48. data/lib/nominet-epp/responses/domain/create_response.rb +10 -0
  49. data/lib/nominet-epp/responses/domain/delete_response.rb +10 -0
  50. data/lib/nominet-epp/responses/domain/info_response.rb +128 -0
  51. data/lib/nominet-epp/responses/domain/release_response.rb +10 -0
  52. data/lib/nominet-epp/responses/domain/renew_response.rb +10 -0
  53. data/lib/nominet-epp/responses/domain/unrenew_response.rb +26 -0
  54. data/lib/nominet-epp/responses/domain/update_response.rb +10 -0
  55. data/lib/nominet-epp/responses/host/check_response.rb +10 -0
  56. data/lib/nominet-epp/responses/host/create_response.rb +14 -0
  57. data/lib/nominet-epp/responses/host/delete_response.rb +10 -0
  58. data/lib/nominet-epp/responses/host/info_response.rb +14 -0
  59. data/lib/nominet-epp/responses/host/update_response.rb +10 -0
  60. data/lib/nominet-epp/responses/response.rb +27 -0
  61. data/lib/nominet-epp/version.rb +4 -0
  62. data/lib/nominet-epp.rb +60 -161
  63. data/nominet-epp.gemspec +15 -65
  64. data/test/helper.rb +57 -0
  65. data/test/notifications/test_contact_deleted_notification.rb +23 -0
  66. data/test/notifications/test_domain_cancelled_notification.rb +23 -0
  67. data/test/notifications/test_domains_released_notification.rb +34 -0
  68. data/test/notifications/test_domains_suspended_notification.rb +30 -0
  69. data/test/notifications/test_handshake_rejected_notification.rb +34 -0
  70. data/test/notifications/test_registrant_transfer_notification.rb +78 -0
  71. data/test/notifications/test_registrar_change_notification.rb +119 -0
  72. data/test/requests/contact/test_contact_check_request.rb +25 -0
  73. data/test/requests/contact/test_contact_create_request.rb +104 -0
  74. data/test/requests/contact/test_contact_delete_request.rb +20 -0
  75. data/test/requests/contact/test_contact_info_request.rb +20 -0
  76. data/test/requests/contact/test_contact_release_request.rb +29 -0
  77. data/test/requests/contact/test_contact_update_request.rb +111 -0
  78. data/test/requests/custom/test_custom_handshake_request.rb +42 -0
  79. data/test/requests/custom/test_custom_list_request.rb +44 -0
  80. data/test/requests/custom/test_custom_tag_list_request.rb +21 -0
  81. data/test/requests/domain/test_domain_check_request.rb +140 -0
  82. data/test/requests/domain/test_domain_create_request.rb +136 -0
  83. data/test/requests/domain/test_domain_delete_request.rb +20 -0
  84. data/test/requests/domain/test_domain_info_request.rb +20 -0
  85. data/test/requests/domain/test_domain_release_request.rb +29 -0
  86. data/test/requests/domain/test_domain_renew_request.rb +15 -0
  87. data/test/requests/domain/test_domain_unrenew_request.rb +32 -0
  88. data/test/requests/domain/test_domain_update_request.rb +163 -0
  89. data/test/requests/host/test_host_check_request.rb +25 -0
  90. data/test/requests/host/test_host_create_request.rb +33 -0
  91. data/test/requests/host/test_host_delete_request.rb +20 -0
  92. data/test/requests/host/test_host_info_request.rb +20 -0
  93. data/test/requests/host/test_host_update_request.rb +55 -0
  94. data/test/responses/contact/test_contact_check_response.rb +28 -0
  95. data/test/responses/contact/test_contact_create_response.rb +28 -0
  96. data/test/responses/contact/test_contact_delete_response.rb +18 -0
  97. data/test/responses/contact/test_contact_info_response.rb +79 -0
  98. data/test/responses/contact/test_contact_release_response.rb +18 -0
  99. data/test/responses/contact/test_contact_update_response.rb +18 -0
  100. data/test/responses/custom/test_custom_handshake_response.rb +27 -0
  101. data/test/responses/custom/test_custom_list_response.rb +44 -0
  102. data/test/responses/custom/test_custom_tag_list_response.rb +43 -0
  103. data/test/responses/domain/test_domain_check_response.rb +56 -0
  104. data/test/responses/domain/test_domain_create_response.rb +34 -0
  105. data/test/responses/domain/test_domain_delete_response.rb +18 -0
  106. data/test/responses/domain/test_domain_info_response.rb +76 -0
  107. data/test/responses/domain/test_domain_release_response.rb +18 -0
  108. data/test/responses/domain/test_domain_renew_response.rb +27 -0
  109. data/test/responses/domain/test_domain_unrenew_response.rb +32 -0
  110. data/test/responses/domain/test_domain_update_response.rb +18 -0
  111. data/test/responses/host/test_host_check_response.rb +28 -0
  112. data/test/responses/host/test_host_create_response.rb +28 -0
  113. data/test/responses/host/test_host_delete_response.rb +18 -0
  114. data/test/responses/host/test_host_info_response.rb +28 -0
  115. data/test/responses/host/test_host_update_response.rb +18 -0
  116. data/test/support/responses/contact/check.xml +23 -0
  117. data/test/support/responses/contact/create.xml +23 -0
  118. data/test/support/responses/contact/delete.xml +12 -0
  119. data/test/support/responses/contact/info.xml +46 -0
  120. data/test/support/responses/contact/release.xml +12 -0
  121. data/test/support/responses/contact/update.xml +12 -0
  122. data/test/support/responses/custom/handshake.xml +24 -0
  123. data/test/support/responses/custom/list.xml +28 -0
  124. data/test/support/responses/custom/list_empty.xml +21 -0
  125. data/test/support/responses/custom/tag_list.xml +28 -0
  126. data/test/support/responses/domain/check-direct-rights.xml +1 -0
  127. data/test/support/responses/domain/check.xml +25 -0
  128. data/test/support/responses/domain/create.xml +24 -0
  129. data/test/support/responses/domain/delete.xml +12 -0
  130. data/test/support/responses/domain/info.xml +45 -0
  131. data/test/support/responses/domain/release.xml +12 -0
  132. data/test/support/responses/domain/renew.xml +24 -0
  133. data/test/support/responses/domain/unrenew.xml +26 -0
  134. data/test/support/responses/domain/update.xml +12 -0
  135. data/test/support/responses/host/check.xml +23 -0
  136. data/test/support/responses/host/create.xml +18 -0
  137. data/test/support/responses/host/delete.xml +12 -0
  138. data/test/support/responses/host/info.xml +25 -0
  139. data/test/support/responses/host/update.xml +12 -0
  140. data/test/support/responses/notifications/abuse-feed.xml +31 -0
  141. data/test/support/responses/notifications/account-change.xml +39 -0
  142. data/test/support/responses/notifications/contact-deleted.xml +22 -0
  143. data/test/support/responses/notifications/data-quality.xml +53 -0
  144. data/test/support/responses/notifications/domain-cancelled.xml +22 -0
  145. data/test/support/responses/notifications/domains-released.xml +31 -0
  146. data/test/support/responses/notifications/domains-suspended.xml +26 -0
  147. data/test/support/responses/notifications/handshake-rejected.xml +31 -0
  148. data/test/support/responses/notifications/handshake-request.xml +65 -0
  149. data/test/support/responses/notifications/hosts-cancelled.xml +28 -0
  150. data/test/support/responses/notifications/referral-accepted.xml +23 -0
  151. data/test/support/responses/notifications/referral-rejected.xml +22 -0
  152. data/test/support/responses/notifications/registrant-transfer.xml +54 -0
  153. data/test/support/responses/notifications/registrar-change.xml +67 -0
  154. data/test/support/schemas/README +12 -0
  155. data/test/support/schemas/RELEASENOTES +54 -0
  156. data/test/support/schemas/contact-1.0.xsd +387 -0
  157. data/test/support/schemas/contact-nom-ext-1.0.xsd +144 -0
  158. data/test/support/schemas/domain-1.0.xsd +432 -0
  159. data/test/support/schemas/domain-nom-ext-1.2.xsd +215 -0
  160. data/test/support/schemas/epp-1.0.xsd +403 -0
  161. data/test/support/schemas/eppcom-1.0.xsd +93 -0
  162. data/test/support/schemas/host-1.0.xsd +240 -0
  163. data/test/support/schemas/nom-abuse-feed-1.0.xsd +46 -0
  164. data/test/support/schemas/nom-direct-rights-1.0.xsd +48 -0
  165. data/test/support/schemas/nom-root-std-1.0.7.xsd +47 -0
  166. data/test/support/schemas/nom-root-tag-1.0.xsd +31 -0
  167. data/test/support/schemas/nom-tag-1.0.xsd +71 -0
  168. data/test/support/schemas/secDNS-1.1.xsd +127 -0
  169. data/test/support/schemas/std-contact-id-1.0.xsd +35 -0
  170. data/test/support/schemas/std-fork-1.0.xsd +31 -0
  171. data/test/support/schemas/std-handshake-1.0.xsd +61 -0
  172. data/test/support/schemas/std-list-1.0.xsd +55 -0
  173. data/test/support/schemas/std-locks-1.0.xsd +53 -0
  174. data/test/support/schemas/std-notifications-1.2.xsd +197 -0
  175. data/test/support/schemas/std-release-1.0.xsd +39 -0
  176. data/test/support/schemas/std-unrenew-1.0.xsd +26 -0
  177. data/test/support/schemas/std-warning-1.1.xsd +145 -0
  178. data/test/test_nominet-epp.rb +3 -3
  179. metadata +324 -104
  180. data/History.rdoc +0 -78
  181. data/README.rdoc +0 -23
  182. data/VERSION +0 -1
  183. data/lib/nominet-epp/operations/check.rb +0 -39
  184. data/lib/nominet-epp/operations/create.rb +0 -138
  185. data/lib/nominet-epp/operations/delete.rb +0 -20
  186. data/lib/nominet-epp/operations/fork.rb +0 -53
  187. data/lib/nominet-epp/operations/hello.rb +0 -11
  188. data/lib/nominet-epp/operations/info.rb +0 -93
  189. data/lib/nominet-epp/operations/list.rb +0 -83
  190. data/lib/nominet-epp/operations/lock.rb +0 -56
  191. data/lib/nominet-epp/operations/merge.rb +0 -41
  192. data/lib/nominet-epp/operations/poll.rb +0 -64
  193. data/lib/nominet-epp/operations/renew.rb +0 -40
  194. data/lib/nominet-epp/operations/transfer.rb +0 -84
  195. data/lib/nominet-epp/operations/unlock.rb +0 -56
  196. data/lib/nominet-epp/operations/unrenew.rb +0 -36
  197. data/lib/nominet-epp/operations/update.rb +0 -176
@@ -0,0 +1,403 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <schema targetNamespace="urn:ietf:params:xml:ns:epp-1.0"
3
+ xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
4
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
5
+ xmlns="http://www.w3.org/2001/XMLSchema"
6
+ elementFormDefault="qualified">
7
+ <!--
8
+ Import common element types.
9
+ -->
10
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom-1.0.xsd"/>
11
+
12
+ <annotation>
13
+ <documentation>
14
+ Extensible Provisioning Protocol v1.0 schema.
15
+ </documentation>
16
+ </annotation>
17
+ <!--
18
+ Every EPP XML instance must begin with this element.
19
+ -->
20
+ <element name="epp" type="epp:eppType"/>
21
+ <!--
22
+ An EPP XML instance must contain a greeting, hello, command,
23
+ response, or extension.
24
+ -->
25
+ <complexType name="eppType">
26
+ <choice>
27
+ <element name="greeting" type="epp:greetingType"/>
28
+ <element name="hello"/>
29
+ <element name="command" type="epp:commandType"/>
30
+ <element name="response" type="epp:responseType"/>
31
+ <element name="extension" type="epp:extAnyType"/>
32
+ </choice>
33
+ </complexType>
34
+ <!--
35
+ A greeting is sent by a server in response to a client connection
36
+ or <hello>.
37
+ -->
38
+ <complexType name="greetingType">
39
+ <sequence>
40
+ <element name="svID" type="epp:sIDType"/>
41
+ <element name="svDate" type="dateTime"/>
42
+ <element name="svcMenu" type="epp:svcMenuType"/>
43
+ <element name="dcp" type="epp:dcpType"/>
44
+ </sequence>
45
+ </complexType>
46
+ <!--
47
+ Server IDs are strings with minimum and maximum length restrictions.
48
+ -->
49
+ <simpleType name="sIDType">
50
+ <restriction base="normalizedString">
51
+ <minLength value="3"/>
52
+ <maxLength value="64"/>
53
+ </restriction>
54
+ </simpleType>
55
+ <!--
56
+ A server greeting identifies available object services.
57
+ -->
58
+ <complexType name="svcMenuType">
59
+ <sequence>
60
+ <element name="version" type="epp:versionType"
61
+ maxOccurs="unbounded"/>
62
+ <element name="lang" type="language"
63
+ maxOccurs="unbounded"/>
64
+ <element name="objURI" type="anyURI"
65
+ maxOccurs="unbounded"/>
66
+ <element name="svcExtension" type="epp:extURIType"
67
+ minOccurs="0"/>
68
+ </sequence>
69
+ </complexType>
70
+ <!--
71
+ Data Collection Policy types.
72
+ -->
73
+ <complexType name="dcpType">
74
+ <sequence>
75
+ <element name="access" type="epp:dcpAccessType"/>
76
+ <element name="statement" type="epp:dcpStatementType"
77
+ maxOccurs="unbounded"/>
78
+ <element name="expiry" type="epp:dcpExpiryType"
79
+ minOccurs="0"/>
80
+ </sequence>
81
+ </complexType>
82
+ <complexType name="dcpAccessType">
83
+ <choice>
84
+ <element name="all"/>
85
+ <element name="none"/>
86
+ <element name="null"/>
87
+ <element name="other"/>
88
+ <element name="personal"/>
89
+ <element name="personalAndOther"/>
90
+ </choice>
91
+ </complexType>
92
+ <complexType name="dcpStatementType">
93
+ <sequence>
94
+ <element name="purpose" type="epp:dcpPurposeType"/>
95
+ <element name="recipient" type="epp:dcpRecipientType"/>
96
+ <element name="retention" type="epp:dcpRetentionType"/>
97
+ </sequence>
98
+ </complexType>
99
+ <complexType name="dcpPurposeType">
100
+ <sequence>
101
+ <element name="admin"
102
+ minOccurs="0"/>
103
+ <element name="contact"
104
+ minOccurs="0"/>
105
+ <element name="other"
106
+ minOccurs="0"/>
107
+ <element name="prov"
108
+ minOccurs="0"/>
109
+ </sequence>
110
+ </complexType>
111
+ <complexType name="dcpRecipientType">
112
+ <sequence>
113
+ <element name="other"
114
+ minOccurs="0"/>
115
+ <element name="ours" type="epp:dcpOursType"
116
+ minOccurs="0" maxOccurs="unbounded"/>
117
+ <element name="public"
118
+ minOccurs="0"/>
119
+ <element name="same"
120
+ minOccurs="0"/>
121
+ <element name="unrelated"
122
+ minOccurs="0"/>
123
+ </sequence>
124
+ </complexType>
125
+ <complexType name="dcpOursType">
126
+ <sequence>
127
+ <element name="recDesc" type="epp:dcpRecDescType"
128
+ minOccurs="0"/>
129
+ </sequence>
130
+ </complexType>
131
+ <simpleType name="dcpRecDescType">
132
+ <restriction base="token">
133
+ <minLength value="1"/>
134
+ <maxLength value="255"/>
135
+ </restriction>
136
+ </simpleType>
137
+ <complexType name="dcpRetentionType">
138
+ <choice>
139
+ <element name="business"/>
140
+ <element name="indefinite"/>
141
+ <element name="legal"/>
142
+ <element name="none"/>
143
+ <element name="stated"/>
144
+ </choice>
145
+ </complexType>
146
+ <complexType name="dcpExpiryType">
147
+ <choice>
148
+ <element name="absolute" type="dateTime"/>
149
+ <element name="relative" type="duration"/>
150
+ </choice>
151
+ </complexType>
152
+ <!--
153
+ Extension framework types.
154
+ -->
155
+ <complexType name="extAnyType">
156
+ <sequence>
157
+ <any namespace="##other"
158
+ maxOccurs="unbounded"/>
159
+ </sequence>
160
+ </complexType>
161
+ <complexType name="extURIType">
162
+ <sequence>
163
+ <element name="extURI" type="anyURI"
164
+ maxOccurs="unbounded"/>
165
+ </sequence>
166
+ </complexType>
167
+ <!--
168
+ An EPP version number is a dotted pair of decimal numbers.
169
+ -->
170
+ <simpleType name="versionType">
171
+ <restriction base="token">
172
+ <pattern value="[1-9]+\.[0-9]+"/>
173
+ <enumeration value="1.0"/>
174
+ </restriction>
175
+ </simpleType>
176
+ <!--
177
+ Command types.
178
+ -->
179
+ <complexType name="commandType">
180
+ <sequence>
181
+ <choice>
182
+ <element name="check" type="epp:readWriteType"/>
183
+ <element name="create" type="epp:readWriteType"/>
184
+ <element name="delete" type="epp:readWriteType"/>
185
+ <element name="info" type="epp:readWriteType"/>
186
+ <element name="login" type="epp:loginType"/>
187
+ <element name="logout"/>
188
+ <element name="poll" type="epp:pollType"/>
189
+ <element name="renew" type="epp:readWriteType"/>
190
+ <element name="transfer" type="epp:transferType"/>
191
+ <element name="update" type="epp:readWriteType"/>
192
+ </choice>
193
+ <element name="extension" type="epp:extAnyType"
194
+ minOccurs="0"/>
195
+ <element name="clTRID" type="epp:trIDStringType"
196
+ minOccurs="0"/>
197
+ </sequence>
198
+ </complexType>
199
+ <!--
200
+ The <login> command.
201
+ -->
202
+ <complexType name="loginType">
203
+ <sequence>
204
+ <element name="clID" type="eppcom:clIDType"/>
205
+ <element name="pw" type="epp:pwType"/>
206
+ <element name="newPW" type="epp:pwType"
207
+ minOccurs="0"/>
208
+ <element name="options" type="epp:credsOptionsType"/>
209
+ <element name="svcs" type="epp:loginSvcType"/>
210
+ </sequence>
211
+ </complexType>
212
+ <complexType name="credsOptionsType">
213
+ <sequence>
214
+ <element name="version" type="epp:versionType"/>
215
+ <element name="lang" type="language"/>
216
+ </sequence>
217
+ </complexType>
218
+ <simpleType name="pwType">
219
+ <restriction base="token">
220
+ <minLength value="6"/>
221
+ <maxLength value="16"/>
222
+ </restriction>
223
+ </simpleType>
224
+ <complexType name="loginSvcType">
225
+ <sequence>
226
+ <element name="objURI" type="anyURI"
227
+ maxOccurs="unbounded"/>
228
+ <element name="svcExtension" type="epp:extURIType"
229
+ minOccurs="0"/>
230
+ </sequence>
231
+ </complexType>
232
+ <!--
233
+ The <poll> command.
234
+ -->
235
+ <complexType name="pollType">
236
+ <attribute name="op" type="epp:pollOpType"
237
+ use="required"/>
238
+ <attribute name="msgID" type="token"/>
239
+ </complexType>
240
+ <simpleType name="pollOpType">
241
+ <restriction base="token">
242
+ <enumeration value="ack"/>
243
+ <enumeration value="req"/>
244
+ </restriction>
245
+ </simpleType>
246
+ <!--
247
+ The <transfer> command. This is object-specific, and uses attributes
248
+ to identify the requested operation.
249
+ -->
250
+ <complexType name="transferType">
251
+ <sequence>
252
+ <any namespace="##other"/>
253
+ </sequence>
254
+ <attribute name="op" type="epp:transferOpType"
255
+ use="required"/>
256
+ </complexType>
257
+ <simpleType name="transferOpType">
258
+ <restriction base="token">
259
+ <enumeration value="approve"/>
260
+ <enumeration value="cancel"/>
261
+ <enumeration value="query"/>
262
+ <enumeration value="reject"/>
263
+ <enumeration value="request"/>
264
+ </restriction>
265
+ </simpleType>
266
+ <!--
267
+ All other object-centric commands. EPP doesn't specify the syntax or
268
+ semantics of object-centric command elements. The elements MUST be
269
+ described in detail in another schema specific to the object.
270
+ -->
271
+ <complexType name="readWriteType">
272
+ <sequence>
273
+ <any namespace="##other"/>
274
+ </sequence>
275
+ </complexType>
276
+ <complexType name="trIDType">
277
+ <sequence>
278
+ <element name="clTRID" type="epp:trIDStringType"
279
+ minOccurs="0"/>
280
+ <element name="svTRID" type="epp:trIDStringType"/>
281
+ </sequence>
282
+ </complexType>
283
+ <simpleType name="trIDStringType">
284
+ <restriction base="token">
285
+ <minLength value="3"/>
286
+ <maxLength value="64"/>
287
+ </restriction>
288
+ </simpleType>
289
+ <!--
290
+ Response types.
291
+ -->
292
+ <complexType name="responseType">
293
+ <sequence>
294
+ <element name="result" type="epp:resultType"
295
+ maxOccurs="unbounded"/>
296
+ <element name="msgQ" type="epp:msgQType"
297
+ minOccurs="0"/>
298
+ <element name="resData" type="epp:extAnyType"
299
+ minOccurs="0"/>
300
+ <element name="extension" type="epp:extAnyType"
301
+ minOccurs="0"/>
302
+ <element name="trID" type="epp:trIDType"/>
303
+ </sequence>
304
+ </complexType>
305
+ <complexType name="resultType">
306
+ <sequence>
307
+ <element name="msg" type="epp:msgType"/>
308
+ <choice minOccurs="0" maxOccurs="unbounded">
309
+ <element name="value" type="epp:errValueType"/>
310
+ <element name="extValue" type="epp:extErrValueType"/>
311
+ </choice>
312
+ </sequence>
313
+ <attribute name="code" type="epp:resultCodeType"
314
+ use="required"/>
315
+ </complexType>
316
+ <complexType name="errValueType" mixed="true">
317
+ <sequence>
318
+ <any namespace="##any" processContents="skip"/>
319
+ </sequence>
320
+ <anyAttribute namespace="##any" processContents="skip"/>
321
+ </complexType>
322
+ <complexType name="extErrValueType">
323
+ <sequence>
324
+ <element name="value" type="epp:errValueType"/>
325
+ <element name="reason" type="epp:msgType"/>
326
+ </sequence>
327
+ </complexType>
328
+ <complexType name="msgQType">
329
+ <sequence>
330
+ <element name="qDate" type="dateTime"
331
+ minOccurs="0"/>
332
+ <element name="msg" type="epp:mixedMsgType"
333
+ minOccurs="0"/>
334
+ </sequence>
335
+ <attribute name="count" type="unsignedLong"
336
+ use="required"/>
337
+ <attribute name="id" type="eppcom:minTokenType"
338
+ use="required"/>
339
+ </complexType>
340
+ <complexType name="mixedMsgType" mixed="true">
341
+ <sequence>
342
+ <any processContents="skip"
343
+ minOccurs="0" maxOccurs="unbounded"/>
344
+ </sequence>
345
+ <attribute name="lang" type="language"
346
+ default="en"/>
347
+ </complexType>
348
+ <!--
349
+ Human-readable text may be expressed in languages other than English.
350
+ -->
351
+ <complexType name="msgType">
352
+ <simpleContent>
353
+ <extension base="normalizedString">
354
+ <attribute name="lang" type="language"
355
+ default="en"/>
356
+ </extension>
357
+ </simpleContent>
358
+ </complexType>
359
+ <!--
360
+ EPP result codes.
361
+ -->
362
+ <simpleType name="resultCodeType">
363
+ <restriction base="unsignedShort">
364
+ <enumeration value="1000"/>
365
+ <enumeration value="1001"/>
366
+ <enumeration value="1300"/>
367
+ <enumeration value="1301"/>
368
+ <enumeration value="1500"/>
369
+ <enumeration value="2000"/>
370
+ <enumeration value="2001"/>
371
+ <enumeration value="2002"/>
372
+ <enumeration value="2003"/>
373
+ <enumeration value="2004"/>
374
+ <enumeration value="2005"/>
375
+ <enumeration value="2100"/>
376
+ <enumeration value="2101"/>
377
+ <enumeration value="2102"/>
378
+ <enumeration value="2103"/>
379
+ <enumeration value="2104"/>
380
+ <enumeration value="2105"/>
381
+ <enumeration value="2106"/>
382
+ <enumeration value="2200"/>
383
+ <enumeration value="2201"/>
384
+ <enumeration value="2202"/>
385
+ <enumeration value="2300"/>
386
+ <enumeration value="2301"/>
387
+ <enumeration value="2302"/>
388
+ <enumeration value="2303"/>
389
+ <enumeration value="2304"/>
390
+ <enumeration value="2305"/>
391
+ <enumeration value="2306"/>
392
+ <enumeration value="2307"/>
393
+ <enumeration value="2308"/>
394
+ <enumeration value="2400"/>
395
+ <enumeration value="2500"/>
396
+ <enumeration value="2501"/>
397
+ <enumeration value="2502"/>
398
+ </restriction>
399
+ </simpleType>
400
+ <!--
401
+ End of schema.
402
+ -->
403
+ </schema>
@@ -0,0 +1,93 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <schema targetNamespace="urn:ietf:params:xml:ns:eppcom-1.0"
3
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
4
+ xmlns="http://www.w3.org/2001/XMLSchema"
5
+ elementFormDefault="qualified">
6
+ <annotation>
7
+ <documentation>
8
+ Extensible Provisioning Protocol v1.0
9
+ shared structures schema.
10
+ </documentation>
11
+ </annotation>
12
+ <!--
13
+ Object authorization information types.
14
+ -->
15
+ <complexType name="pwAuthInfoType">
16
+ <simpleContent>
17
+ <extension base="normalizedString">
18
+ <attribute name="roid" type="eppcom:roidType"/>
19
+ </extension>
20
+ </simpleContent>
21
+ </complexType>
22
+ <complexType name="extAuthInfoType">
23
+ <sequence>
24
+ <any namespace="##other"/>
25
+ </sequence>
26
+ </complexType>
27
+ <!--
28
+ <check> response types.
29
+ -->
30
+ <complexType name="reasonType">
31
+ <simpleContent>
32
+ <extension base="eppcom:reasonBaseType">
33
+ <attribute name="lang" type="language"/>
34
+ </extension>
35
+ </simpleContent>
36
+ </complexType>
37
+ <simpleType name="reasonBaseType">
38
+ <restriction base="token">
39
+ <minLength value="1"/>
40
+ <maxLength value="32"/>
41
+ </restriction>
42
+ </simpleType>
43
+ <!--
44
+ Abstract client and object identifier type.
45
+ -->
46
+ <simpleType name="clIDType">
47
+ <restriction base="token">
48
+ <minLength value="3"/>
49
+ <maxLength value="16"/>
50
+ </restriction>
51
+ </simpleType>
52
+ <!--
53
+ DNS label type.
54
+ -->
55
+ <simpleType name="labelType">
56
+ <restriction base="token">
57
+ <minLength value="1"/>
58
+ <maxLength value="255"/>
59
+ </restriction>
60
+ </simpleType>
61
+ <!--
62
+ Non-empty token type.
63
+ -->
64
+ <simpleType name="minTokenType">
65
+ <restriction base="token">
66
+ <minLength value="1"/>
67
+ </restriction>
68
+ </simpleType>
69
+ <!--
70
+ Repository Object IDentifier type.
71
+ -->
72
+ <simpleType name="roidType">
73
+ <restriction base="token">
74
+ <pattern value="(\w|_){1,80}-\w{1,8}"/>
75
+ </restriction>
76
+ </simpleType>
77
+ <!--
78
+ Transfer status identifiers.
79
+ -->
80
+ <simpleType name="trStatusType">
81
+ <restriction base="token">
82
+ <enumeration value="clientApproved"/>
83
+ <enumeration value="clientCancelled"/>
84
+ <enumeration value="clientRejected"/>
85
+ <enumeration value="pending"/>
86
+ <enumeration value="serverApproved"/>
87
+ <enumeration value="serverCancelled"/>
88
+ </restriction>
89
+ </simpleType>
90
+ <!--
91
+ End of schema.
92
+ -->
93
+ </schema>