idnits 2.17.1 draft-ietf-regext-validate-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (December 2, 2016) is 2699 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Registration Protocols Extensions R. Carney 3 Internet-Draft J. Snitker 4 Intended status: Standards Track GoDaddy Inc. 5 Expires: June 5, 2017 December 2, 2016 7 Validate Mapping for the Extensible Provisioning Protocol (EPP) 8 draft-ietf-regext-validate-00 10 Abstract 12 This document describes an Extensible Provisioning Protocol (EPP) 13 mapping for the validation of contact and eligibility data. 15 Status of This Memo 17 This Internet-Draft is submitted in full conformance with the 18 provisions of BCP 78 and BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF). Note that other groups may also distribute 22 working documents as Internet-Drafts. The list of current Internet- 23 Drafts is at http://datatracker.ietf.org/drafts/current/. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 This Internet-Draft will expire on June 5, 2017. 32 Copyright Notice 34 Copyright (c) 2016 IETF Trust and the persons identified as the 35 document authors. All rights reserved. 37 This document is subject to BCP 78 and the IETF Trust's Legal 38 Provisions Relating to IETF Documents 39 (http://trustee.ietf.org/license-info) in effect on the date of 40 publication of this document. Please review these documents 41 carefully, as they describe your rights and restrictions with respect 42 to this document. Code Components extracted from this document must 43 include Simplified BSD License text as described in Section 4.e of 44 the Trust Legal Provisions and are provided without warranty as 45 described in the Simplified BSD License. 47 Table of Contents 49 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 50 1.1. Conventions Used in This Document . . . . . . . . . . . . 2 51 2. Object Attributes . . . . . . . . . . . . . . . . . . . . . . 3 52 2.1. Key Value . . . . . . . . . . . . . . . . . . . . . . . . 3 53 3. EPP Command Mapping . . . . . . . . . . . . . . . . . . . . . 3 54 3.1. EPP Query Commands . . . . . . . . . . . . . . . . . . . 3 55 3.1.1. EPP Command . . . . . . . . . . . . . . . . . 3 56 3.1.2. EPP Command . . . . . . . . . . . . . . . . . 7 57 3.1.3. EPP Command . . . . . . . . . . . . . . . 7 58 3.2. EPP Transform Commands . . . . . . . . . . . . . . . . . 7 59 3.2.1. EPP Command . . . . . . . . . . . . . . . . 7 60 3.2.2. EPP Command . . . . . . . . . . . . . . . . 7 61 3.2.3. EPP Command . . . . . . . . . . . . . . . . . 7 62 3.2.4. EPP Command . . . . . . . . . . . . . . . 7 63 3.2.5. EPP Command . . . . . . . . . . . . . . . . 7 64 4. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 7 65 4.1. Validate Extension Schema . . . . . . . . . . . . . . . . 8 66 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 67 5.1. XML Namespace . . . . . . . . . . . . . . . . . . . . . . 10 68 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 69 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 70 8. Change History . . . . . . . . . . . . . . . . . . . . . . . 11 71 8.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 11 72 8.2. Change from carney-regext 01 to ietf-regext 00 . . . . . 11 73 9. Normative References . . . . . . . . . . . . . . . . . . . . 11 74 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 76 1. Introduction 78 This document describes a Validate mapping for version 1.0 of the 79 Extensible Provisioning Protocol (EPP) [RFC5730]. This EPP mapping 80 specifies a flexible schema by which EPP clients and servers can 81 reliably validate contact and eligibility data. 83 With the increased number of restrictions on contacts and required 84 data points (license, ids, etc.) to register a domain name, a way to 85 validate the data points prior to issuing a transform command is 86 becoming more important. 88 1.1. Conventions Used in This Document 90 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 91 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 92 document are to be interpreted as described in RFC 2119 [RFC2119]. 94 XML is case sensitive. Unless stated otherwise, XML specifications 95 and examples provided in this document MUST be interpreted in the 96 character case presented in order to develop a conforming 97 implementation. 99 In examples, "C:" represents lines sent by a protocol client and "S:" 100 represents lines returned by a protocol server. Indentation and 101 white space in examples are provided only to illustrate element 102 relationships and are not a REQUIRED feature of this protocol. 104 2. Object Attributes 106 A EPP validation object has attributes and associated values that can 107 be viewed by the client. This section describes each attribute type 108 in detail. 110 2.1. Key Value 112 Key Value provides a flexible mechanism to share data between the 113 client and the server. The element defines the data, 114 with two required simple attributes, key and value, and an optional 115 contactType attribute for specificity in the response, more details 116 below. 118 o An example . 119 o An example . 122 3. EPP Command Mapping 124 A detailed description of the EPP syntax and semantics can be found 125 in [RFC5730]. The command mappings described here are specifically 126 for the Validate Extension 128 3.1. EPP Query Commands 130 EPP provides three commands to retrieve object information: 131 to determine if an object is known to the server, to retrieve 132 detailed information associated with an object, and to 133 retrieve object transfer status information. 135 3.1.1. EPP Command 137 The EPP command is used to validate a list of contact 138 information. The command MUST contain a 139 element that identifies the validate namespace. The 140 element contains the following child elements: 142 o one or more element(s) for each contact that is 143 to be validated that contains the contact type of the contact to 144 be validated. 146 The element MUST contain the following child 147 elements: 149 o one element. 150 o zero or more elements. 152 The element MUST contain the following child elements: 154 o one element. 155 o an OPTIONAL element. 156 o an OPTIONAL element. 157 o an OPTIONAL element. 158 o an OPTIONAL element. 159 o an OPTIONAL element. 160 o an OPTIONAL element. 162 The following is an example command. 164 C: 165 C: 168 C: 169 C: 170 C: 171 C: 172 C: 173 C: sh8013 174 C: 175 C: John Doe 176 C: Example Inc. 177 C: 178 C: 123 Example Dr. 179 C: Suite 100 180 C: Dulles 181 C: VA 182 C: 20166-6503 183 C: US 184 C: 185 C: 186 C: +1.7035555555 187 C: +1.7035555556 188 C: jdoe@example.com 189 C: 190 C: 2fooBAR 191 C: 192 C: 193 C: 194 C: 195 C: 196 C: 197 C: 198 C: 199 C: 200 C: 201 C: sh8013 202 C: 203 C: 204 C: 205 C: 206 C: sh8014 207 C: 208 C: John Doe 209 C: Example Inc. 210 C: 211 C: 123 Example Dr. 212 C: Suite 100 213 C: Dulles 214 C: VA 215 C: 20166-6503 216 C: US 217 C: 218 C: 219 C: +1.7035555555 220 C: +1.7035555556 221 C: jdoe@example.com 222 C: 223 C: 2fooBAR 224 C: 225 C: 226 C: 227 C: 228 C: 229 C: 230 C: 231 C: 232 C: 233 C: sh8014 234 C: 235 C: 236 C: 237 C: 238 C: ABC-12345 239 C: 240 C: 242 When a command has been processed succesfully, the EPP 243 element MUST contain a child element 244 that identifies the validate namespace. The 245 element MUST contain a element for each 246 element contained in the command. The 247 element MUST contain the following child elements: 249 o one element. 250 o one element. 251 o zero or more elements. 253 The following is an example of the response. 255 S: 256 S: 257 S: 258 S: 259 S: Command completed successfully 260 S: 261 S: 262 S: 264 S: 265 S: sh8013 266 S: 1000 267 S: 268 S: 269 S: sh8014 270 S: 2306 271 S: 273 S: 275 S: 277 S: 278 S: 279 S: 280 S: 281 S: ABC-12345 282 S: 54321-ZYX 283 S: 284 S: 285 S: 287 3.1.2. EPP Command 289 Info semantics do not apply to validate objects, so there is no 290 mapping defined for the EPP command. 292 3.1.3. EPP Command 294 Transfer semantics do not apply to validate objects, so there is no 295 mapping defined for the EPP command. 297 3.2. EPP Transform Commands 299 EPP provides five commands to transform objects: to create 300 an instance of an object with a server, to remove an 301 instance of an object from a server, to extend the validity 302 period of an object, to manage changes in client 303 sponsorship of an object, and to change information. 305 3.2.1. EPP Command 307 Create semantics do not apply to validate objects, so there is no 308 mapping defined for the EPP command. 310 3.2.2. EPP Command 312 Delete semantics do not apply to validate objects, so there is no 313 mapping defined for the EPP command. 315 3.2.3. EPP Command 317 Renew semantics do not apply to validate objects, so there is no 318 mapping defined for the EPP command. 320 3.2.4. EPP Command 322 Transfer semantics do not apply to validate objects, so there is no 323 mapping defined for the EPP command. 325 3.2.5. EPP Command 327 Update semantics do not apply to validate objects, so there is no 328 mapping defined for the EPP command. 330 4. Formal Syntax 332 One schema is presented here that is the EPP Validate Extension 333 schema. 335 The formal syntax presented here is a complete schema representation 336 of the object mapping suitable for automated validation of EPP XML 337 instances. The BEGIN and END tags are not part of the schema; they 338 are used to note the beginning and ending of the schema for URI 339 registration purposes. 341 4.1. Validate Extension Schema 343 BEGIN 344 345 354 355 356 Extensible Provisioning Protocol v1.0 357 Validate Object Extension 358 359 361 362 364 366 369 372 374 375 376 379 380 382 383 384 386 389 390 392 394 396 397 398 400 403 405 407 409 412 415 416 418 419 421 423 425 427 428 429 430 432 434 435 436 437 438 440 443 445 446 447 449 450 452 453 454 456 458 461 462 464 465 END 467 5. IANA Considerations 469 5.1. XML Namespace 471 This document uses URNs to describe XML namespaces and XML schemas 472 conforming to a registry mechanism described in [RFC3688]. The 473 following URI assignment is requested of IANA: 475 URI: ietf:params:xml:ns:validate-1.0 477 Registrant Contact: See the "Author's Address" section of this 478 document. 480 XML: See the "Formal Syntax" section of this document. 482 6. Security Considerations 484 The mapping extensions described in this document do not provide any 485 security services beyond those described by EPP [RFC5730] and 486 protocol layers used by EPP. The security considerations described 487 in these other specifications apply to this specification as well. 489 7. Acknowledgements 491 The authors wish to thank the following persons for their feedback 492 and suggestions: 494 o Kevin Allendorf of GoDaddy Inc. 495 o Jody Kolker of GoDaddy Inc. 496 o James Gould of Verisign Inc 498 8. Change History 500 8.1. Change from 00 to 01 502 After review and broad feedback, extensive changes have been made 503 transforming the original document from a standalone extension 504 command to an extension using the command and response 505 framework. 507 8.2. Change from carney-regext 01 to ietf-regext 00 509 Updated miscellaneous verbiage to reflect the change from an 510 extension and changed to ietf naming as REGEXT WG will assume this 511 work. 513 9. Normative References 515 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 516 Requirement Levels", BCP 14, RFC 2119, 517 DOI 10.17487/RFC2119, March 1997, 518 . 520 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 521 DOI 10.17487/RFC3688, January 2004, 522 . 524 [RFC5730] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)", 525 STD 69, RFC 5730, DOI 10.17487/RFC5730, August 2009, 526 . 528 Authors' Addresses 530 Roger Carney 531 GoDaddy Inc. 532 14455 N. Hayden Rd. #219 533 Scottsdale, AZ 85260 534 US 536 Email: rcarney@godaddy.com 537 URI: http://www.godaddy.com 539 Joseph Snitker 540 GoDaddy Inc. 541 14455 N. Hayden Rd. #219 542 Scottsdale, AZ 85260 543 US 545 Email: jsnitker@godaddy.com 546 URI: http://www.godaddy.com