Internet DRAFT - draft-gould-regext-rdap-versioning
draft-gould-regext-rdap-versioning
Network Working Group J.G. Gould
Internet-Draft D.K. Keathley
Intended status: Standards Track VeriSign, Inc.
Expires: 2 June 2023 M. Loffredo
IIT-CNR/Registro.it
29 November 2022
Versioning in the Registration Data Access Protocol (RDAP)
draft-gould-regext-rdap-versioning-00
Abstract
This document describes an RDAP extension for identifying RDAP
extension versions supported by the server, RDAP extension versions
included in an RDAP response, and enabling a client to specify the
desired RDAP extension versions to include in an RDAP response.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 2 June 2023.
Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Gould, et al. Expires 2 June 2023 [Page 1]
Internet-Draft Versioning in RDAP November 2022
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions Used in This Document . . . . . . . . . . . . . . 3
3. Extension Version Identifier . . . . . . . . . . . . . . . . 3
3.1. Extension Versioning . . . . . . . . . . . . . . . . . . 3
3.2. Extension Version Identifier Syntax . . . . . . . . . . . 4
3.3. Profile Extension Versioning Considerations . . . . . . . 5
4. Versioning Extension Version Indentier . . . . . . . . . . . 6
5. Versioning RDAP Query Parameter . . . . . . . . . . . . . . . 6
6. Versioning RDAP Response . . . . . . . . . . . . . . . . . . 7
6.1. RDAP Conformance . . . . . . . . . . . . . . . . . . . . 7
6.2. "versioning-help" Member . . . . . . . . . . . . . . . . 7
6.3. "versioning" Member . . . . . . . . . . . . . . . . . . . 12
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16
7.1. RDAP Extensions Registry . . . . . . . . . . . . . . . . 16
8. Security Considerations . . . . . . . . . . . . . . . . . . . 16
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 16
9.1. Normative References . . . . . . . . . . . . . . . . . . 16
9.2. Informative References . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18
1. Introduction
RDAP supports identifying the RDAP extensions included in an RDAP
response using the RDAP Conformance, defined in Section 4.1 of
[RFC9083]. The RDAP Conformance values of RDAP extensions can
informally support versioning, but there is no standard mechanism
defined in [RFC9083] that exists to support extension version
signaling by the server. RDAP does not support the server providing
the extension versions that are supported by the server and does not
support the ability for a client to identify the desired RDAP
extension versions to include in an RDAP response.
This document describes an RDAP extension for identifying RDAP
extension versions supported by the server, RDAP extension versions
included in an RDAP response, and enabling a client to specify the
desired RDAP extension versions to include in an RDAP response. The
RDAP extension versions supported by the server is returned in an
extension to the RDAP help response, defined in Section 7 of
[RFC9083], using the "versioning-help" member Section 6.2. The
"versioning-help" member includes the list of supported extensions,
using the RDAP Conformance identifiers with a list of supported
versions, an indication of the default version, and optional links to
the extension version documentation. The RDAP extension versions
included in an RDAP response are identified using the "versioning"
member Section 6.3. The "versioning" member includes a list of
extensions, using the RDAP Conformance identifiers with the extension
Gould, et al. Expires 2 June 2023 [Page 2]
Internet-Draft Versioning in RDAP November 2022
version included in the RDAP response. The client can specify the
desired RDAP extension versions to include in the RDAP response with
the "versioning" query parameter Section 5. The "versioning" query
parameter is set with a list of extension version identifiers
Section 3, delimeted by a comma (',').
2. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Extension Version Identifier
The Extension Version Identifier is the unique versioned extension
identifier that is used for extension signaling by the server and by
the client. The Extension Version Identifier uses the Extension
Identifier, defined in [RFC7480], along with the Extension Versioning
defined in Section 3.1. The format of the Extension Version
Identifier is defined in Section 3.2.
3.1. Extension Versioning
The Extension Versioning uses a subset of the Semantic Versioning
[SemVer] rules, where the patch version, pre-release version, and
build metadata are not used. RDAP versioning is only associated with
changes to the protocol interface that is the public API of [SemVer].
Only the [SemVer] major version and minor version are used for
Extension Versioning. The RDAP extension given a version number
MAJOR.MINOR, increment the:
1. MAJOR version when you make incompatible protocol interface
changes
2. MINOR version when you add functionality in a backwards
compatible manner
The following are the Extension Versioning rules based on
modifications to the Semantic Versioning [SemVer] rules:
1. An extension using Extension Versioning MUST declare the
extension in a specification.
Gould, et al. Expires 2 June 2023 [Page 3]
Internet-Draft Versioning in RDAP November 2022
2. A normal version MUST take the form X.Y where X.Y are non-
negative integers, and MUST NOT contain leading zeroes. X is the
major version and Y is the minor version. Each element MUST
increase numerically. For instance: 1.1 -> 1.2 -> 1.3.
3. Major version zero (0.y) is for initial definition. Anything MAY
change at any time. The extension interface SHOULD NOT be
considered stable. An extension that is an initial Internet
Draft prior to Working Group Last Call (WGLC) SHOULD use a zero
major version.
4. Version 1.0 defines the extension interface. The way in which
the version number is incremented after this is dependent on this
extension interface and how it changes. An extension that is an
initial Internet Draft that has passed Working Group Last Call
(WGLC) SHOULD use version 1.0.
5. Minor version Y (x.Y | x > 0) MUST be incremented if new,
backwards compatible interface changes are introduced in the
extension interface.
6. Major version X (X.y | X > 0) MUST be incremented if any
backwards incompatible changes are introduced to the extension
interface. It MAY also include minor level changes. The minor
version MUST be reset to 0 when major version is incremented.
7. Precedence refers to how versions are compared to each other when
ordered.
1. Precedence MUST be calculated by seperating the version into
major and minor identifiers in that order.
2. Precedence is determined by the first difference when
comparing each of these identifiers from left to right as
follows: Major and minor are always compared numerically.
Example: 1.0 < 2.0 < 2.1.
3.2. Extension Version Identifier Syntax
The Augmented Backus-Naur Form (ABNF) grammar [RFC5234] format for
the Extension Version Identifier is below, with the "identifier" rule
matching the Extension Identifer in [RFC7480] and returned in the
"rdapConformance" data structure of [RFC7483]:
Gould, et al. Expires 2 June 2023 [Page 4]
Internet-Draft Versioning in RDAP November 2022
extension-version-identifier = identifier ["-" major "." minor]
identifier = ALPHA *( ALPHA / DIGIT / "_")
major = numeric-identifer
minor = numeric-identifer
numeric-identifer = "0" / positive-digit *DIGIT
positive-digit = %x31-39 ; 1-9
Figure 1: Extension Version Identifier ABNF
Example Extension Version Identifiers:
"versioning-0.0"
Initial "versioning" extension version identifier that is not
considered stable.
"ext1-1.0"
First stable version of the "ext1" extension.
"ext1-1.1"
Backward compatible change to the "ext1-1.0" extension version
identifier.
"ext1-2.0"
Incompatible change to the "ext1-1.0" or "ext1-1.1" extension
version identifier.
3.3. Profile Extension Versioning Considerations
Profile extensions represent existing entries in the RDAP Extensions
Registry, defined in Section 8.1 of [RFC7480], that embed versioning
information to signal policy implementation by the server. The RDAP
Extensions Registry was not designed to support versioning, so the
profile extensions represent a corner case that can be better handled
using this extension. Examples include
"icann_rdap_response_profile_0" and
"icann_rdap_technical_implementation_guide_0", where the version "0"
is included as a suffix of the extension identifier. The goal for
the "versioning" extension is to handle the versioning consistently
for all RDAP extensions, so the Extension Version Identifier MAY
duplicate some of the version information included in the extension
identifier initially. For example, for the extension identifier
"icann_rdap_response_profile_0", the recommendation is to set the
Extension Version Identifier of the "icann_rdap_response_profile_0"
extension identifier to "icann_rdap_response_profile_0-1.0" to
reflect it as the first stable version. Similarly, a future
"icann_rdap_response_profile_1" extension identifier would have the
Extension Version Identifier set to
"icann_rdap_response_profile_1-2.0".
Gould, et al. Expires 2 June 2023 [Page 5]
Internet-Draft Versioning in RDAP November 2022
The profile extension identifiers can be transitioned to leverage
this extension to fully handle the versioning of the extension by
removing the versioning information from the extension identifiers
and consolidating a set of profile extension identifiers with a
single profile extension identifier. For example, the set of profile
extension identifiers "icann_rdap_response_profile_0" and
"icann_rdap_response_profile_1" can be consolidated to the single
extension identifier "icann_rdap_response_profile" and the
"versioning" extension can include the Extension Version Identifier
values of "icann_rdap_response_profile-1.0" and
"icann_rdap_response_profile-2.0". Embedding of versioning into the
extension identifers was the only option available prior to the use
of the "versioning" extension, which can be used to signal the
versioning of all RDAP extensions.
4. Versioning Extension Version Indentier
The Extension Version Identifier Section 3 associated with this
version of the "versioning" extension is "versioning-0.1".
5. Versioning RDAP Query Parameter
This specification describes an OPTIONAL "versioning" query parameter
for use with RDAP queries to specify the version of the RDAP
extensions to include in the RDAP response. The "versioning" query
parameter is a list of one or more Extension Version Identifiers, as
defined in Section 3, seperated by commas. The Augmented Backus-Naur
Form (ABNF) grammar [RFC5234] format for the "versioning" query
parameter, using the "extension-version-identifier" rule from
Figure 1, is:
versioning = "versioning="
extension-version-identifier *("," extension-version-identifier)
Figure 2: Versioning Query Parameter ABNF
To bootstrap the use of the "versioning" extension, the client SHOULD
use the "versioning" query parameter with the desired version of the
"versioning" extension; otherwise it will be up to server policy what
version of the "versioning" extension to return in the RDAP response.
Example RDAP queries using the "versioning" query parameter:
https://example.com/rdap/help?versioning=versioning-0.0
Help query using extension "versioning-0.0". The response can be
found in figure Figure 9.
Gould, et al. Expires 2 June 2023 [Page 6]
Internet-Draft Versioning in RDAP November 2022
https://example.com/rdap/domain/
versioning.example?versioning=ext1-0.1
Domain query using extension "ext1-0.1". The response can be
found in figure Figure 5.
https://example.com/rdap/domain/
versioning.example?versioning=ext1-0.1,versioning-0.0
Domain query using extensions "ext1-0.1" and "versioning-0.0".
The response can be found in figure Figure 6.
6. Versioning RDAP Response
6.1. RDAP Conformance
RDAP responses that contain values described in this document MUST
indicate conformance with this specification by including an
"rdapConformance" ([RFC9083]) value of "versioning". The
"versioning" extension identifier is described in Section 7.1.
Example "rdapConformance" member with the versioning extension:
"rdapConformance": [
"rdap_level_0",
"versioning"
]
Figure 3: "rdapConformance" with Versioning Extension
6.2. "versioning-help" Member
The "versioning-help" member MUST be added to a response of a RDAP
help query, defined in [RFC9082], to indicate the RDAP extensions
that are supported by the server. The "versioning-help" member
contains an array of extension objects with the following child
members:
"extension": The Extension Identifer, defined in [RFC7480], and
returned in the "rdapConformance" data structure of [RFC7483].
An example is the "versioning" extension identifier.
"versions": An array of extension version objects with the following
child members:
"version:" The Extension Version Identifier, defined in
Section 3. An example is the "versioning-0.1" extension
version identifier.
"default:" OPTIONAL boolean value indicating which of the
Gould, et al. Expires 2 June 2023 [Page 7]
Internet-Draft Versioning in RDAP November 2022
extension version objects is the default returned by the
server when the client doesn't specify the version using the
"versioning" query parameter, defined in Section 5. When
there is a single extension version object, then the
"default" member value is true by default. When there is
more than one extension version object, the server MUST
include one extension version object with the "default"
member set to true, and the remaining extension version
objects "default" member value is false by default.
"start:" OPTIONAL date and time that the extension version will
be supported. When the member is not included, the extension
version object is supported. Once the date and time has
passed, the "start" member MUST be removed. The syntax for
the date and time is defined in [RFC3339].
"end:" OPTIONAL date and time that the extension version will
stop being supported. When the member is not included, the
extension version object has no planned support expiry. Once
the date and time has passed, the extension version object
MUST be removed and the extension object MUST be removed if
the last extension version object is removed. The syntax for
the date and time is defined in [RFC3339].
"links:" OPTIONAL "links" array to extension version
documentation. The relationship of these links is defined by
the IANA registry described in [RFC8288]. The JSON name/
values of "rel", "href", "hreflang", "title", "media", and
"type" correspond to values found in Section 3 of [RFC8288].
The "value", "rel", and "href" JSON values MUST be specified.
All other JSON values are OPTIONAL.
Example "links" member for the "ext2-0.1" extension version
identifier:
"links": [
{
"value": "https://ext2.example/doc/html/ext2-01.txt",
"rel": "describedby",
"href": "https://ext2.example/doc/html/ext2-01.txt",
"type": "text/plain"
}
]
Figure 7: Example of "links" Member
Gould, et al. Expires 2 June 2023 [Page 8]
Internet-Draft Versioning in RDAP November 2022
Example help response with "versioning-help" and "versioning" members
and no client specified versioning in the help query
"https://example.com/rdap/help":
{
"rdapConformance": [
"rdap_level_0",
"versioning"
],
"versioning-help": [
{
"extension": "versioning",
"versions": [
{
"version": "versioning-0.0"
},
{
"version": "versioning-0.1",
"default": true
}
]
},
{
"extension": "ext1",
"versions": [
{
"version": "ext1-0.1",
"end": "2022-12-31T23:59:59Z"
},
{
"version": "ext1-1.0",
"default": true
},
{
"version": "ext1-1.1",
"start": "2022-12-31T23:59:59Z"
}
]
},
{
"extension": "ext2",
"versions": [
{
"version": "ext2-0.1",
"end": "2022-12-31T23:59:59Z",
"links": [
{
"value": "https://ext2.example/doc/html/ext2-01.txt",
Gould, et al. Expires 2 June 2023 [Page 9]
Internet-Draft Versioning in RDAP November 2022
"rel": "describedby",
"href": "https://ext2.example/doc/html/ext2-01.txt",
"type": "text/plain"
}
]
}
]
},
{
"extension": "ext3",
"versions": [
{
"version": "ext3-1.0",
"start": "2022-12-31T23:59:59Z"
}
]
}
],
"versioning": [
{
"extension": "versioning",
"version": "versioning-0.1"
}
]
}
Figure 8: RDAP Help Response with No Client Specified Versioning
Example help response with the "versioning-help" and "versioning"
members and client specified "versioning-0.0" extension version in
the help query "https://example.com/rdap/help?versioning=versioning-
0.0". The "versioning-0.0" extension version does not include
support for the "default" member and uses the "ext" member instead of
the "extension" member.
{
"rdapConformance": [
"rdap_level_0",
"versioning"
],
"versioning-help": [
{
"ext": "versioning",
"versions": [
{
"version": "versioning-0.0"
},
{
Gould, et al. Expires 2 June 2023 [Page 10]
Internet-Draft Versioning in RDAP November 2022
"version": "versioning-0.1"
}
]
},
{
"ext": "ext1",
"versions": [
{
"version": "ext1-0.1",
"end": "2022-12-31T23:59:59Z"
},
{
"version": "ext1-1.0"
},
{
"version": "ext1-1.1",
"start": "2022-12-31T23:59:59Z"
}
]
},
{
"ext": "ext2",
"versions": [
{
"version": "ext2-0.1",
"end": "2022-12-31T23:59:59Z",
"links": [
{
"value": "https://ext2.example/doc/html/ext2-01.txt",
"rel": "describedby",
"href": "https://ext2.example/doc/html/ext2-01.txt",
"type": "text/plain"
}
]
}
]
},
{
"ext": "ext3",
"versions": [
{
"version": "ext3-1.0",
"start": "2022-12-31T23:59:59Z"
}
]
}
],
"versioning": [
Gould, et al. Expires 2 June 2023 [Page 11]
Internet-Draft Versioning in RDAP November 2022
{
"ext": "versioning",
"version": "versioning-0.0"
}
]
}
Figure 9: RDAP Help Response with "versioning-0.0" Extension Version
6.3. "versioning" Member
The "versioning" member MUST be added to the RDAP response when there
is one or more RDAP extension fields. The "versioning" member is
included as a member of the object class in a lookup response, such
as the object classes defined in [RFC9083], and as a member of the
object instances in a search response, such as the object instances
defined in [RFC9083]. The "versioning" member contains an array of
versioning objects with the following child members:
"extension": The Extension Identifer, defined in [RFC7480], and
returned in the "rdapConformance" data structure of [RFC7483].
An example is the "versioning" extension identifier.
"version": The Extension Version Identifier, defined in Section 3,
that is included in the response. An example is the "versioning-
0.1" extension version identifier.
Example domain lookup response with "versioning" member and no client
specified versioning in the lookup query
"https://example.com/rdap/domain/versioning.example":
{
"rdapConformance": [
"rdap_level_0",
"versioning",
"ext1",
"ext2"
],
"objectClassName": "domain",
"handle": "XXXX",
"ldhName": "versioning.example",
"links": [
{
"value": "https://example.net/domain/versioning.example",
"rel": "self",
"href": "https://example.net/domain/versioning.example",
"type": "application/rdap+json"
}
Gould, et al. Expires 2 June 2023 [Page 12]
Internet-Draft Versioning in RDAP November 2022
],
"status": [
"ok"
],
"events": [
{
"eventAction": "registration",
"eventDate": "1990-12-31T23:59:59Z"
},
{
"eventAction": "expiration",
"eventDate": "2023-12-31T23:59:59Z"
}
],
"ext1": {
"value": "example 1",
"newoptionalstring": "new value"
},
"ext2": {
"name": "example 2"
},
"versioning": [
{
"extension": "versioning",
"version": "versioning-0.1"
},
{
"extension": "ext1",
"version": "ext1-1.0"
},
{
"extension": "ext2",
"version": "ext2-0.1"
}
]
}
Figure 4: RDAP Domain Lookup Response with No Client Specified
Versioning
Example domain lookup response with "versioning" member and client
specified "ext1-0.1" extension version in the lookup query
"https://example.com/rdap/domain/
versioning.example?versioning=ext1-0.1":
Gould, et al. Expires 2 June 2023 [Page 13]
Internet-Draft Versioning in RDAP November 2022
{
"rdapConformance": [
"rdap_level_0",
"versioning",
"ext1",
"ext2"
],
"objectClassName": "domain",
"handle": "XXXX",
"ldhName": "versioning.example",
"links": [
{
"value": "https://example.net/domain/versioning.example",
"rel": "self",
"href": "https://example.net/domain/versioning.example",
"type": "application/rdap+json"
}
],
"status": [
"ok"
],
"events": [
{
"eventAction": "registration",
"eventDate": "1990-12-31T23:59:59Z"
},
{
"eventAction": "expiration",
"eventDate": "2023-12-31T23:59:59Z"
}
],
"ext1": {
"value": "example 1"
},
"ext2": {
"name": "example 2"
},
"versioning": [
{
"extension": "versioning",
"version": "versioning-0.1"
},
{
"extension": "ext1",
"version": "ext1-0.1"
},
{
"extension": "ext2",
Gould, et al. Expires 2 June 2023 [Page 14]
Internet-Draft Versioning in RDAP November 2022
"version": "ext2-0.1"
}
]
}
Figure 5: RDAP Domain Lookup Response with "ext1-0.1" Extension
Version
Example domain lookup response with "versioning" member and client
specified "ext1-0.1" and "versioning-0.0" extension versions in the
lookup query "https://example.com/rdap/domain/
versioning.example?versioning=ext1-0.1,versioning-0.0":
{
"rdapConformance": [
"rdap_level_0",
"versioning",
"ext1",
"ext2"
],
"objectClassName": "domain",
"handle": "XXXX",
"ldhName": "versioning.example",
"links": [
{
"value": "https://example.net/domain/versioning.example",
"rel": "self",
"href": "https://example.net/domain/versioning.example",
"type": "application/rdap+json"
}
],
"status": [
"ok"
],
"events": [
{
"eventAction": "registration",
"eventDate": "1990-12-31T23:59:59Z"
},
{
"eventAction": "expiration",
"eventDate": "2023-12-31T23:59:59Z"
}
],
"ext1": {
"value": "example 1"
},
"ext2": {
Gould, et al. Expires 2 June 2023 [Page 15]
Internet-Draft Versioning in RDAP November 2022
"name": "example 2"
},
"versioning": [
{
"ext": "versioning",
"version": "versioning-0.0"
},
{
"ext": "ext1",
"version": "ext1-0.1"
},
{
"ext": "ext2",
"version": "ext2-0.1"
}
]
}
Figure 6: RDAP Domain Lookup Response with "ext1-0.1" and
"versioning-0.0" Extension Versions
7. IANA Considerations
7.1. RDAP Extensions Registry
IANA is requested to register the following value in the RDAP
Extensions Registry:
Extension identifier: versioning
Registry operator: Any
Published specification: This document.
Contact: IESG <iesg@ietf.org>
Intended usage: This extension identifies RDAP extension versioning.
8. Security Considerations
The RDAP extensions available to clients can be subject to server
disclosure and authorization policies. Inclusion of available RDAP
extensions and their available versions in the "versioning-help"
member, defined in Section 6.2, of the RDAP help response and
inclusion of the RDAP extensions in the RDAP response with the
"versioning" member, defined in Section 6.3, can be dependent on
authentication and authorization of the client by the server.
9. References
9.1. Normative References
Gould, et al. Expires 2 June 2023 [Page 16]
Internet-Draft Versioning in RDAP November 2022
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC3339] Klyne, G. and C. Newman, "Date and Time on the Internet:
Timestamps", RFC 3339, DOI 10.17487/RFC3339, July 2002,
<https://www.rfc-editor.org/info/rfc3339>.
[RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234,
DOI 10.17487/RFC5234, January 2008,
<https://www.rfc-editor.org/info/rfc5234>.
[RFC7480] Newton, A., Ellacott, B., and N. Kong, "HTTP Usage in the
Registration Data Access Protocol (RDAP)", STD 95,
RFC 7480, DOI 10.17487/RFC7480, March 2015,
<https://www.rfc-editor.org/info/rfc7480>.
[RFC7483] Newton, A. and S. Hollenbeck, "JSON Responses for the
Registration Data Access Protocol (RDAP)", RFC 7483,
DOI 10.17487/RFC7483, March 2015,
<https://www.rfc-editor.org/info/rfc7483>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8288] Nottingham, M., "Web Linking", RFC 8288,
DOI 10.17487/RFC8288, October 2017,
<https://www.rfc-editor.org/info/rfc8288>.
[RFC9082] Hollenbeck, S. and A. Newton, "Registration Data Access
Protocol (RDAP) Query Format", STD 95, RFC 9082,
DOI 10.17487/RFC9082, June 2021,
<https://www.rfc-editor.org/info/rfc9082>.
[RFC9083] Hollenbeck, S. and A. Newton, "JSON Responses for the
Registration Data Access Protocol (RDAP)", STD 95,
RFC 9083, DOI 10.17487/RFC9083, June 2021,
<https://www.rfc-editor.org/info/rfc9083>.
9.2. Informative References
[SemVer] "Semantic Versioning 2.0.0 (text from June 19, 2020)",
<https://github.com/semver/semver/
blob/8b2e8eec394948632957639dfa99fc7ec6286911/semver.md>.
Gould, et al. Expires 2 June 2023 [Page 17]
Internet-Draft Versioning in RDAP November 2022
Authors' Addresses
James Gould
VeriSign, Inc.
12061 Bluemont Way
Reston, VA 20190
United States of America
Email: jgould@verisign.com
URI: http://www.verisigninc.com
Daniel Keathley
VeriSign, Inc.
12061 Bluemont Way
Reston, VA 20190
United States of America
Email: dkeathley@verisign.com
URI: http://www.verisigninc.com
Mario Loffredo
IIT-CNR/Registro.it
Via Moruzzi,1
56124 Pisa
Italy
Email: mario.loffredo@iit.cnr.it
URI: http://www.iit.cnr.it
Gould, et al. Expires 2 June 2023 [Page 18]