<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-ietf-regext-rdap-geofeed-14" number="9877" updates="" obsoletes="" consensus="true" submissionType="IETF" category="std" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" prepTime="2025-10-12T20:14:08" indexInclude="true" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-regext-rdap-geofeed-14" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9877" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="RDAP Geofeed">Registration Data Access Protocol (RDAP) Extension for Geofeed Data</title>
    <seriesInfo name="RFC" value="9877" stream="IETF"/>
    <author initials="J." surname="Singh" fullname="Jasdip Singh">
      <organization showOnFrontPage="true">ARIN</organization>
      <address>
        <email>jasdips@arin.net</email>
      </address>
    </author>
    <author initials="T." surname="Harrison" fullname="Tom Harrison">
      <organization showOnFrontPage="true">APNIC</organization>
      <address>
        <email>tomh@apnic.net</email>
      </address>
    </author>
    <date month="10" year="2025"/>
    <area>ART</area>
    <workgroup>regext</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">This document defines a new Registration Data Access Protocol (RDAP) extension, "geofeed1", for indicating that an RDAP
server hosts geofeed URLs for its IP network objects. It also defines a new media type and a new link relation type for
the associated link objects included in responses.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9877" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2025 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) 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.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-specification">Specification</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2">
              <li pn="section-toc.1-1.2.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.1.1"><xref derivedContent="2.1" format="counter" sectionFormat="of" target="section-2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-media-type-for-a-geofeed-li">Media Type for a Geofeed Link</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.2.1"><xref derivedContent="2.2" format="counter" sectionFormat="of" target="section-2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-geofeed-link">Geofeed Link</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.3">
                <t indent="0" pn="section-toc.1-1.2.2.3.1"><xref derivedContent="2.3" format="counter" sectionFormat="of" target="section-2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-extension-identifier">Extension Identifier</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.4">
                <t indent="0" pn="section-toc.1-1.2.2.4.1"><xref derivedContent="2.4" format="counter" sectionFormat="of" target="section-2.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-example">Example</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-operational-considerations">Operational Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-privacy-considerations">Privacy Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-rdap-extensions-registry">RDAP Extensions Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-link-relations-registry">Link Relations Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.3">
                <t indent="0" pn="section-toc.1-1.6.2.3.1"><xref derivedContent="6.3" format="counter" sectionFormat="of" target="section-6.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-media-types-registry">Media Types Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.4">
                <t indent="0" pn="section-toc.1-1.6.2.4.1"><xref derivedContent="6.4" format="counter" sectionFormat="of" target="section-6.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-structured-syntax-suffixes-">Structured Syntax Suffixes Registry</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.7.2">
              <li pn="section-toc.1-1.7.2.1">
                <t indent="0" pn="section-toc.1-1.7.2.1.1"><xref derivedContent="7.1" format="counter" sectionFormat="of" target="section-7.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.2">
                <t indent="0" pn="section-toc.1-1.7.2.2.1"><xref derivedContent="7.2" format="counter" sectionFormat="of" target="section-7.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1"><xref target="RFC8805" format="default" sectionFormat="of" derivedContent="RFC8805"/> and <xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/> detail the IP geolocation feed (commonly known as 'geofeed') file format and associated
access mechanisms. While <xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/> describes how a registry can make geofeed URLs available by way of a Routing
Policy Specification Language (RPSL) <xref target="RFC2622" format="default" sectionFormat="of" derivedContent="RFC2622"/> service, the Regional Internet Registries (RIRs) have deployed
Registration Data Access Protocol (RDAP) (<xref target="RFC7480" format="default" sectionFormat="of" derivedContent="RFC7480"/>, <xref target="RFC7481" format="default" sectionFormat="of" derivedContent="RFC7481"/>, <xref target="RFC9082" format="default" sectionFormat="of" derivedContent="RFC9082"/>, <xref target="RFC9083" format="default" sectionFormat="of" derivedContent="RFC9083"/>) services as successors to
RPSL for Internet number resource registrations, and maintaining feature parity between the two services supports client
transition from RPSL to RDAP in this context. To that end, this document specifies how geofeed URLs can be accessed
through RDAP. It defines a new RDAP extension, "geofeed1", for indicating that an RDAP server hosts geofeed URLs for its
IP network objects, as well as a new media type and a new link relation type for the associated link objects.</t>
      <t indent="0" pn="section-1-2">Fetching and making use of geofeed data is out of scope for the purposes of this document. See <xref target="RFC8805" format="default" sectionFormat="of" derivedContent="RFC8805"/> and
<xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/> for further details.</t>
      <t indent="0" pn="section-1-3">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
    "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>",
    "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
    "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be
    interpreted as described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only when, they appear in all capitals, as
    shown here.
      </t>
      <t indent="0" pn="section-1-4">Indentation and whitespace in examples are provided only to illustrate element relationships and are not required
features of this specification.</t>
      <t indent="0" pn="section-1-5">"..." in examples is used as shorthand for elements defined outside of this document.</t>
    </section>
    <section anchor="specification" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-specification">Specification</name>
      <section anchor="media_type_for_a_geofeed_link" numbered="true" removeInRFC="false" toc="include" pn="section-2.1">
        <name slugifiedName="name-media-type-for-a-geofeed-li">Media Type for a Geofeed Link</name>
        <t indent="0" pn="section-2.1-1"><xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/> requires a geofeed file to be a UTF-8 <xref target="RFC3629" format="default" sectionFormat="of" derivedContent="RFC3629"/> comma-separated values (CSV) file, with a series of "#"
comments at the end for the optional Resource Public Key Infrastructure (RPKI) <xref target="RFC6480" format="default" sectionFormat="of" derivedContent="RFC6480"/> signature. At first glance,
the "text/csv" media type seems like a good candidate for a geofeed file, since it supports the "#" comments needed for
including the RPKI signature.</t>
        <t indent="0" pn="section-2.1-2">However, although the CSV geofeed data could be viewed directly by a user such that the "text/csv" media type was
appropriate, the most common use case will involve it being processed by some sort of application first, in order to
facilitate subsequent IP address lookup operations. Therefore, using a new "application" media type with a "geofeed"
subtype (<xref target="RFC6838" sectionFormat="of" section="4.2.5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6838#section-4.2.5" derivedContent="RFC6838"/>) for the geofeed data is preferable to using "text/csv".</t>
        <t indent="0" pn="section-2.1-3">To that end, this document registers a new "application/geofeed+csv" media type in the IANA "Media Types" registry (see
<xref target="media_types_registry" format="default" sectionFormat="of" derivedContent="Section 6.3"/>), and a new "+csv" suffix in the IANA "Structured Syntax Suffixes" registry (see
<xref target="structured_syntax_suffixes_registry" format="default" sectionFormat="of" derivedContent="Section 6.4"/>).</t>
      </section>
      <section anchor="geofeed_link" numbered="true" removeInRFC="false" toc="include" pn="section-2.2">
        <name slugifiedName="name-geofeed-link">Geofeed Link</name>
        <t indent="0" pn="section-2.2-1">An RDAP server that hosts geofeed URLs for its IP network objects (<xref target="RFC9083" sectionFormat="of" section="5.4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9083#section-5.4" derivedContent="RFC9083"/>) may include link objects
for those geofeed URLs in IP network objects in its responses. These link objects are added to the "links" member of
each object (<xref target="RFC9083" sectionFormat="of" section="4.2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9083#section-4.2" derivedContent="RFC9083"/>).</t>
        <t indent="0" pn="section-2.2-2">In RDAP, the "value", "rel", and "href" JSON members are required for any link object. Additionally, for a geofeed link
object, the "type" JSON member is <bcp14>RECOMMENDED</bcp14>. The geofeed-specific components of a link object are like so:</t>
        <dl spacing="normal" newline="false" indent="3" pn="section-2.2-3">
          <dt pn="section-2.2-3.1">"rel":</dt>
          <dd pn="section-2.2-3.2">The link relation type is set to "geofeed". This is a new link
  relation type for IP geolocation feed data, registered in the IANA "Link
  Relations" registry (see <xref target="link_relations_registry" format="default" sectionFormat="of" derivedContent="Section 6.2"/>) by
  this document.</dd>
          <dt pn="section-2.2-3.3">"href":</dt>
          <dd pn="section-2.2-3.4">The target URL is set to the HTTPS URL of the geofeed file (<xref target="RFC9632" sectionFormat="of" section="6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-6" derivedContent="RFC9632"/>) for an IP
  network.</dd>
          <dt pn="section-2.2-3.5">"type":</dt>
          <dd pn="section-2.2-3.6">"application/geofeed+csv" (see <xref target="media_type_for_a_geofeed_link" format="default" sectionFormat="of" derivedContent="Section 2.1"/>).</dd>
        </dl>
        <t indent="0" pn="section-2.2-4">An IP network object returned by an RDAP server <bcp14>MAY</bcp14> contain zero or more geofeed link objects, though typically an IP
network will have either zero or only one. The scenario where more than one geofeed link object could be
returned is when the server is able to represent that data in multiple languages. In such a case, the server <bcp14>SHOULD</bcp14>
provide "hreflang" members for the geofeed link objects. Except for the multiple-languages scenario, the server <bcp14>SHOULD NOT</bcp14> return more than one geofeed link object.</t>
      </section>
      <section anchor="extension-identifier" numbered="true" removeInRFC="false" toc="include" pn="section-2.3">
        <name slugifiedName="name-extension-identifier">Extension Identifier</name>
        <t indent="0" pn="section-2.3-1">This document defines a new extension identifier, "geofeed1", for use by servers that host geofeed URLs for their IP
network objects and include geofeed URL link objects in their responses to clients in accordance with <xref target="geofeed_link" format="default" sectionFormat="of" derivedContent="Section 2.2"/>. A
server that uses this extension identifier <bcp14>MUST</bcp14> include it in the "rdapConformance" array (<xref target="RFC9083" sectionFormat="of" section="4.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9083#section-4.1" derivedContent="RFC9083"/>) for
any lookup or search response containing an IP network object, as well as in the help response. Here is an elided
example of this inclusion:</t>
        <sourcecode type="json" markers="false" pn="section-2.3-2">{
    "rdapConformance": [ "rdap_level_0", "geofeed1", ... ],
    ...
}</sourcecode>
        <t indent="0" pn="section-2.3-3">If the server includes "geofeed1" in the "rdapConformance" array, then for any response concerning a particular IP
network object for which the server possesses a geofeed URL and is able to return it to the client (i.e., the server is not
compelled to omit it due to regulatory constraints or similar), the server <bcp14>MUST</bcp14> include a corresponding geofeed link
object in the response.</t>
        <t indent="0" pn="section-2.3-4">An RDAP server may make use of the "application/geofeed+csv" media type and the "geofeed" link relation defined in this
specification in its responses without including the "geofeed1" extension identifier in those responses, because RDAP
servers are free to use any registered media type or link relation in a standard response without implementing any
particular extension. The additional value of including the extension identifier in the "rdapConformance" array is that
it signals to the client that the server hosts geofeed URLs for its IP network objects. This is useful where a client
receives an IP network object without a geofeed link object, because in that case the client can infer that no geofeed
data is available for that object, since the server would have provided it if it were available.</t>
        <t indent="0" pn="section-2.3-5">Although a server may use registered media types in its link objects without any restrictions, it is useful to define
new RDAP extensions for those media types in order for the server to communicate to clients that it will make data for
that type accessible. This is what the server does with the "geofeed1" extension identifier.</t>
        <t indent="0" pn="section-2.3-6">The "1" in "geofeed1" denotes that this is version 1 of the geofeed extension.  New versions of the geofeed extension
will use different extension identifiers.</t>
      </section>
      <section anchor="example" numbered="true" removeInRFC="false" toc="include" pn="section-2.4">
        <name slugifiedName="name-example">Example</name>
        <t indent="0" pn="section-2.4-1">The following is an elided example of an IP network object with a geofeed link object:</t>
        <sourcecode type="json" markers="false" pn="section-2.4-2">{
    "objectClassName": "ip network",
    "handle": "XXXX-RIR",
    "startAddress": "2001:db8::",
    "endAddress": "2001:db8:0:ffff:ffff:ffff:ffff:ffff",
    "ipVersion": "v6",
    "name": "NET-RTR-1",
    "type": "DIRECT ALLOCATION",
    "country": "AU",
    "parentHandle": "YYYY-RIR",
    "status": [ "active" ],
    "links":
     [
        {
            "value": "https://example.net/ip/2001:db8::/48",
            "rel": "self",
            "href": "https://example.net/ip/2001:db8::/48",
            "type": "application/rdap+json"
        },
        {
            "value": "https://example.net/ip/2001:db8::/48",
            "rel": "geofeed",
            "href": "https://example.com/geofeed",
            "type": "application/geofeed+csv"
        },
        ...
    ],
    ...
}</sourcecode>
      </section>
    </section>
    <section anchor="operational-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-operational-considerations">Operational Considerations</name>
      <t indent="0" pn="section-3-1">When an RDAP client performs an IP network lookup, per <xref target="RFC9082" sectionFormat="of" section="3.1.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9082#section-3.1.1" derivedContent="RFC9082"/>, the RDAP server is required to return
the most-specific IP network object that covers the IP address range provided by the client. That IP network object may
not have an associated geofeed link, but it is possible that a less-specific IP network object does have such a link.
Clients attempting to retrieve geofeed data for a given IP address range via RDAP should consider whether to retrieve
the parent object for the initial response (and so on, recursively) in the event that the initial response does not
contain geofeed data. Conversely, server operators should consider interface options for resource holders in order to
support the provisioning of geofeed links for all networks covered by the associated data.</t>
      <t indent="0" pn="section-3-2">It is common for a resource holder to maintain a single geofeed file containing the geofeed data for all of their
resources. The resource holder then updates each of their network object registrations to refer to that single geofeed
file. As with geofeed references in inetnum: objects (per <xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/>), clients who find a geofeed link object within an
IP network object and opt to retrieve the data from the associated link <bcp14>MUST</bcp14> ignore any entry where the entry's IP
address range is outside the IP network object's address range.</t>
      <t indent="0" pn="section-3-3"><xref target="RFC8805" sectionFormat="of" section="3.2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8805#section-3.2" derivedContent="RFC8805"/> recommends that consumers of geofeed data verify that the publisher of the data is
authoritative for the relevant resources. The RDAP bootstrap process <xref target="RFC9224" format="default" sectionFormat="of" derivedContent="RFC9224"/> helps clients with this
recommendation, since a client following that process will be directed to the RDAP server that is able to make
authoritative statements about the disposition of the relevant resources.</t>
      <t indent="0" pn="section-3-4">To prevent undue load on RDAP and geofeed servers, clients fetching geofeed data using these mechanisms <bcp14>MUST NOT</bcp14> do
frequent real-time lookups. See <xref target="RFC9632" sectionFormat="of" section="6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-6" derivedContent="RFC9632"/> for further details.</t>
    </section>
    <section anchor="privacy-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-privacy-considerations">Privacy Considerations</name>
      <t indent="0" pn="section-4-1">All the privacy considerations from <xref target="RFC9632" sectionFormat="of" section="7" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-7" derivedContent="RFC9632"/> apply to this document. In particular, the service provider
publishing the geofeed file <bcp14>MUST</bcp14> take care not to expose the location of any individual.</t>
      <t indent="0" pn="section-4-2">Many jurisdictions have laws or regulations that restrict the use of "personal data", per the definition in <xref target="RFC6973" format="default" sectionFormat="of" derivedContent="RFC6973"/>.
Given that, registry operators should ascertain whether the regulatory environment in which they operate permits
implementation of the functionality defined in this document.</t>
    </section>
    <section anchor="security_considerations" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-5-1">Sections <xref target="RFC9632" sectionFormat="bare" section="6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-6" derivedContent="RFC9632"/> and
<xref target="RFC9632" sectionFormat="bare" section="9" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-9" derivedContent="RFC9632"/> of <xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/>
document several security considerations that are equally relevant in the RDAP context.</t>
      <t indent="0" pn="section-5-2">A geofeed file <bcp14>MUST</bcp14> be referenced with an HTTPS URL, per <xref target="RFC9632" sectionFormat="of" section="6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-6" derivedContent="RFC9632"/>. The geofeed file may also contain an
RPKI signature, per <xref target="RFC9632" sectionFormat="of" section="5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-5" derivedContent="RFC9632"/>.</t>
      <t indent="0" pn="section-5-3">Besides that, this document does not introduce any new security considerations past those already discussed in the RDAP
protocol specifications (<xref target="RFC7481" format="default" sectionFormat="of" derivedContent="RFC7481"/>, <xref target="RFC9560" format="default" sectionFormat="of" derivedContent="RFC9560"/>).</t>
    </section>
    <section anchor="iana-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-6">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <section anchor="rdap-extensions-registry" numbered="true" removeInRFC="false" toc="include" pn="section-6.1">
        <name slugifiedName="name-rdap-extensions-registry">RDAP Extensions Registry</name>
        <t indent="0" pn="section-6.1-1">IANA has registered the following value in the "RDAP Extensions" registry at <xref target="RDAP-EXTENSIONS" format="default" sectionFormat="of" derivedContent="RDAP-EXTENSIONS"/>:</t>
        <dl spacing="compact" indent="3" newline="false" pn="section-6.1-2">
          <dt pn="section-6.1-2.1">Extension Identifier:</dt>
          <dd pn="section-6.1-2.2">geofeed1</dd>
          <dt pn="section-6.1-2.3">Registry Operator:</dt>
          <dd pn="section-6.1-2.4">Any</dd>
          <dt pn="section-6.1-2.5">Specification:</dt>
          <dd pn="section-6.1-2.6">RFC 9877</dd>
          <dt pn="section-6.1-2.7">Contact:</dt>
          <dd pn="section-6.1-2.8">IETF &lt;iesg@ietf.org&gt;</dd>
          <dt pn="section-6.1-2.9">Intended Usage:</dt>
          <dd pn="section-6.1-2.10">This extension describes version 1 of a method to access the IP geolocation feed data through RDAP.</dd>
        </dl>
      </section>
      <section anchor="link_relations_registry" numbered="true" removeInRFC="false" toc="include" pn="section-6.2">
        <name slugifiedName="name-link-relations-registry">Link Relations Registry</name>
        <t indent="0" pn="section-6.2-1">IANA has registered the following value in the "Link Relations" registry at <xref target="LINK-RELATIONS" format="default" sectionFormat="of" derivedContent="LINK-RELATIONS"/>:</t>
        <dl spacing="compact" indent="3" newline="false" pn="section-6.2-2">
          <dt pn="section-6.2-2.1">Relation Name:</dt>
          <dd pn="section-6.2-2.2">geofeed</dd>
          <dt pn="section-6.2-2.3">Description:</dt>
          <dd pn="section-6.2-2.4">Refers to a resource with IP geofeed location information related to the link context.</dd>
          <dt pn="section-6.2-2.5">Reference:</dt>
          <dd pn="section-6.2-2.6">RFC 9877</dd>
        </dl>
      </section>
      <section anchor="media_types_registry" numbered="true" removeInRFC="false" toc="include" pn="section-6.3">
        <name slugifiedName="name-media-types-registry">Media Types Registry</name>
        <t indent="0" pn="section-6.3-1">IANA has registered the following media type in the "Media Types" registry at <xref target="MEDIA-TYPES" format="default" sectionFormat="of" derivedContent="MEDIA-TYPES"/>:</t>
        <dl spacing="normal" newline="false" indent="3" pn="section-6.3-2">
          <dt pn="section-6.3-2.1">Type name:</dt>
          <dd pn="section-6.3-2.2">application</dd>
          <dt pn="section-6.3-2.3">Subtype name:</dt>
          <dd pn="section-6.3-2.4">geofeed+csv</dd>
          <dt pn="section-6.3-2.5">Required parameters:</dt>
          <dd pn="section-6.3-2.6">N/A</dd>
          <dt pn="section-6.3-2.7">Optional parameters:</dt>
          <dd pn="section-6.3-2.8">"charset" is an optional
  parameter for "text/csv", but it is not used for
  "application/geofeed+csv" because the geofeed content is always in
  UTF-8 (<xref target="RFC8805" sectionFormat="of" section="2.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8805#section-2.1" derivedContent="RFC8805"/>).</dd>
          <dt pn="section-6.3-2.9">Encoding considerations:</dt>
          <dd pn="section-6.3-2.10">See <xref target="RFC9632" sectionFormat="of" section="2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9632#section-2" derivedContent="RFC9632"/>.</dd>
          <dt pn="section-6.3-2.11">Security considerations:</dt>
          <dd pn="section-6.3-2.12">See <xref target="security_considerations" format="default" sectionFormat="of" derivedContent="Section 5"/> of RFC 9877.</dd>
          <dt pn="section-6.3-2.13">Interoperability considerations:</dt>
          <dd pn="section-6.3-2.14">There are no known interoperability problems regarding this media format.</dd>
          <dt pn="section-6.3-2.15">Published specification:</dt>
          <dd pn="section-6.3-2.16">RFC 9877.</dd>
          <dt pn="section-6.3-2.17">Applications that use this media type:</dt>
          <dd pn="section-6.3-2.18">Implementations of the
  Registration Data Access Protocol (RDAP) Extension for Geofeed
  Data. Furthermore, any application that processes the CSV geofeed data.</dd>
          <dt pn="section-6.3-2.19">Additional information:</dt>
          <dd pn="section-6.3-2.20">This media type is a product of the IETF
  REGEXT Working Group. The REGEXT charter, information on the REGEXT mailing
  list, and other documents produced by the REGEXT Working Group can be found
  at <xref target="REGEXT" format="default" sectionFormat="of" derivedContent="REGEXT"/>.</dd>
          <dt pn="section-6.3-2.21">Person &amp; email address to contact for further information:</dt>
          <dd pn="section-6.3-2.22">
            <br/>REGEXT Working Group &lt;regext@ietf.org&gt;</dd>
          <dt pn="section-6.3-2.23">Intended usage:</dt>
          <dd pn="section-6.3-2.24">COMMON</dd>
          <dt pn="section-6.3-2.25">Restrictions on usage:</dt>
          <dd pn="section-6.3-2.26">None</dd>
          <dt pn="section-6.3-2.27">Authors:</dt>
          <dd pn="section-6.3-2.28">Tom Harrison, Jasdip Singh</dd>
          <dt pn="section-6.3-2.29">Author/Change controller:</dt>
          <dd pn="section-6.3-2.30">IETF</dd>
        </dl>
      </section>
      <section anchor="structured_syntax_suffixes_registry" numbered="true" removeInRFC="false" toc="include" pn="section-6.4">
        <name slugifiedName="name-structured-syntax-suffixes-">Structured Syntax Suffixes Registry</name>
        <t indent="0" pn="section-6.4-1">IANA has registered the following value in the "Structured Syntax Suffixes" registry
at <xref target="STRUCTURED-SYNTAX-SUFFIXES" format="default" sectionFormat="of" derivedContent="STRUCTURED-SYNTAX-SUFFIXES"/>:</t>
        <dl spacing="normal" newline="false" indent="3" pn="section-6.4-2">
          <dt pn="section-6.4-2.1">Name:</dt>
          <dd pn="section-6.4-2.2">Comma-Separated Values (CSV)</dd>
          <dt pn="section-6.4-2.3">+suffix:</dt>
          <dd pn="section-6.4-2.4">+csv</dd>
          <dt pn="section-6.4-2.5">References:</dt>
          <dd pn="section-6.4-2.6">
            <xref target="RFC4180" format="default" sectionFormat="of" derivedContent="RFC4180"/>, <xref target="RFC7111" format="default" sectionFormat="of" derivedContent="RFC7111"/></dd>
          <dt pn="section-6.4-2.7">Encoding Considerations:</dt>
          <dd pn="section-6.4-2.8">Same as "text/csv".</dd>
          <dt pn="section-6.4-2.9">Interoperability Considerations:</dt>
          <dd pn="section-6.4-2.10">Same as "text/csv".</dd>
          <dt pn="section-6.4-2.11">Fragment Identifier Considerations:</dt>
          <dd pn="section-6.4-2.12">
            <t indent="0" pn="section-6.4-2.12.1">The syntax and semantics of fragment identifiers specified for +csv <bcp14>SHOULD</bcp14> be as specified for "text/csv".</t>
            <t indent="0" pn="section-6.4-2.12.2">The syntax and semantics for fragment identifiers for a specific "xxx/yyy+csv" <bcp14>SHOULD</bcp14> be processed as follows:</t>
            <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-6.4-2.12.3">
              <li pn="section-6.4-2.12.3.1">For cases defined in +csv, where the fragment identifier resolves per
    the +csv rules, then as specified for +csv.</li>
              <li pn="section-6.4-2.12.3.2">For cases defined in
    +csv, where the fragment identifier does not resolve per the +csv rules,
    then as specified for "xxx/⁠yyy+csv".</li>
              <li pn="section-6.4-2.12.3.3">For cases not defined in +csv, then as specified for "xxx/⁠yyy+csv".</li>
            </ul>
          </dd>
          <dt pn="section-6.4-2.13">Security Considerations:</dt>
          <dd pn="section-6.4-2.14">Same as "text/csv".</dd>
          <dt pn="section-6.4-2.15">Contact:</dt>
          <dd pn="section-6.4-2.16">IETF &lt;iesg@ietf.org&gt;</dd>
          <dt pn="section-6.4-2.17">Author/Change controller:</dt>
          <dd pn="section-6.4-2.18">IETF</dd>
        </dl>
      </section>
    </section>
  </middle>
  <back>
    <references pn="section-7">
      <name slugifiedName="name-references">References</name>
      <references pn="section-7.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t indent="0">In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC3629" target="https://www.rfc-editor.org/info/rfc3629" quoteTitle="true" derivedAnchor="RFC3629">
          <front>
            <title>UTF-8, a transformation format of ISO 10646</title>
            <author fullname="F. Yergeau" initials="F." surname="Yergeau"/>
            <date month="November" year="2003"/>
            <abstract>
              <t indent="0">ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems. The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values. This memo obsoletes and replaces RFC 2279.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="63"/>
          <seriesInfo name="RFC" value="3629"/>
          <seriesInfo name="DOI" value="10.17487/RFC3629"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t indent="0">RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC9082" target="https://www.rfc-editor.org/info/rfc9082" quoteTitle="true" derivedAnchor="RFC9082">
          <front>
            <title>Registration Data Access Protocol (RDAP) Query Format</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <author fullname="A. Newton" initials="A." surname="Newton"/>
            <date month="June" year="2021"/>
            <abstract>
              <t indent="0">This document describes uniform patterns to construct HTTP URLs that may be used to retrieve registration information from registries (including both Regional Internet Registries (RIRs) and Domain Name Registries (DNRs)) using "RESTful" web access patterns. These uniform patterns define the query syntax for the Registration Data Access Protocol (RDAP). This document obsoletes RFC 7482.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="95"/>
          <seriesInfo name="RFC" value="9082"/>
          <seriesInfo name="DOI" value="10.17487/RFC9082"/>
        </reference>
        <reference anchor="RFC9083" target="https://www.rfc-editor.org/info/rfc9083" quoteTitle="true" derivedAnchor="RFC9083">
          <front>
            <title>JSON Responses for the Registration Data Access Protocol (RDAP)</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <author fullname="A. Newton" initials="A." surname="Newton"/>
            <date month="June" year="2021"/>
            <abstract>
              <t indent="0">This document describes JSON data structures representing registration information maintained by Regional Internet Registries (RIRs) and Domain Name Registries (DNRs). These data structures are used to form Registration Data Access Protocol (RDAP) query responses. This document obsoletes RFC 7483.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="95"/>
          <seriesInfo name="RFC" value="9083"/>
          <seriesInfo name="DOI" value="10.17487/RFC9083"/>
        </reference>
        <reference anchor="RFC9224" target="https://www.rfc-editor.org/info/rfc9224" quoteTitle="true" derivedAnchor="RFC9224">
          <front>
            <title>Finding the Authoritative Registration Data Access Protocol (RDAP) Service</title>
            <author fullname="M. Blanchet" initials="M." surname="Blanchet"/>
            <date month="March" year="2022"/>
            <abstract>
              <t indent="0">This document specifies a method to find which Registration Data Access Protocol (RDAP) server is authoritative to answer queries for a requested scope, such as domain names, IP addresses, or Autonomous System numbers. This document obsoletes RFC 7484.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="95"/>
          <seriesInfo name="RFC" value="9224"/>
          <seriesInfo name="DOI" value="10.17487/RFC9224"/>
        </reference>
        <reference anchor="RFC9632" target="https://www.rfc-editor.org/info/rfc9632" quoteTitle="true" derivedAnchor="RFC9632">
          <front>
            <title>Finding and Using Geofeed Data</title>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="M. Candela" initials="M." surname="Candela"/>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="August" year="2024"/>
            <abstract>
              <t indent="0">This document specifies how to augment the Routing Policy Specification Language (RPSL) inetnum: class to refer specifically to geofeed comma-separated values (CSV) data files and describes an optional scheme that uses the Resource Public Key Infrastructure (RPKI) to authenticate the geofeed data files. This document obsoletes RFC 9092.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9632"/>
          <seriesInfo name="DOI" value="10.17487/RFC9632"/>
        </reference>
      </references>
      <references pn="section-7.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="LINK-RELATIONS" target="https://www.iana.org/assignments/link-relations/" quoteTitle="true" derivedAnchor="LINK-RELATIONS">
          <front>
            <title>Link Relations</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="MEDIA-TYPES" target="https://www.iana.org/assignments/media-types/" quoteTitle="true" derivedAnchor="MEDIA-TYPES">
          <front>
            <title>Media Types</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RDAP-EXTENSIONS" target="https://www.iana.org/assignments/rdap-extensions/" quoteTitle="true" derivedAnchor="RDAP-EXTENSIONS">
          <front>
            <title>RDAP Extensions</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="REGEXT" target="https://datatracker.ietf.org/wg/regext/" quoteTitle="true" derivedAnchor="REGEXT">
          <front>
            <title>Registration Protocols Extensions (regext)</title>
            <author>
              <organization showOnFrontPage="true">IETF</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RFC2622" target="https://www.rfc-editor.org/info/rfc2622" quoteTitle="true" derivedAnchor="RFC2622">
          <front>
            <title>Routing Policy Specification Language (RPSL)</title>
            <author fullname="C. Alaettinoglu" initials="C." surname="Alaettinoglu"/>
            <author fullname="C. Villamizar" initials="C." surname="Villamizar"/>
            <author fullname="E. Gerich" initials="E." surname="Gerich"/>
            <author fullname="D. Kessens" initials="D." surname="Kessens"/>
            <author fullname="D. Meyer" initials="D." surname="Meyer"/>
            <author fullname="T. Bates" initials="T." surname="Bates"/>
            <author fullname="D. Karrenberg" initials="D." surname="Karrenberg"/>
            <author fullname="M. Terpstra" initials="M." surname="Terpstra"/>
            <date month="June" year="1999"/>
            <abstract>
              <t indent="0">RPSL allows a network operator to be able to specify routing policies at various levels in the Internet hierarchy; for example at the Autonomous System (AS) level. At the same time, policies can be specified with sufficient detail in RPSL so that low level router configurations can be generated from them. RPSL is extensible; new routing protocols and new protocol features can be introduced at any time. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2622"/>
          <seriesInfo name="DOI" value="10.17487/RFC2622"/>
        </reference>
        <reference anchor="RFC4180" target="https://www.rfc-editor.org/info/rfc4180" quoteTitle="true" derivedAnchor="RFC4180">
          <front>
            <title>Common Format and MIME Type for Comma-Separated Values (CSV) Files</title>
            <author fullname="Y. Shafranovich" initials="Y." surname="Shafranovich"/>
            <date month="October" year="2005"/>
            <abstract>
              <t indent="0">This RFC documents the format used for Comma-Separated Values (CSV) files and registers the associated MIME type "text/csv". This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4180"/>
          <seriesInfo name="DOI" value="10.17487/RFC4180"/>
        </reference>
        <reference anchor="RFC6480" target="https://www.rfc-editor.org/info/rfc6480" quoteTitle="true" derivedAnchor="RFC6480">
          <front>
            <title>An Infrastructure to Support Secure Internet Routing</title>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="February" year="2012"/>
            <abstract>
              <t indent="0">This document describes an architecture for an infrastructure to support improved security of Internet routing. The foundation of this architecture is a Resource Public Key Infrastructure (RPKI) that represents the allocation hierarchy of IP address space and Autonomous System (AS) numbers; and a distributed repository system for storing and disseminating the data objects that comprise the RPKI, as well as other signed objects necessary for improved routing security. As an initial application of this architecture, the document describes how a legitimate holder of IP address space can explicitly and verifiably authorize one or more ASes to originate routes to that address space. Such verifiable authorizations could be used, for example, to more securely construct BGP route filters. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6480"/>
          <seriesInfo name="DOI" value="10.17487/RFC6480"/>
        </reference>
        <reference anchor="RFC6838" target="https://www.rfc-editor.org/info/rfc6838" quoteTitle="true" derivedAnchor="RFC6838">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="January" year="2013"/>
            <abstract>
              <t indent="0">This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols. This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="RFC6973" target="https://www.rfc-editor.org/info/rfc6973" quoteTitle="true" derivedAnchor="RFC6973">
          <front>
            <title>Privacy Considerations for Internet Protocols</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="J. Morris" initials="J." surname="Morris"/>
            <author fullname="M. Hansen" initials="M." surname="Hansen"/>
            <author fullname="R. Smith" initials="R." surname="Smith"/>
            <date month="July" year="2013"/>
            <abstract>
              <t indent="0">This document offers guidance for developing privacy considerations for inclusion in protocol specifications. It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices. It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6973"/>
          <seriesInfo name="DOI" value="10.17487/RFC6973"/>
        </reference>
        <reference anchor="RFC7111" target="https://www.rfc-editor.org/info/rfc7111" quoteTitle="true" derivedAnchor="RFC7111">
          <front>
            <title>URI Fragment Identifiers for the text/csv Media Type</title>
            <author fullname="M. Hausenblas" initials="M." surname="Hausenblas"/>
            <author fullname="E. Wilde" initials="E." surname="Wilde"/>
            <author fullname="J. Tennison" initials="J." surname="Tennison"/>
            <date month="January" year="2014"/>
            <abstract>
              <t indent="0">This memo defines URI fragment identifiers for text/csv MIME entities. These fragment identifiers make it possible to refer to parts of a text/csv MIME entity identified by row, column, or cell. Fragment identification can use single items or ranges.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7111"/>
          <seriesInfo name="DOI" value="10.17487/RFC7111"/>
        </reference>
        <reference anchor="RFC7480" target="https://www.rfc-editor.org/info/rfc7480" quoteTitle="true" derivedAnchor="RFC7480">
          <front>
            <title>HTTP Usage in the Registration Data Access Protocol (RDAP)</title>
            <author fullname="A. Newton" initials="A." surname="Newton"/>
            <author fullname="B. Ellacott" initials="B." surname="Ellacott"/>
            <author fullname="N. Kong" initials="N." surname="Kong"/>
            <date month="March" year="2015"/>
            <abstract>
              <t indent="0">This document is one of a collection that together describes the Registration Data Access Protocol (RDAP). It describes how RDAP is transported using the Hypertext Transfer Protocol (HTTP). RDAP is a successor protocol to the very old WHOIS protocol. The purpose of this document is to clarify the use of standard HTTP mechanisms for this application.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="95"/>
          <seriesInfo name="RFC" value="7480"/>
          <seriesInfo name="DOI" value="10.17487/RFC7480"/>
        </reference>
        <reference anchor="RFC7481" target="https://www.rfc-editor.org/info/rfc7481" quoteTitle="true" derivedAnchor="RFC7481">
          <front>
            <title>Security Services for the Registration Data Access Protocol (RDAP)</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <author fullname="N. Kong" initials="N." surname="Kong"/>
            <date month="March" year="2015"/>
            <abstract>
              <t indent="0">The Registration Data Access Protocol (RDAP) provides "RESTful" web services to retrieve registration metadata from Domain Name and Regional Internet Registries. This document describes information security services, including access control, authentication, authorization, availability, data confidentiality, and data integrity for RDAP.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="95"/>
          <seriesInfo name="RFC" value="7481"/>
          <seriesInfo name="DOI" value="10.17487/RFC7481"/>
        </reference>
        <reference anchor="RFC8805" target="https://www.rfc-editor.org/info/rfc8805" quoteTitle="true" derivedAnchor="RFC8805">
          <front>
            <title>A Format for Self-Published IP Geolocation Feeds</title>
            <author fullname="E. Kline" initials="E." surname="Kline"/>
            <author fullname="K. Duleba" initials="K." surname="Duleba"/>
            <author fullname="Z. Szamonek" initials="Z." surname="Szamonek"/>
            <author fullname="S. Moser" initials="S." surname="Moser"/>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <date month="August" year="2020"/>
            <abstract>
              <t indent="0">This document records a format whereby a network operator can publish a mapping of IP address prefixes to simplified geolocation information, colloquially termed a "geolocation feed". Interested parties can poll and parse these feeds to update or merge with other geolocation data sources and procedures. This format intentionally only allows specifying coarse-level location.</t>
              <t indent="0">Some technical organizations operating networks that move from one conference location to the next have already experimentally published small geolocation feeds.</t>
              <t indent="0">This document describes a currently deployed format. At least one consumer (Google) has incorporated these feeds into a geolocation data pipeline, and a significant number of ISPs are using it to inform them where their prefixes should be geolocated.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8805"/>
          <seriesInfo name="DOI" value="10.17487/RFC8805"/>
        </reference>
        <reference anchor="RFC9560" target="https://www.rfc-editor.org/info/rfc9560" quoteTitle="true" derivedAnchor="RFC9560">
          <front>
            <title>Federated Authentication for the Registration Data Access Protocol (RDAP) Using OpenID Connect</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <date month="April" year="2024"/>
            <abstract>
              <t indent="0">The Registration Data Access Protocol (RDAP) provides Representational State Transfer (RESTful) web services to retrieve registration metadata from domain name and regional internet registries. RDAP allows a server to make access control decisions based on client identity, and as such, it includes support for client identification features provided by the Hypertext Transfer Protocol (HTTP). Identification methods that require clients to obtain and manage credentials from every RDAP server operator present management challenges for both clients and servers, whereas a federated authentication system would make it easier to operate and use RDAP without the need to maintain server-specific client credentials. This document describes a federated authentication system for RDAP based on OpenID Connect.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9560"/>
          <seriesInfo name="DOI" value="10.17487/RFC9560"/>
        </reference>
        <reference anchor="STRUCTURED-SYNTAX-SUFFIXES" target="https://www.iana.org/assignments/media-type-structured-suffix/" quoteTitle="true" derivedAnchor="STRUCTURED-SYNTAX-SUFFIXES">
          <front>
            <title>Structured Syntax Suffixes</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
      </references>
    </references>
    <section anchor="acknowledgements" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1"><contact fullname="Mark Kosters"/> provided initial support and
encouragement for this work, along with the authors of <xref target="RFC9632" format="default" sectionFormat="of" derivedContent="RFC9632"/>. <contact fullname="Gavin Brown"/> suggested using a web link instead
of a simple URL string to specify a geofeed file URL. <contact fullname="Andy Newton"/>, <contact fullname="James Gould"/>, <contact fullname="Scott Hollenbeck"/>, <contact fullname="Mario Loffredo"/>, <contact fullname="Orie Steele"/>, <contact fullname="Alexey Melnikov"/>, <contact fullname="Mark Nottingham"/>, <contact fullname="Rifaat Shekh-Yusef"/>, <contact fullname="Dale R. Worley"/>, <contact fullname="Dhruv Dhody"/>, <contact fullname="Mohamed Boucadair"/>, <contact fullname="Mahesh Jethanandani"/>,
<contact fullname="Ketan Talaulikar"/>, and <contact fullname="Éric Vyncke"/>
provided valuable feedback for this document.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author initials="J." surname="Singh" fullname="Jasdip Singh">
        <organization showOnFrontPage="true">ARIN</organization>
        <address>
          <email>jasdips@arin.net</email>
        </address>
      </author>
      <author initials="T." surname="Harrison" fullname="Tom Harrison">
        <organization showOnFrontPage="true">APNIC</organization>
        <address>
          <email>tomh@apnic.net</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
