Guidelines for new URL Schemes
RFC 2718

 
Document Type RFC - Informational (November 1999; No errata)
Obsoleted by RFC 4395
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 2718 (Informational)
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                       L. Masinter
Request for Comments: 2718                            Xerox Corporation
Category: Informational                                   H. Alvestrand
                                                   Maxware, Pirsenteret
                                                             D. Zigmond
                                                   WebTV Networks, Inc.
                                                               R. Petke
                                                     UUNET Technologies
                                                          November 1999

                     Guidelines for new URL Schemes

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

Abstract

   A Uniform Resource Locator (URL) is a compact string representation
   of the location for a resource that is available via the Internet.
   This document provides guidelines for the definition of new URL
   schemes.

1. Introduction

   A Uniform Resource Locator (URL) is a compact string representation
   of the location for a resource that is available via the Internet.
   RFC 2396 [1] defines the general syntax and semantics of URIs, and,
   by inclusion, URLs.  URLs are designated by including a "<scheme>:"
   and then a "<scheme-specific-part>".  Many URL schemes are already
   defined.

   This document provides guidelines for the definition of new URL
   schemes, for consideration by those who are defining and registering
   or evaluating those definitions.

   The process by which new URL schemes are registered is defined in RFC
   2717 [2].

Masinter, et al.             Informational                      [Page 1]
RFC 2718             Guidelines for new URL Schemes        November 1999

2. Guidelines for new URL schemes

   Because new URL schemes potentially complicate client software, new
   schemes must have demonstrable utility and operability, as well as
   compatibility with existing URL schemes.  This section elaborates
   these criteria.

2.1 Syntactic compatibility

   New URL schemes should follow the same syntactic conventions of
   existing schemes when appropriate.  If a URI scheme that has embedded
   links in content accessed by that scheme does not share syntax with a
   different scheme, the same content cannot be served up under
   different schemes without rewriting the content.  This can already be
   a problem, and with future digital signature schemes, rewriting may
   not even be possible.  Deployment of other schemes in the future
   could therefore become extremely difficult.

2.1.1 Motivations for syntactic compatibility

   Why should new URL schemes share as much of the generic URI syntax
   (that makes sense to share) as possible?  Consider the following:

   o  If fragment syntax isn't shared between two schemes, (e.g. "<a
      href="#foo">"), you can't move individual completely self
      referential documents between schemes without rewriting the
      embedded references within the document.  In the Web, the fragment
      syntax is a property of the media type, and evaluated by the
      client.

   o  If fragment syntax is not shared between different media types of
      the same capability (e.g. HTML, XML, Word, or image types such as
      GIF, JPEG, PNG) then you can't have a URI reference that can
      evolve to superior media types as they become available, or even
      likely work properly today with content negotiation.

   o  If relative syntax (to the extent of understanding the URI is
      relative, and what part of the URI string is relative) isn't
      shared between two schemes, (e.g. "<a href="foo">"), you can't
      move sets of documents that are internally self referential
      between schemes without rewriting the embedded URIs.

   o  If the ".." syntax as a path component in relative URI's isn't
      shared between schemes, you can't easily have sets of document
      sets and refer to them between schemes without rewriting the
      embedded references.

Masinter, et al.             Informational                      [Page 2]
RFC 2718             Guidelines for new URL Schemes        November 1999

   o  If the "/" syntax (to the extent of understanding that the URI
      refers to a path relative to the current naming authority, see
      section 2.1.1) isn't shared, you can't have multiple sets of
Show full document text