1 Internet Engineering Task Force (IETF)                         A. Newton   
    2 Request for Comments: 7482                                          ARIN   
    3 Category: Standards Track                                  S. Hollenbeck   
    4 ISSN: 2070-1721                                            Verisign Labs   
    5                                                               March 2015   
    6                                                                            
    7                                                                            
    8          Registration Data Access Protocol (RDAP) Query Format             
    9                                                                            
   10 Abstract                                                                   
   11                                                                            
   12    This document describes uniform patterns to construct HTTP URLs that    
   13    may be used to retrieve registration information from registries        
   14    (including both Regional Internet Registries (RIRs) and Domain Name     
   15    Registries (DNRs)) using "RESTful" web access patterns.  These          
   16    uniform patterns define the query syntax for the Registration Data      
   17    Access Protocol (RDAP).                                                 
   18                                                                            
   19 Status of This Memo                                                        
   20                                                                            
   21    This is an Internet Standards Track document.                           
   22                                                                            
   23    This document is a product of the Internet Engineering Task Force       
   24    (IETF).  It represents the consensus of the IETF community.  It has     
   25    received public review and has been approved for publication by the     
   26    Internet Engineering Steering Group (IESG).  Further information on     
   27    Internet Standards is available in Section 2 of RFC 5741.               
   28                                                                            
   29    Information about the current status of this document, any errata,      
   30    and how to provide feedback on it may be obtained at                    
   31    http://www.rfc-editor.org/info/rfc7482.                                 
   32                                                                            
   33 Copyright Notice                                                           
   34                                                                            
   35    Copyright (c) 2015 IETF Trust and the persons identified as the         
   36    document authors.  All rights reserved.                                 
   37                                                                            
   38    This document is subject to BCP 78 and the IETF Trust's Legal           
   39    Provisions Relating to IETF Documents                                   
   40    (http://trustee.ietf.org/license-info) in effect on the date of         
   41    publication of this document.  Please review these documents            
   42    carefully, as they describe your rights and restrictions with respect   
   43    to this document.  Code Components extracted from this document must    
   44    include Simplified BSD License text as described in Section 4.e of      
   45    the Trust Legal Provisions and are provided without warranty as         
   46    described in the Simplified BSD License.                                
   47                                                                            
   48                                                                            
   49                                                                            
   50                                                                            
   51                                                                            
   52 Newton & Hollenbeck          Standards Track                    [Page 1]   

   53 RFC 7482                    RDAP Query Format                 March 2015   
   54                                                                            
   55                                                                            
   56 Table of Contents                                                          
   57                                                                            
   58    1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2   
   59    2.  Conventions Used in This Document . . . . . . . . . . . . . .   4   
   60      2.1.  Acronyms and Abbreviations  . . . . . . . . . . . . . . .   4   
   61    3.  Path Segment Specification  . . . . . . . . . . . . . . . . .   4   
   62      3.1.  Lookup Path Segment Specification . . . . . . . . . . . .   5   
   63        3.1.1.  IP Network Path Segment Specification . . . . . . . .   6   
   64        3.1.2.  Autonomous System Path Segment Specification  . . . .   7   
   65        3.1.3.  Domain Path Segment Specification . . . . . . . . . .   7   
   66        3.1.4.  Nameserver Path Segment Specification . . . . . . . .   8   
   67        3.1.5.  Entity Path Segment Specification . . . . . . . . . .   9   
   68        3.1.6.  Help Path Segment Specification . . . . . . . . . . .   9   
   69      3.2.  Search Path Segment Specification . . . . . . . . . . . .   9   
   70        3.2.1.  Domain Search . . . . . . . . . . . . . . . . . . . .  10   
   71        3.2.2.  Nameserver Search . . . . . . . . . . . . . . . . . .  11   
   72        3.2.3.  Entity Search . . . . . . . . . . . . . . . . . . . .  12   
   73    4.  Query Processing  . . . . . . . . . . . . . . . . . . . . . .  13   
   74      4.1.  Partial String Searching  . . . . . . . . . . . . . . . .  13   
   75      4.2.  Associated Records  . . . . . . . . . . . . . . . . . . .  14   
   76    5.  Extensibility . . . . . . . . . . . . . . . . . . . . . . . .  14   
   77    6.  Internationalization Considerations . . . . . . . . . . . . .  15   
   78      6.1.  Character Encoding Considerations . . . . . . . . . . . .  15   
   79    7.  Security Considerations . . . . . . . . . . . . . . . . . . .  16   
   80    8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  17   
   81      8.1.  Normative References  . . . . . . . . . . . . . . . . . .  17   
   82      8.2.  Informative References  . . . . . . . . . . . . . . . . .  19   
   83    Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  19   
   84    Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  20   
   85                                                                            
   86 1.  Introduction                                                           
   87                                                                            
   88    This document describes a specification for querying registration       
   89    data using a RESTful web service and uniform query patterns.  The       
   90    service is implemented using the Hypertext Transfer Protocol (HTTP)     
   91    [RFC7230] and the conventions described in [RFC7480].  These uniform    
   92    patterns define the query syntax for the Registration Data Access       
   93    Protocol (RDAP).                                                        
   94                                                                            
   95    The protocol described in this specification is intended to address     
   96    deficiencies with the WHOIS protocol [RFC3912] that have been           
   97    identified over time, including:                                        
   98                                                                            
   99    o  lack of standardized command structures;                             
  100                                                                            
  101    o  lack of standardized output and error structures;                    
  102                                                                            
  103    o  lack of support for internationalization and localization; and       
  104                                                                            
  105                                                                            
  106                                                                            
  107 Newton & Hollenbeck          Standards Track                    [Page 2]   

  108 RFC 7482                    RDAP Query Format                 March 2015   
  109                                                                            
  110                                                                            
  111    o  lack of support for user identification, authentication, and         
  112       access control.                                                      
  113                                                                            
  114    The patterns described in this document purposefully do not encompass   
  115    all of the methods employed in the WHOIS and other RESTful web          
  116    services used by the RIRs and DNRs.  The intent of the patterns         
  117    described here are to enable queries of:                                
  118                                                                            
  119    o  networks by IP address;                                              
  120                                                                            
  121    o  Autonomous System (AS) numbers by number;                            
  122                                                                            
  123    o  reverse DNS metadata by domain;                                      
  124                                                                            
  125    o  nameservers by name;                                                 
  126                                                                            
  127    o  registrars by name; and                                              
  128                                                                            
  129    o  entities (such as contacts) by identifier.                           
  130                                                                            
  131    Server implementations are free to support only a subset of these       
  132    features depending on local requirements.  Servers MUST return an       
  133    HTTP 501 (Not Implemented) [RFC7231] response to inform clients of      
  134    unsupported query types.  It is also envisioned that each registry      
  135    will continue to maintain WHOIS and/or other RESTful web services       
  136    specific to their needs and those of their constituencies, and the      
  137    information retrieved through the patterns described here may           
  138    reference such services.                                                
  139                                                                            
  140    Likewise, future IETF standards may add additional patterns for         
  141    additional query types.  A simple pattern namespacing scheme is         
  142    described in Section 5 to accommodate custom extensions that will not   
  143    interfere with the patterns defined in this document or patterns        
  144    defined in future IETF standards.                                       
  145                                                                            
  146    WHOIS services, in general, are read-only services.  Therefore, URL     
  147    [RFC3986] patterns specified in this document are only applicable to    
  148    the HTTP [RFC7231] GET and HEAD methods.                                
  149                                                                            
  150    This document does not describe the results or entities returned from   
  151    issuing the described URLs with an HTTP GET.  The specification of      
  152    these entities is described in [RFC7483].                               
  153                                                                            
  154    Additionally, resource management, provisioning, and update functions   
  155    are out of scope for this document.  Registries have various and        
  156    divergent methods covering these functions, and it is unlikely a        
  157    uniform approach is needed for interoperability.                        
  158                                                                            
  159                                                                            
  160                                                                            
  161                                                                            
  162 Newton & Hollenbeck          Standards Track                    [Page 3]   

  163 RFC 7482                    RDAP Query Format                 March 2015   
  164                                                                            
  165                                                                            
  166    HTTP contains mechanisms for servers to authenticate clients and for    
  167    clients to authenticate servers (from which authorization schemes may   
  168    be built), so such mechanisms are not described in this document.       
  169    Policy, provisioning, and processing of authentication and              
  170    authorization are out of scope for this document as deployments will    
  171    have to make choices based on local criteria.  Supported                
  172    authentication mechanisms are described in [RFC7481].                   
  173                                                                            
  174 2.  Conventions Used in This Document                                      
  175                                                                            
  176    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",     
  177    "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this    
  178    document are to be interpreted as described in [RFC2119].               
  179                                                                            

The IETF is responsible for the creation and maintenance of the DNS RFCs. The ICANN DNS RFC annotation project provides a forum for collecting community annotations on these RFCs as an aid to understanding for implementers and any interested parties. The annotations displayed here are not the result of the IETF consensus process.

This RFC is included in the DNS RFCs annotation project whose home page is here.

Obsoleted by RFC9082
  180 2.1.  Acronyms and Abbreviations                                           
  181                                                                            
  182       IDN: Internationalized Domain Name                                   
  183                                                                            
  184       IDNA: Internationalized Domain Names in Applications, a protocol     
  185       for the handling of IDNs.                                            
  186                                                                            
  187       DNR: Domain Name Registry                                            
  188                                                                            
  189       NFC: Unicode Normalization Form C [Unicode-UAX15]                    
  190                                                                            
  191       NFKC: Unicode Normalization Form KC [Unicode-UAX15]                  
  192                                                                            
  193       RDAP: Registration Data Access Protocol                              
  194                                                                            
  195       REST: Representational State Transfer.  The term was first           
  196       described in a doctoral dissertation [REST].                         
  197                                                                            
  198       RESTful: An adjective that describes a service using HTTP and the    
  199       principles of REST.                                                  
  200                                                                            
  201       RIR: Regional Internet Registry                                      
  202                                                                            
  203 3.  Path Segment Specification                                             
  204                                                                            
  205    The base URLs used to construct RDAP queries are maintained in an       
  206    IANA registry described in [RFC7484].  Queries are formed by            
  207    retrieving an appropriate base URL from the registry and appending a    
  208    path segment specified in either Sections 3.1 or 3.2.  Generally, a     
  209    registry or other service provider will provide a base URL that         
  210    identifies the protocol, host, and port, and this will be used as a     
  211    base URL that the complete URL is resolved against, as per Section 5    
  212                                                                            
  213                                                                            
  214                                                                            
  215                                                                            
  216                                                                            
  217 Newton & Hollenbeck          Standards Track                    [Page 4]   

  218 RFC 7482                    RDAP Query Format                 March 2015   
  219                                                                            
  220                                                                            
  221    of RFC 3986 [RFC3986].  For example, if the base URL is                 
  222    "https://example.com/rdap/", all RDAP query URLs will begin with        
  223    "https://example.com/rdap/".                                            
  224                                                                            
  225    The bootstrap registry does not contain information for query objects   
  226    that are not part of a global namespace, including entities and help.   
  227    A base URL for an associated object is required to construct a          
  228    complete query.                                                         
  229                                                                            
  230    For entities, a base URL is retrieved for the service (domain,          
  231    address, etc.) associated with a given entity.  The query URL is        
  232    constructed by concatenating the base URL to the entity path segment    
  233    specified in either Sections 3.1.5 or 3.2.3.                            
  234                                                                            
  235    For help, a base URL is retrieved for any service (domain, address,     
  236    etc.) for which additional information is required.  The query URL is   
  237    constructed by concatenating the base URL to the help path segment      
  238    specified in Section 3.1.6.                                             
  239                                                                            
  240 3.1.  Lookup Path Segment Specification                                    
  241                                                                            
  242    A simple lookup to determine if an object exists (or not) without       
  243    returning RDAP-encoded results can be performed using the HTTP HEAD     
  244    method as described in Section 4.1 of [RFC7480].                        
  245                                                                            
  246    The resource type path segments for exact match lookup are:             
  247                                                                            
  248    o  'ip': Used to identify IP networks and associated data referenced    
  249       using either an IPv4 or IPv6 address.                                
  250                                                                            
  251    o  'autnum': Used to identify Autonomous System number registrations    
  252       and associated data referenced using an asplain Autonomous System    
  253       number.                                                              
  254                                                                            
  255    o  'domain': Used to identify reverse DNS (RIR) or domain name (DNR)    
  256       information and associated data referenced using a fully qualified   
  257       domain name.                                                         
  258                                                                            
  259    o  'nameserver': Used to identify a nameserver information query        
  260       using a host name.                                                   
  261                                                                            
  262    o  'entity': Used to identify an entity information query using a       
  263       string identifier.                                                   
  264                                                                            
  265                                                                            
  266                                                                            
  267                                                                            
  268                                                                            
  269                                                                            
  270                                                                            
  271                                                                            
  272 Newton & Hollenbeck          Standards Track                    [Page 5]   

  273 RFC 7482                    RDAP Query Format                 March 2015   
  274                                                                            
  275                                                                            
  276 3.1.1.  IP Network Path Segment Specification                              
  277                                                                            
  278    Syntax: ip/<IP address> or ip/<CIDR prefix>/<CIDR length>               
  279                                                                            
  280    Queries for information about IP networks are of the form /ip/XXX/...   
  281    or /ip/XXX/YY/...  where the path segment following 'ip' is either an   
  282    IPv4 dotted decimal or IPv6 [RFC5952] address (i.e., XXX) or an IPv4    
  283    or IPv6 Classless Inter-domain Routing (CIDR) [RFC4632] notation        
  284    address block (i.e., XXX/YY).  Semantically, the simpler form using     
  285    the address can be thought of as a CIDR block with a bitmask length     
  286    of 32 for IPv4 and a bitmask length of 128 for IPv6.  A given           
  287    specific address or CIDR may fall within multiple IP networks in a      
  288    hierarchy of networks; therefore, this query targets the "most-         
  289    specific" or smallest IP network that completely encompasses it in a    
  290    hierarchy of IP networks.                                               
  291                                                                            
  292    The IPv4 and IPv6 address formats supported in this query are           
  293    described in Section 3.2.2 of RFC 3986 [RFC3986] as IPv4address and     
  294    IPv6address ABNF definitions.  Any valid IPv6 text address format       
  295    [RFC4291] can be used.  This includes IPv6 addresses written using      
  296    with or without compressed zeros and IPv6 addresses containing          
  297    embedded IPv4 addresses.  The rules to write a text representation of   
  298    an IPv6 address [RFC5952] are RECOMMENDED.  However, the zone_id        
  299    [RFC4007] is not appropriate in this context; therefore, the            
  300    corresponding syntax extension in RFC 6874 [RFC6874] MUST NOT be        
  301    used, and servers are to ignore it if possible.                         
  302                                                                            
  303    For example, the following URL would be used to find information for    
  304    the most specific network containing 192.0.2.0:                         
  305                                                                            
  306    https://example.com/rdap/ip/192.0.2.0                                   
  307                                                                            
  308    The following URL would be used to find information for the most        
  309    specific network containing 192.0.2.0/24:                               
  310                                                                            
  311    https://example.com/rdap/ip/192.0.2.0/24                                
  312                                                                            
  313    The following URL would be used to find information for the most        
  314    specific network containing 2001:db8::0:                                
  315                                                                            
  316    https://example.com/rdap/ip/2001:db8::0                                 
  317                                                                            
  318                                                                            
  319                                                                            
  320                                                                            
  321                                                                            
  322                                                                            
  323                                                                            
  324                                                                            
  325                                                                            
  326                                                                            
  327 Newton & Hollenbeck          Standards Track                    [Page 6]   

  328 RFC 7482                    RDAP Query Format                 March 2015   
  329                                                                            
  330                                                                            
  331 3.1.2.  Autonomous System Path Segment Specification                       
  332                                                                            
  333    Syntax: autnum/<autonomous system number>                               
  334                                                                            
  335    Queries for information regarding Autonomous System number              
  336    registrations are of the form /autnum/XXX/... where XXX is an asplain   
  337    Autonomous System number [RFC5396].  In some registries, registration   
  338    of Autonomous System numbers is done on an individual number basis,     
  339    while other registries may register blocks of Autonomous System         
  340    numbers.  The semantics of this query are such that if a number falls   
  341    within a range of registered blocks, the target of the query is the     
  342    block registration and that individual number registrations are         
  343    considered a block of numbers with a size of 1.                         
  344                                                                            
  345    For example, the following URL would be used to find information        
  346    describing Autonomous System number 12 (a number within a range of      
  347    registered blocks):                                                     
  348                                                                            
  349    https://example.com/rdap/autnum/12                                      
  350                                                                            
  351    The following URL would be used to find information describing 4-byte   
  352    Autonomous System number 65538:                                         
  353                                                                            
  354    https://example.com/rdap/autnum/65538                                   
  355                                                                            
  356 3.1.3.  Domain Path Segment Specification                                  
  357                                                                            
  358    Syntax: domain/<domain name>                                            
  359                                                                            
  360    Queries for domain information are of the form /domain/XXXX/...,        
  361    where XXXX is a fully qualified (relative to the root) domain name      
  362    (as specified in [RFC0952] and [RFC1123]) in either the in-addr.arpa    
  363    or ip6.arpa zones (for RIRs) or a fully qualified domain name in a      
  364    zone administered by the server operator (for DNRs).                    
  365    Internationalized Domain Names (IDNs) represented in either A-label     
  366    or U-label format [RFC5890] are also valid domain names.  See           
  367    Section 6.1 for information on character encoding for the U-label       
  368    format.                                                                 
  369                                                                            
  370    IDNs SHOULD NOT be represented as a mixture of A-labels and U-labels;   
  371    that is, internationalized labels in an IDN SHOULD be either all        
  372    A-labels or all U-labels.  It is possible for an RDAP client to         
  373    assemble a query string from multiple independent data sources.  Such   
  374    a client might not be able to perform conversions between A-labels      
  375    and U-labels.  An RDAP server that receives a query string with a       
  376    mixture of A-labels and U-labels MAY convert all the U-labels to        
  377    A-labels, perform IDNA processing, and proceed with exact-match         
  378                                                                            
  379                                                                            
  380                                                                            
  381                                                                            
  382 Newton & Hollenbeck          Standards Track                    [Page 7]   

  383 RFC 7482                    RDAP Query Format                 March 2015   
  384                                                                            
  385                                                                            
  386    lookup.  In such cases, the response to be returned to the query        
  387    source may not match the input from the query source.  Alternatively,   
  388    the server MAY refuse to process the query.                             
  389                                                                            
  390    The server MAY perform the match using either the A-label or U-label    
  391    form.  Using one consistent form for matching every label is likely     
  392    to be more reliable.                                                    
  393                                                                            
  394    The following URL would be used to find information describing the      
  395    zone serving the network 192.0.2/24:                                    
  396                                                                            
  397    https://example.com/rdap/domain/2.0.192.in-addr.arpa                    
  398                                                                            
  399    The following URL would be used to find information describing the      
  400    zone serving the network 2001:db8:1::/48:                               
  401                                                                            
  402    https://example.com/rdap/domain/1.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa        
  403                                                                            
  404    The following URL would be used to find information for the             
  405    blah.example.com domain name:                                           
  406                                                                            
  407    https://example.com/rdap/domain/blah.example.com                        
  408                                                                            
  409    The following URL would be used to find information for the             
  410    xn--fo-5ja.example IDN:                                                 
  411                                                                            
  412    https://example.com/rdap/domain/xn--fo-5ja.example                      
  413                                                                            
  414 3.1.4.  Nameserver Path Segment Specification                              
  415                                                                            
  416    Syntax: nameserver/<nameserver name>                                    
  417                                                                            
  418    The <nameserver name> parameter represents a fully qualified host       
  419    name as specified in [RFC0952] and [RFC1123].  Internationalized        
  420    names represented in either A-label or U-label format [RFC5890] are     
  421    also valid nameserver names.  IDN processing for nameserver names       
  422    uses the domain name processing instructions specified in               
  423    Section 3.1.3.  See Section 6.1 for information on character encoding   
  424    for the U-label format.                                                 
  425                                                                            
  426    The following URL would be used to find information for the             
  427    ns1.example.com nameserver:                                             
  428                                                                            
  429    https://example.com/rdap/nameserver/ns1.example.com                     
  430                                                                            
  431                                                                            
  432                                                                            
  433                                                                            
  434                                                                            
  435                                                                            
  436                                                                            
  437 Newton & Hollenbeck          Standards Track                    [Page 8]   

  438 RFC 7482                    RDAP Query Format                 March 2015   
  439                                                                            
  440                                                                            
  441    The following URL would be used to find information for the             
  442    ns1.xn--fo-5ja.example nameserver:                                      
  443                                                                            
  444    https://example.com/rdap/nameserver/ns1.xn--fo-5ja.example              
  445                                                                            
  446 3.1.5.  Entity Path Segment Specification                                  
  447                                                                            
  448    Syntax: entity/<handle>                                                 
  449                                                                            
  450    The <handle> parameter represents an entity (such as a contact,         
  451    registrant, or registrar) identifier whose syntax is specific to the    
  452    registration provider.  For example, for some DNRs, contact             
  453    identifiers are specified in [RFC5730] and [RFC5733].                   
  454                                                                            
  455    The following URL would be used to find information for the entity      
  456    associated with handle XXXX:                                            
  457                                                                            
  458    https://example.com/rdap/entity/XXXX                                    
  459                                                                            
  460 3.1.6.  Help Path Segment Specification                                    
  461                                                                            
  462    Syntax: help                                                            
  463                                                                            
  464    The help path segment can be used to request helpful information        
  465    (command syntax, terms of service, privacy policy, rate-limiting        
  466    policy, supported authentication methods, supported extensions,         
  467    technical support contact, etc.) from an RDAP server.  The response     
  468    to "help" should provide basic information that a client needs to       
  469    successfully use the service.  The following URL would be used to       
  470    return "help" information:                                              
  471                                                                            
  472    https://example.com/rdap/help                                           
  473                                                                            
  474 3.2.  Search Path Segment Specification                                    
  475                                                                            
  476    Pattern matching semantics are described in Section 4.1.  The           
  477    resource type path segments for search are:                             
  478                                                                            
  479    o  'domains': Used to identify a domain name information search using   
  480       a pattern to match a fully qualified domain name.                    
  481                                                                            
  482    o  'nameservers': Used to identify a nameserver information search      
  483       using a pattern to match a host name.                                
  484                                                                            
  485    o  'entities': Used to identify an entity information search using a    
  486       pattern to match a string identifier.                                
  487                                                                            
  488                                                                            
  489                                                                            
  490                                                                            
  491                                                                            
  492 Newton & Hollenbeck          Standards Track                    [Page 9]   

  493 RFC 7482                    RDAP Query Format                 March 2015   
  494                                                                            
  495                                                                            
  496    RDAP search path segments are formed using a concatenation of the       
  497    plural form of the object being searched for and an HTTP query          
  498    string.  The HTTP query string is formed using a concatenation of the   
  499    question mark character ('?', US-ASCII value 0x003F), the JSON object   
  500    value associated with the object being searched for, the equal sign     
  501    character ('=', US-ASCII value 0x003D), and the search pattern.         
  502    Search pattern query processing is described more fully in Section 4.   
  503    For the domain, nameserver, and entity objects described in this        
  504    document, the plural object forms are "domains", "nameservers", and     
  505    "entities".                                                             
  506                                                                            
  507    Detailed results can be retrieved using the HTTP GET method and the     
  508    path segments specified here.                                           
  509                                                                            
  510 3.2.1.  Domain Search                                                      
  511                                                                            
  512    Syntax: domains?name=<domain search pattern>                            
  513                                                                            
  514    Syntax: domains?nsLdhName=<domain search pattern>                       
  515                                                                            
  516    Syntax: domains?nsIp=<domain search pattern>                            
  517                                                                            
  518    Searches for domain information by name are specified using this        
  519    form:                                                                   
  520                                                                            
  521    domains?name=XXXX                                                       
  522                                                                            
  523    XXXX is a search pattern representing a domain name in "letters,        
  524    digits, hyphen" (LDH) format [RFC5890] in a zone administered by the    
  525    server operator of a DNR.  The following URL would be used to find      
  526    DNR information for domain names matching the "example*.com" pattern:   
  527                                                                            
  528    https://example.com/rdap/domains?name=example*.com                      
  529                                                                            
  530    IDNs in U-label format [RFC5890] can also be used as search patterns    
  531    (see Section 4).  Searches for these names are of the form              
  532    /domains?name=XXXX, where XXXX is a search pattern representing a       
  533    domain name in U-label format [RFC5890].  See Section 6.1 for           
  534    information on character encoding for the U-label format.               
  535                                                                            
  536    Searches for domain information by nameserver name are specified        
  537    using this form:                                                        
  538                                                                            
  539    domains?nsLdhName=YYYY                                                  
  540                                                                            
  541                                                                            
  542                                                                            
  543                                                                            
  544                                                                            
  545                                                                            
  546                                                                            
  547 Newton & Hollenbeck          Standards Track                   [Page 10]   

  548 RFC 7482                    RDAP Query Format                 March 2015   
  549                                                                            
  550                                                                            
  551    YYYY is a search pattern representing a host name in "letters,          
  552    digits, hyphen" format [RFC5890] in a zone administered by the server   
  553    operator of a DNR.  The following URL would be used to search for       
  554    domains delegated to nameservers matching the "ns1.example*.com"        
  555    pattern:                                                                
  556                                                                            
  557    https://example.com/rdap/domains?nsLdhName=ns1.example*.com             
  558                                                                            
  559    Searches for domain information by nameserver IP address are            
  560    specified using this form:                                              
  561                                                                            
  562    domains?nsIp=ZZZZ                                                       
  563                                                                            
  564    ZZZZ is a search pattern representing an IPv4 [RFC1166] or IPv6         
  565    [RFC5952] address.  The following URL would be used to search for       
  566    domains that have been delegated to nameservers that resolve to the     
  567    "192.0.2.0" address:                                                    
  568                                                                            
  569    https://example.com/rdap/domains?nsIp=192.0.2.0                         
  570                                                                            
  571 3.2.2.  Nameserver Search                                                  
  572                                                                            
  573    Syntax: nameservers?name=<nameserver search pattern>                    
  574                                                                            
  575    Syntax: nameservers?ip=<nameserver search pattern>                      
  576                                                                            
  577    Searches for nameserver information by nameserver name are specified    
  578    using this form:                                                        
  579                                                                            
  580    nameservers?name=XXXX                                                   
  581                                                                            
  582    XXXX is a search pattern representing a host name in "letters,          
  583    digits, hyphen" format [RFC5890] in a zone administered by the server   
  584    operator of a DNR.  The following URL would be used to find DNR         
  585    information for nameserver names matching the "ns1.example*.com"        
  586    pattern:                                                                
  587                                                                            
  588    https://example.com/rdap/nameservers?name=ns1.example*.com              
  589                                                                            
  590    Internationalized nameserver names in U-label format [RFC5890] can      
  591    also be used as search patterns (see Section 4).  Searches for these    
  592    names are of the form /nameservers?name=XXXX, where XXXX is a search    
  593    pattern representing a nameserver name in U-label format [RFC5890].     
  594    See Section 6.1 for information on character encoding for the U-label   
  595    format.                                                                 
  596                                                                            
  597                                                                            
  598                                                                            
  599                                                                            
  600                                                                            
  601                                                                            
  602 Newton & Hollenbeck          Standards Track                   [Page 11]   

  603 RFC 7482                    RDAP Query Format                 March 2015   
  604                                                                            
  605                                                                            
  606    Searches for nameserver information by nameserver IP address are        
  607    specified using this form:                                              
  608                                                                            
  609    nameservers?ip=YYYY                                                     
  610                                                                            
  611    YYYY is a search pattern representing an IPv4 [RFC1166] or IPv6         
  612    [RFC5952] address.  The following URL would be used to search for       
  613    nameserver names that resolve to the "192.0.2.0" address:               
  614                                                                            
  615    https://example.com/rdap/nameservers?ip=192.0.2.0                       
  616                                                                            
  617 3.2.3.  Entity Search                                                      
  618                                                                            
  619    Syntax: entities?fn=<entity name search pattern>                        
  620                                                                            
  621    Syntax: entities?handle=<entity handle search pattern>                  
  622                                                                            
  623    Searches for entity information by name are specified using this        
  624    form:                                                                   
  625                                                                            
  626    entities?fn=XXXX                                                        
  627                                                                            
  628    XXXX is a search pattern representing the "FN" property of an entity    
  629    (such as a contact, registrant, or registrar) name as specified in      
  630    Section 5.1 of [RFC7483].  The following URL would be used to find      
  631    information for entity names matching the "Bobby Joe*" pattern:         
  632                                                                            
  633    https://example.com/rdap/entities?fn=Bobby%20Joe*                       
  634                                                                            
  635    Searches for entity information by handle are specified using this      
  636    form:                                                                   
  637                                                                            
  638    entities?handle=XXXX                                                    
  639                                                                            
  640    XXXX is a search pattern representing an entity (such as a contact,     
  641    registrant, or registrar) identifier whose syntax is specific to the    
  642    registration provider.  The following URL would be used to find         
  643    information for entity handles matching the "CID-40*" pattern:          
  644                                                                            
  645    https://example.com/rdap/entities?handle=CID-40*                        
  646                                                                            
  647    URLs MUST be properly encoded according to the rules of [RFC3986].      
  648    In the example above, "Bobby Joe*" is encoded to "Bobby%20Joe*".        
  649                                                                            
  650                                                                            
  651                                                                            
  652                                                                            
  653                                                                            
  654                                                                            
  655                                                                            
  656                                                                            
  657 Newton & Hollenbeck          Standards Track                   [Page 12]   

  658 RFC 7482                    RDAP Query Format                 March 2015   
  659                                                                            
  660                                                                            
  661 4.  Query Processing                                                       
  662                                                                            
  663    Servers indicate the success or failure of query processing by          
  664    returning an appropriate HTTP response code to the client.  Response    
  665    codes not specifically identified in this document are described in     
  666    [RFC7480].                                                              
  667                                                                            
  668 4.1.  Partial String Searching                                             
  669                                                                            
  670    Partial string searching uses the asterisk ('*', US-ASCII value         
  671    0x002A) character to match zero or more trailing characters.  A         
  672    character string representing multiple domain name labels MAY be        
  673    concatenated to the end of the search pattern to limit the scope of     
  674    the search.  For example, the search pattern "exam*" will match         
  675    "example.com" and "example.net".  The search pattern "exam*.com" will   
  676    match "example.com".  If an asterisk appears in a search string, any    
  677    label that contains the non-asterisk characters in sequence plus zero   
  678    or more characters in sequence in place of the asterisk would match.    
  679    Additional pattern matching processing is beyond the scope of this      
  680    specification.                                                          
  681                                                                            
  682    If a server receives a search request but cannot process the request    
  683    because it does not support a particular style of partial match         
  684    searching, it SHOULD return an HTTP 422 (Unprocessable Entity)          
  685    [RFC4918] response.  When returning a 422 error, the server MAY also    
  686    return an error response body as specified in Section 6 of [RFC7483]    
  687    if the requested media type is one that is specified in [RFC7480].      
  688                                                                            
  689    Partial matching is not feasible across combinations of Unicode         
  690    characters because Unicode characters can be combined with each         
  691    other.  Servers SHOULD NOT partially match combinations of Unicode      
  692    characters where a legal combination is possible.  It should be         
  693    noted, though, that it may not always be possible to detect cases       
  694    where a character could have been combined with another character,      
  695    but was not, because characters can be combined in many different       
  696    ways.                                                                   
  697                                                                            
  698    Clients should avoid submitting a partial match search of Unicode       
  699    characters where a Unicode character may be legally combined with       
  700    another Unicode character or characters.  Partial match searches with   
  701    incomplete combinations of characters where a character must be         
  702    combined with another character or characters are invalid.  Partial     
  703    match searches with characters that may be combined with another        
  704    character or characters are to be considered non-combined characters    
  705    (that is, if character x may be combined with character y but           
  706    character y is not submitted in the search string, then character x     
  707    is a complete character and no combinations of character x are to be    
  708    searched).                                                              
  709                                                                            
  710                                                                            
  711                                                                            
  712 Newton & Hollenbeck          Standards Track                   [Page 13]   

  713 RFC 7482                    RDAP Query Format                 March 2015   
  714                                                                            
  715                                                                            
  716 4.2.  Associated Records                                                   
  717                                                                            
  718    Conceptually, any query-matching record in a server's database might    
  719    be a member of a set of related records, related in some fashion as     
  720    defined by the server -- for example, variants of an IDN.  The entire   
  721    set ought to be considered as candidates for inclusion when             
  722    constructing the response.  However, the construction of the final      
  723    response needs to be mindful of privacy and other data-releasing        
  724    policies when assembling the RDAP response set.                         
  725                                                                            
  726    Note too that due to the nature of searching, there may be a list of    
  727    query-matching records.  Each one of those is subject to being a        
  728    member of a set as described in the previous paragraph.  What is        
  729    ultimately returned in a response will be the union of all the sets     
  730    that has been filtered by whatever policies are in place.               
  731                                                                            
  732    Note that this model includes arrangements for associated names,        
  733    including those that are linked by policy mechanisms and names bound    
  734    together for some other purposes.  Note also that returning             
  735    information that was not explicitly selected by an exact-match          
  736    lookup, including additional names that match a relatively fuzzy        
  737    search as well as lists of names that are linked together, may cause    
  738    privacy issues.                                                         
  739                                                                            
  740    Note that there might not be a single, static information return        
  741    policy that applies to all clients equally.  Client identity and        
  742    associated authorizations can be a relevant factor in determining how   
  743    broad the response set will be for any particular query.                
  744                                                                            
  745 5.  Extensibility                                                          
  746                                                                            
  747    This document describes path segment specifications for a limited       
  748    number of objects commonly registered in both RIRs and DNRs.  It does   
  749    not attempt to describe path segments for all of the objects            
  750    registered in all registries.  Custom path segments can be created      
  751    for objects not specified here using the process described in           
  752    Section 6 of "HTTP Usage in the Registration Data Access Protocol       
  753    (RDAP)" [RFC7480].                                                      
  754                                                                            
  755    Custom path segments can be created by prefixing the segment with a     
  756    unique identifier followed by an underscore character (0x5F).  For      
  757    example, a custom entity path segment could be created by prefixing     
  758    "entity" with "custom_", producing "custom_entity".  Servers MUST       
  759    return an appropriate failure status code for a request with an         
  760    unrecognized path segment.                                              
  761                                                                            
  762                                                                            
  763                                                                            
  764                                                                            
  765                                                                            
  766                                                                            
  767 Newton & Hollenbeck          Standards Track                   [Page 14]   

  768 RFC 7482                    RDAP Query Format                 March 2015   
  769                                                                            
  770                                                                            
  771 6.  Internationalization Considerations                                    
  772                                                                            
  773    There is value in supporting the ability to submit either a U-label     
  774    (Unicode form of an IDN label) or an A-label (US-ASCII form of an IDN   
  775    label) as a query argument to an RDAP service.  Clients capable of      
  776    processing non-US-ASCII characters may prefer a U-label since this is   
  777    more visually recognizable and familiar than A-label strings, but       
  778    clients using programmatic interfaces might find it easier to submit    
  779    and display A-labels if they are unable to input U-labels with their    
  780    keyboard configuration.  Both query forms are acceptable.               
  781                                                                            
  782    Internationalized domain and nameserver names can contain character     
  783    variants and variant labels as described in [RFC4290].  Clients that    
  784    support queries for internationalized domain and nameserver names       
  785    MUST accept service provider responses that describe variants as        
  786    specified in "JSON Responses for the Registration Data Access           
  787    Protocol (RDAP)" [RFC7483].                                             
  788                                                                            
  789 6.1.  Character Encoding Considerations                                    
  790                                                                            
  791    Servers can expect to receive search patterns from clients that         
  792    contain character strings encoded in different forms supported by       
  793    HTTP.  It is entirely possible to apply filters and normalization       
  794    rules to search patterns prior to making character comparisons, but     
  795    this type of processing is more typically needed to determine the       
  796    validity of registered strings than to match patterns.                  
  797                                                                            
  798    An RDAP client submitting a query string containing non-US-ASCII        
  799    characters converts such strings into Unicode in UTF-8 encoding.  It    
  800    then performs any local case mapping deemed necessary.  Strings are     
  801    normalized using Normalization Form C (NFC) [Unicode-UAX15]; note       
  802    that clients might not be able to do this reliably.  UTF-8 encoded      
  803    strings are then appropriately percent-encoded [RFC3986] in the query   
  804    URL.                                                                    
  805                                                                            
  806    After parsing any percent-encoding, an RDAP server treats each query    
  807    string as Unicode in UTF-8 encoding.  If a string is not valid UTF-8,   
  808    the server can immediately stop processing the query and return an      
  809    HTTP 400 (Bad Request) response.                                        
  810                                                                            
  811    When processing queries, there is a difference in handling DNS names,   
  812    including those with putative U-labels, and everything else.  DNS       
  813    names are treated according to the DNS matching rules as described in   
  814    Section 3.1 of RFC 1035 [RFC1035] for Non-Reserved LDH (NR-LDH)         
  815    labels and the matching rules described in Section 5.4 of RFC 5891      
  816    [RFC5891] for U-labels.  Matching of DNS names proceeds one label at    
  817    a time because it is possible for a combination of U-labels and         
  818    NR-LDH labels to be found in a single domain or host name.  The         
  819                                                                            
  820                                                                            
  821                                                                            
  822 Newton & Hollenbeck          Standards Track                   [Page 15]   

  823 RFC 7482                    RDAP Query Format                 March 2015   
  824                                                                            
  825                                                                            
  826    determination of whether a label is a U-label or an NR-LDH label is     
  827    based on whether the label contains any characters outside of the       
  828    US-ASCII letters, digits, or hyphen (the so-called LDH rule).           
  829                                                                            
  830    For everything else, servers map fullwidth and halfwidth characters     
  831    to their decomposition equivalents.  Servers convert strings to the     
  832    same coded character set of the target data that is to be looked up     
  833    or searched, and each string is normalized using the same               
  834    normalization that was used on the target data.  In general, storage    
  835    of strings as Unicode is RECOMMENDED.  For the purposes of              
  836    comparison, Normalization Form KC (NFKC) [Unicode-UAX15] with case      
  837    folding is used to maximize predictability and the number of matches.   
  838    Note the use of case-folded NFKC as opposed to NFC in this case.        
  839                                                                            
  840 7.  Security Considerations                                                
  841                                                                            
  842    Security services for the operations specified in this document are     
  843    described in "Security Services for the Registration Data Access        
  844    Protocol (RDAP)" [RFC7481].                                             
  845                                                                            
  846    Search functionality typically requires more server resources (such     
  847    as memory, CPU cycles, and network bandwidth) when compared to basic    
  848    lookup functionality.  This increases the risk of server resource       
  849    exhaustion and subsequent denial of service due to abuse.  This risk    
  850    can be mitigated by developing and implementing controls to restrict    
  851    search functionality to identified and authorized clients.  If those    
  852    clients behave badly, their search privileges can be suspended or       
  853    revoked.  Rate limiting as described in Section 5.5 of "HTTP Usage in   
  854    the Registration Data Access Protocol (RDAP)" [RFC7480] can also be     
  855    used to control the rate of received search requests.  Server           
  856    operators can also reduce their risk by restricting the amount of       
  857    information returned in response to a search request.                   
  858                                                                            
  859    Search functionality also increases the privacy risk of disclosing      
  860    object relationships that might not otherwise be obvious.  For          
  861    example, a search that returns IDN variants [RFC6927] that do not       
  862    explicitly match a client-provided search pattern can disclose          
  863    information about registered domain names that might not be otherwise   
  864    available.  Implementers need to consider the policy and privacy        
  865    implications of returning information that was not explicitly           
  866    requested.                                                              
  867                                                                            
  868    Note that there might not be a single, static information return        
  869    policy that applies to all clients equally.  Client identity and        
  870    associated authorizations can be a relevant factor in determining how   
  871    broad the response set will be for any particular query.                
  872                                                                            
  873                                                                            
  874                                                                            
  875                                                                            
  876                                                                            
  877 Newton & Hollenbeck          Standards Track                   [Page 16]   

  878 RFC 7482                    RDAP Query Format                 March 2015   
  879                                                                            
  880                                                                            
  881 8.  References                                                             
  882                                                                            
  883 8.1.  Normative References                                                 
  884                                                                            
  885    [RFC0952]  Harrenstien, K., Stahl, M., and E. Feinler, "DoD Internet    
  886               host table specification", RFC 952, October 1985,            
  887               <http://www.rfc-editor.org/info/rfc952>.                     
  888                                                                            
  889    [RFC1035]  Mockapetris, P., "Domain names - implementation and          
  890               specification", STD 13, RFC 1035, November 1987,             
  891               <http://www.rfc-editor.org/info/rfc1035>.                    
  892                                                                            
  893    [RFC1123]  Braden, R., Ed., "Requirements for Internet Hosts -          
  894               Application and Support", STD 3, RFC 1123, October 1989,     
  895               <http://www.rfc-editor.org/info/rfc1123>.                    
  896                                                                            
  897    [RFC1166]  Kirkpatrick, S., Stahl, M., and M. Recker, "Internet         
  898               numbers", RFC 1166, July 1990,                               
  899               <http://www.rfc-editor.org/info/rfc1166>.                    
  900                                                                            
  901    [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate          
  902               Requirement Levels", BCP 14, RFC 2119, March 1997,           
  903               <http://www.rfc-editor.org/info/rfc2119>.                    
  904                                                                            
  905    [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform     
  906               Resource Identifier (URI): Generic Syntax", STD 66, RFC      
  907               3986, January 2005,                                          
  908               <http://www.rfc-editor.org/info/rfc3986>.                    
  909                                                                            
  910    [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing          
  911               Architecture", RFC 4291, February 2006,                      
  912               <http://www.rfc-editor.org/info/rfc4291>.                    
  913                                                                            
  914    [RFC4632]  Fuller, V. and T. Li, "Classless Inter-domain Routing        
  915               (CIDR): The Internet Address Assignment and Aggregation      
  916               Plan", BCP 122, RFC 4632, August 2006,                       
  917               <http://www.rfc-editor.org/info/rfc4632>.                    
  918                                                                            
  919    [RFC4918]  Dusseault, L., Ed., "HTTP Extensions for Web Distributed     
  920               Authoring and Versioning (WebDAV)", RFC 4918, June 2007,     
  921               <http://www.rfc-editor.org/info/rfc4918>.                    
  922                                                                            
  923    [RFC5396]  Huston, G. and G. Michaelson, "Textual Representation of     
  924               Autonomous System (AS) Numbers", RFC 5396, December 2008,    
  925               <http://www.rfc-editor.org/info/rfc5396>.                    
  926                                                                            
  927                                                                            
  928                                                                            
  929                                                                            
  930                                                                            
  931                                                                            
  932 Newton & Hollenbeck          Standards Track                   [Page 17]   

  933 RFC 7482                    RDAP Query Format                 March 2015   
  934                                                                            
  935                                                                            
  936    [RFC5730]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)",    
  937               STD 69, RFC 5730, August 2009,                               
  938               <http://www.rfc-editor.org/info/rfc5730>.                    
  939                                                                            
  940    [RFC5733]  Hollenbeck, S., "Extensible Provisioning Protocol (EPP)      
  941               Contact Mapping", STD 69, RFC 5733, August 2009,             
  942               <http://www.rfc-editor.org/info/rfc5733>.                    
  943                                                                            
  944    [RFC5890]  Klensin, J., "Internationalized Domain Names for             
  945               Applications (IDNA): Definitions and Document Framework",    
  946               RFC 5890, August 2010,                                       
  947               <http://www.rfc-editor.org/info/rfc5890>.                    
  948                                                                            
  949    [RFC5891]  Klensin, J., "Internationalized Domain Names in              
  950               Applications (IDNA): Protocol", RFC 5891, August 2010,       
  951               <http://www.rfc-editor.org/info/rfc5891>.                    
  952                                                                            
  953    [RFC5952]  Kawamura, S. and M. Kawashima, "A Recommendation for IPv6    
  954               Address Text Representation", RFC 5952, August 2010,         
  955               <http://www.rfc-editor.org/info/rfc5952>.                    
  956                                                                            
  957    [RFC7230]  Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer   
  958               Protocol (HTTP/1.1): Message Syntax and Routing", RFC        
  959               7230, June 2014, <http://www.rfc-editor.org/info/rfc7230>.   
  960                                                                            
  961    [RFC7231]  Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer   
  962               Protocol (HTTP/1.1): Semantics and Content", RFC 7231,       
  963               June 2014, <http://www.rfc-editor.org/info/rfc7231>.         
  964                                                                            
  965    [RFC7480]  Newton, A., Ellacott, B., and N. Kong, "HTTP Usage in the    
  966               Registration Data Access Protocol (RDAP)", RFC 7480, March   
  967               2015, <http://www.rfc-editor.org/info/rfC7480>.              
  968                                                                            
  969    [RFC7481]  Hollenbeck, S. and N. Kong, "Security Services for the       
  970               Registration Data Access Protocol (RDAP)", RFC 7481, March   
  971               2015, <http://www.rfc-editor.org/info/rfc7481>.              
  972                                                                            
  973    [RFC7483]  Newton, A. and S. Hollenbeck, "JSON Responses for the        
  974               Registration Data Access Protocol (RDAP)", RFC 7483, March   
  975               2015, <http://www.rfc-editor.org/info/rfc7483>.              
  976                                                                            
  977    [RFC7484]  Blanchet, M., "Finding the Authoritative Registration Data   
  978               (RDAP) Service", RFC 7484, March 2015,                       
  979               <http://www.rfc-editor.org/info/rfc7484>.                    
  980                                                                            
  981                                                                            
  982                                                                            
  983                                                                            
  984                                                                            
  985                                                                            
  986                                                                            
  987 Newton & Hollenbeck          Standards Track                   [Page 18]   

  988 RFC 7482                    RDAP Query Format                 March 2015   
  989                                                                            
  990                                                                            
  991    [Unicode-UAX15]                                                         
  992               The Unicode Consortium, "Unicode Standard Annex #15:         
  993               Unicode Normalization Forms", September 2013,                
  994               <http://www.unicode.org/reports/tr15/>.                      
  995                                                                            
  996 8.2.  Informative References                                               
  997                                                                            
  998    [REST]     Fielding, R., "Architectural Styles and the Design of        
  999               Network-based Software Architectures", Ph.D. Dissertation,   
 1000               University of California, Irvine, 2000,                      
 1001               <http://www.ics.uci.edu/~fielding/pubs/dissertation/         
 1002               fielding_dissertation.pdf>.                                  
 1003                                                                            
 1004    [RFC3912]  Daigle, L., "WHOIS Protocol Specification", RFC 3912,        
 1005               September 2004, <http://www.rfc-editor.org/info/rfc3912>.    
 1006                                                                            
 1007    [RFC4007]  Deering, S., Haberman, B., Jinmei, T., Nordmark, E., and     
 1008               B. Zill, "IPv6 Scoped Address Architecture", RFC 4007,       
 1009               March 2005, <http://www.rfc-editor.org/info/rfc4007>.        
 1010                                                                            
 1011    [RFC4290]  Klensin, J., "Suggested Practices for Registration of        
 1012               Internationalized Domain Names (IDN)", RFC 4290, December    
 1013               2005, <http://www.rfc-editor.org/info/rfc4290>.              
 1014                                                                            
 1015    [RFC6874]  Carpenter, B., Cheshire, S., and R. Hinden, "Representing    
 1016               IPv6 Zone Identifiers in Address Literals and Uniform        
 1017               Resource Identifiers", RFC 6874, February 2013,              
 1018               <http://www.rfc-editor.org/info/rfc6874>.                    
 1019                                                                            
 1020    [RFC6927]  Levine, J. and P. Hoffman, "Variants in Second-Level Names   
 1021               Registered in Top-Level Domains", RFC 6927, May 2013,        
 1022               <http://www.rfc-editor.org/info/rfc6927>.                    
 1023                                                                            
 1024 Acknowledgements                                                           
 1025                                                                            
 1026    This document is derived from original work on RIR query formats        
 1027    developed by Byron J. Ellacott of APNIC, Arturo L. Servin of LACNIC,    
 1028    Kaveh Ranjbar of the RIPE NCC, and Andrew L. Newton of ARIN.            
 1029    Additionally, this document incorporates DNR query formats originally   
 1030    described by Francisco Arias and Steve Sheng of ICANN and Scott         
 1031    Hollenbeck of Verisign Labs.                                            
 1032                                                                            
 1033    The authors would like to acknowledge the following individuals for     
 1034    their contributions to this document: Francisco Arias, Marc Blanchet,   
 1035    Ernie Dainow, Jean-Philippe Dionne, Byron J. Ellacott, Behnam           
 1036    Esfahbod, John Klensin, John Levine, Edward Lewis, Mark Nottingham,     
 1037    Kaveh Ranjbar, Arturo L. Servin, Steve Sheng, and Andrew Sullivan.      
 1038                                                                            
 1039                                                                            
 1040                                                                            
 1041                                                                            
 1042 Newton & Hollenbeck          Standards Track                   [Page 19]   

 1043 RFC 7482                    RDAP Query Format                 March 2015   
 1044                                                                            
 1045                                                                            
 1046 Authors' Addresses                                                         
 1047                                                                            
 1048    Andrew Lee Newton                                                       
 1049    American Registry for Internet Numbers                                  
 1050    3635 Concorde Parkway                                                   
 1051    Chantilly, VA  20151                                                    
 1052    United States                                                           
 1053                                                                            
 1054    EMail: andy@arin.net                                                    
 1055    URI:   http://www.arin.net                                              
 1056                                                                            
 1057                                                                            
 1058    Scott Hollenbeck                                                        
 1059    Verisign Labs                                                           
 1060    12061 Bluemont Way                                                      
 1061    Reston, VA  20190                                                       
 1062    United States                                                           
 1063                                                                            
 1064    EMail: shollenbeck@verisign.com                                         
 1065    URI:   http://www.verisignlabs.com/                                     
 1066                                                                            
 1067                                                                            
 1068                                                                            
 1069                                                                            
 1070                                                                            
 1071                                                                            
 1072                                                                            
 1073                                                                            
 1074                                                                            
 1075                                                                            
 1076                                                                            
 1077                                                                            
 1078                                                                            
 1079                                                                            
 1080                                                                            
 1081                                                                            
 1082                                                                            
 1083                                                                            
 1084                                                                            
 1085                                                                            
 1086                                                                            
 1087                                                                            
 1088                                                                            
 1089                                                                            
 1090                                                                            
 1091                                                                            
 1092                                                                            
 1093                                                                            
 1094                                                                            
 1095                                                                            
 1096                                                                            
 1097 Newton & Hollenbeck          Standards Track                   [Page 20]   
 1098                                                                            
section-2.1 John Klensin(Editorial Erratum #5621) [Verified]
based on outdated version
IDN: Internationalized Domain Name

IDNA: Internationalized Domain Names in Applications, a protocol
      for the handling of IDNs.
It should say:
IDN: Internationalized Domain Name, a [fully-qualified] domain name
containing one or more labels that are intended to include one or more
Unicode code points outside the ASCII range (cf. "domain name",
"fully-qualified domain name" and "internationalized domain name" in
RFC 8499).

IDNA: Internationalized Domain Names in Applications, a protocol for
the handling of IDNs.  In this document, "IDNA" refers specifically to
the version of those specifications known as "IDNA2008" [RFC5980].


While the proposed new text above borders on the painfully pedantic,
failure to be specific about these things undermines the technical
validity and consistency of the text (making this a technical issue
rather than exclusively an editorial one like a missing reference).
IDNA2008 [RFC5890 Section 2.3.2.3] is very precise about what an "IDN"
is (a definition incorporated by reference in RFC 6365 and consistent
with the definition in RFC 8499) , but there are other things around
that, e.g., assume either that "IDN" refers to a label, not an FQDN;
that an ASCII label, even one in ACE form, does not make the FQDN in
which it is imbedded an IDN; that all of the label components of an IDN
must be U-labels or A-labels, etc.  Without the definition being clear,
some of the statements in the document make no sense.

A reference to 8499 is suggested above because it is the most recent
authoritative definition (and because I didn't write it), but 5980 would
be equally legitimate if the authors prefer.

Pinning down the IDNA definition is even more important.  While there
are IDNA2008 references further on in the document, if the question of
what the generic term "IDNA" means is left to the imagination of the
reader, then the specification is missing language about what to do if,
e.g., a query is inconsistent with the U-label form of what is stored in
the registry database without mapping.   The opportunity for that sort
of problem is clearly created by the "performs any local case mapping
deemed necessary" statement in Section 6.1 of the document, at least
unless that case mapping is constrained to not be applied to domain name
labels (which the text definitely does not say).