draft-ietf-appsawg-about-uri-scheme-07.txt | rfc6694.txt | |||
---|---|---|---|---|
Applications Area WG (APPSAWG) S. Moonesamy, Ed. | Internet Engineering Task Force (IETF) S. Moonesamy, Ed. | |||
Internet-Draft | Request for Comments: 6694 August 2012 | |||
Intended Status: Informational | Category: Informational | |||
Expires: December 9, 2012 June 7, 2012 | ISSN: 2070-1721 | |||
The "about" URI Scheme | The "about" URI Scheme | |||
draft-ietf-appsawg-about-uri-scheme-07 | ||||
Abstract | Abstract | |||
This document describes the "about" URI scheme, which is widely used | This document describes the "about" URI scheme, which is widely used | |||
by web browsers and some other applications to designate access to | by Web browsers and some other applications to designate access to | |||
their internal resources, such as settings, application information, | their internal resources, such as settings, application information, | |||
hidden built-in functionality, and so on. | hidden built-in functionality, and so on. | |||
Status of this Memo | Status of This Memo | |||
This Internet-Draft is submitted to IETF in full conformance with the | ||||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | ||||
Task Force (IETF), its areas, and its working groups. Note that | ||||
other groups may also distribute working documents as | ||||
Internet-Drafts. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document is not an Internet Standards Track specification; it is | |||
and may be updated, replaced, or obsoleted by other documents at any | published for informational purposes. | |||
time. It is inappropriate to use Internet-Drafts as reference | ||||
material or to cite them other than as "work in progress." | ||||
The list of current Internet-Drafts can be accessed at | This document is a product of the Internet Engineering Task Force | |||
http://www.ietf.org/1id-abstracts.html | (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). Not all documents | ||||
approved by the IESG are a candidate for any level of Internet | ||||
Standard; see Section 2 of RFC 5741. | ||||
The list of Internet-Draft Shadow Directories can be accessed at | Information about the current status of this document, any errata, | |||
http://www.ietf.org/shadow.html | and how to provide feedback on it may be obtained at | |||
http://www.rfc-editor.org/info/rfc6694. | ||||
Copyright and License Notice | Copyright Notice | |||
Copyright (c) 2012 IETF Trust and the persons identified as the | Copyright (c) 2012 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction ....................................................2 | |||
2. URI Scheme Specification . . . . . . . . . . . . . . . . . . . 2 | 2. URI Scheme Specification ........................................2 | |||
2.1. URI Scheme Syntax . . . . . . . . . . . . . . . . . . . . . 2 | 2.1. URI Scheme Syntax ..........................................2 | |||
2.2. URI Scheme Semantics . . . . . . . . . . . . . . . . . . . 2 | 2.2. URI Scheme Semantics .......................................3 | |||
2.2.1. Well-known "about" URIs . . . . . . . . . . . . . . . . 3 | 2.2.1. Well-Known "about" URIs .............................3 | |||
2.3. Encoding Considerations . . . . . . . . . . . . . . . . . . 3 | 2.3. Encoding Considerations ....................................3 | |||
3. "about:blank" . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. "about:blank" ...................................................3 | |||
4. Security Considerations . . . . . . . . . . . . . . . . . . . . 3 | 4. Security Considerations .........................................3 | |||
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 4 | 5. IANA Considerations .............................................4 | |||
5.1. URI Scheme Registration . . . . . . . . . . . . . . . . . . 4 | 5.1. URI Scheme Registration ....................................4 | |||
5.2. A Registry for Well-known Tokens . . . . . . . . . . . . . 4 | 5.2. A Registry for Well-Known Tokens ...........................5 | |||
5.2.1. Registration procedure . . . . . . . . . . . . . . . . 5 | 5.2.1. Registration Procedure ..............................5 | |||
6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 6. References ......................................................6 | |||
6.1. Normative References . . . . . . . . . . . . . . . . . . . 5 | 6.1. Normative References .......................................6 | |||
6.2. Informative References . . . . . . . . . . . . . . . . . . 6 | 6.2. Informative References .....................................6 | |||
Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . . 6 | Appendix A. Acknowledgments ........................................7 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 | ||||
1. Introduction | 1. Introduction | |||
This document describes the "about" Uniform Resource Identifier (URI) | This document describes the "about" Uniform Resource Identifier (URI) | |||
scheme. The "about" URI scheme is currently widely used by Web | scheme. The "about" URI scheme is currently widely used by Web | |||
browsers to designate access to their internal resources such as | browsers to designate access to their internal resources, such as | |||
settings, application information, so called "Easter eggs" (i.e. | settings, application information, and so-called "Easter eggs" (i.e., | |||
hidden feature or joke in an application). | a hidden feature or joke in an application). | |||
2. URI Scheme Specification | 2. URI Scheme Specification | |||
2.1. URI Scheme Syntax | 2.1. URI Scheme Syntax | |||
The "about" URI syntactically conforms to the <about-uri> rule below, | The "about" URI syntactically conforms to the <about-uri> rule below, | |||
expressed using Augmented Backus-Naur Form (ABNF) [RFC5234]: | expressed using the Augmented Backus-Naur Form (ABNF) [RFC5234]: | |||
about-uri = "about:" about-token [ about-query ] [ about-fragment ] | about-uri = "about:" about-token [ about-query ] [ about-fragment ] | |||
about-token = *pchar | about-token = *pchar | |||
about-query = "?" query | about-query = "?" query | |||
about-fragment = "#" fragment | about-fragment = "#" fragment | |||
pchar = <as specified in RFC 3986, Appendix A> | pchar = <as specified in RFC 3986, Appendix A> | |||
query = <as specified in RFC 3986, Appendix A> | query = <as specified in RFC 3986, Appendix A> | |||
fragment = <as specified in RFC 3986, Appendix A> | fragment = <as specified in RFC 3986, Appendix A> | |||
2.2. URI Scheme Semantics | 2.2. URI Scheme Semantics | |||
The resource which a particular "about" URI references is denoted | ||||
by <about-token> part of the URI. It is not a hierarchical element | ||||
for a naming authority. The <about-query> specifies additional | ||||
information about its handling and/or the information that should | ||||
be returned by the resource which the URI references. | ||||
It is impossible to specify a binding between all the possible | The resource that is referenced by a particular "about" URI is | |||
tokens and the semantics of "about" URIs that would contain such | denoted by the <about-token> part of the URI. It is not a | |||
tokens. Therefore the resource referenced by the URI is generally | hierarchical element for a naming authority. The <about-query> part | |||
considered as specific to a Web browser implementation. | specifies additional information about its handling and/or the | |||
information that should be returned by the resource referenced by | ||||
the URI. | ||||
2.2.1. Well-known "about" URIs | It is impossible to specify a binding between all the possible tokens | |||
and the semantics of "about" URIs that would contain such tokens. | ||||
Therefore, the resource referenced by the URI is generally considered | ||||
to be specific to a Web browser implementation. | ||||
Some <about-token>s have been reserved as the behavior when the | 2.2.1. Well-Known "about" URIs | |||
resource is referenced is well-known (Well-known tokens). | ||||
A well-known "about" URI is a URI that has a well-known token as | Some <about-token>s have been reserved, as the behavior of the | |||
its <about-token> part. It is recommended that such URIs be | resource that is referenced is well-known (well-known tokens). | |||
handled in accordance with the specification referenced in the | ||||
Well-known Tokens registry (see Section 5.2). | ||||
Well-known "about" URIs are intended to be registered when there is | A well-known "about" URI is a URI that has a well-known token as its | |||
a need to codify the behavior of particular <about-token>. | <about-token> part. It is recommended that such URIs be handled in | |||
accordance with the specification referenced in the "about" URI | ||||
Tokens registry (see Section 5.2). | ||||
2.3. Encoding Considerations | Well-known "about" URIs are intended to be registered when there is a | |||
need to codify the behavior of a particular <about-token>. | ||||
"about" URIs are subject to encoding rules defined in RFC 3986 | 2.3. Encoding Considerations | |||
[RFC3986]. | ||||
3. "about:blank" | "about" URIs are subject to encoding rules as defined in RFC 3986 | |||
[RFC3986]. | ||||
This document defines one well-known token: "blank". The | 3. "about:blank" | |||
"about:blank" URI refers to a resource represented in the browser | ||||
by a blank page. | ||||
4. Security Considerations | This document defines one well-known token: "blank". The | |||
"about:blank" URI refers to a resource represented in the browser by | ||||
a blank page. | ||||
Security considerations for URIs are discussed in Section 7 of RFC | 4. Security Considerations | |||
3986 [RFC3986]. However, most of those provisions do not apply to | ||||
the "about" URI scheme as they are mainly scoped to schemes used in | ||||
the Internet. | ||||
"about" URIs can sometimes refer to sensitive information, such as | Security considerations for URIs are discussed in Section 7 of | |||
user passwords stored in a cache, or parameters that, if changed, | RFC 3986 [RFC3986]. However, most of those provisions do not apply | |||
could affect user's data. The application therefore needs to | to the "about" URI scheme, as they are mainly scoped to schemes used | |||
ensure that the user's data is secured and no threats are imposed | in the Internet. | |||
by "about" URIs. | ||||
5. IANA Considerations | "about" URIs can sometimes refer to sensitive information, such as | |||
user passwords stored in a cache, or parameters that, if changed, | ||||
could affect a user's data. The application therefore needs to | ||||
ensure that the user's data is secured and no threats are imposed by | ||||
"about" URIs. | ||||
5.1. URI Scheme Registration | 5. IANA Considerations | |||
The registration of the "about" URI scheme in the "URI Schemes" | 5.1. URI Scheme Registration | |||
registry is requested. The information below is provided according | ||||
to the guidelines from RFC 4395 [RFC4395]: | ||||
URI scheme name: about | The "about" URI scheme has been registered in the "Permanent URI | |||
Schemes" registry. The information below is provided according to | ||||
the guidelines from RFC 4395 [RFC4395]: | ||||
Status: Permanent | URI scheme name: about | |||
URI scheme syntax: see Section 2.1 of RFC xxxx | Status: Permanent | |||
URI scheme semantics: see Section 2.2 of RFC xxxx | URI scheme syntax: See Section 2.1 of RFC 6694. | |||
URI scheme encoding considerations: see Section 2.3 of RFC xxxx | URI scheme semantics: See Section 2.2 of RFC 6694. | |||
Applications that use the scheme: "about" URIs are predominantly | URI scheme encoding considerations: See Section 2.3 of RFC 6694. | |||
used by Web browsers. | ||||
Security considerations: see Section 4 of RFC xxxx | Applications that use the scheme: "about" URIs are predominantly | |||
used by Web browsers. | ||||
Contact: IETF Applications Area Directors <app-ads@tools.ietf.org> | Security considerations: See Section 4 of RFC 6694. | |||
Author/Change controller: IESG <iesg@ietf.org> (on behalf of the | Contact: IETF Applications Area Directors | |||
IETF) | <app-ads@tools.ietf.org> | |||
References: see Section 5 of RFC xxxx | Author/Change controller: IESG <iesg@ietf.org> (on behalf of the | |||
IETF) | ||||
[RFC Editor: Please replace xxxx with assigned RFC number] | References: See Section 6 of RFC 6694. | |||
5.2. A Registry for Well-known Tokens | 5.2. A Registry for Well-Known Tokens | |||
This document creates the '"about" URI Well-known Tokens' registry. | This document creates the '"about" URI Tokens' registry. | |||
The registry entries consist of three fields: Well-known Token, | The registry entries consist of three fields: Token, Description, and | |||
Description and Reference. The Well-known Token field has to conform | Reference. The Token field has to conform to <about-token> | |||
to <about-token> production defined in Section 2.1. The initial set | production as defined in Section 2.1. The initial assignment is as | |||
of assignments is as follows: | follows: | |||
+--------------+------------------------------------+-------------+ | +--------------+------------------------------------+-------------+ | |||
| Well-known | Description | Reference | | | Token | Description | Reference | | |||
| Token | | | | +--------------+------------------------------------+-------------+ | |||
+------------------+--------------------------------+-------------+ | | blank | The about:blank URI references a | RFC 6694 | | |||
| blank | The about:blank URI references a | RFC xxxx | | ||||
| | blank page. | | | | | blank page. | | | |||
+--------------+------------------------------------+-------------+ | +--------------+------------------------------------+-------------+ | |||
5.2.1. Registration procedure | 5.2.1. Registration Procedure | |||
The registration policy for this registry is "First Come First | The registration policy for this registry is "First Come First | |||
Served" as described in RFC 5226 [RFC5226]. The registrant of the | Served", as described in RFC 5226 [RFC5226]. The registrant of the | |||
token should provide the information mentioned in the following | token should provide the information mentioned in the following | |||
registration template: | registration template: | |||
o Registered Token: The desired Well-known token to be used in | o Registered token: The desired well-known token to be used in | |||
"about" URIs. | "about" URIs. | |||
o Intended usage: A short description of how "about" URIs with the | o Intended usage: A short description of how "about" URIs with the | |||
registered token is handled including information about the | registered token are handled, including information about the | |||
referenced resource. | referenced resource. | |||
o Contact/Change controller: Person (including contact information) | o Contact/change controller: Person (including contact information) | |||
authorized to change this registration. | authorized to change this registration. | |||
o Specification: A stable reference to a document which specifies | o Specification: A stable reference to a document that specifies | |||
the registered "about" URI. The question of interoperability does | the registered "about" URI. The question of interoperability does | |||
not arise. The key motivation is to have a reference to a | not arise. The key motivation is to have a reference to a | |||
specification documenting well-known behavior of the "about" URI in | specification documenting well-known behavior of the "about" URI | |||
Web browsers. As a rule of thumb if the behavior is common to two | in Web browsers. As a rule of thumb, if the behavior is common to | |||
or more Web browser implementations it can be considered as well- | two or more Web browser implementations, it can be considered | |||
known. An existing assignment may be duplicated if the registered | well-known. An existing assignment may be duplicated if the | |||
token is used in more than one Web browser implementation. | registered token is used in more than one Web browser | |||
implementation. | ||||
The following is a template for the "blank" token: | The following is a template for the "blank" token: | |||
o Registered Token: blank | o Registered token: blank | |||
o Intended usage: The about:blank URI references a blank page. | ||||
o Contact/Change controller: IESG <iesg@ietf.org> (on behalf of | ||||
IETF). | ||||
o Specification: RFC xxxx. [RFC Editor: Please replace xxxx with | ||||
assigned RFC number] | ||||
6. References | o Intended usage: The about:blank URI references a blank page. | |||
6.1. Normative References | o Contact/change controller: IESG <iesg@ietf.org> (on behalf of the | |||
IETF). | ||||
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | o Specification: RFC 6694 | |||
Resource Identifier (URI): Generic Syntax", STD 66, | ||||
RFC 3986, January 2005. | ||||
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an | 6. References | |||
IANA Considerations Section in RFCs", BCP 26, RFC 5226, | ||||
May 2008. | ||||
[RFC5234] Crocker, D., Ed., and P. Overell, "Augmented BNF for | 6.1. Normative References | |||
Syntax Specifications: ABNF", STD 68, RFC 5234, January | ||||
2008. | ||||
6.2. Informative References | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
Resource Identifier (URI): Generic Syntax", STD 66, | ||||
RFC 3986, January 2005. | ||||
[RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and | [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an | |||
Registration Procedures for New URI Schemes", BCP 35, | IANA Considerations Section in RFCs", BCP 26, RFC 5226, | |||
RFC 4395, February 2006. | May 2008. | |||
[RFC5234] Crocker, D., Ed., and P. Overell, "Augmented BNF for | ||||
Syntax Specifications: ABNF", STD 68, RFC 5234, | ||||
January 2008. | ||||
6.2. Informative References | ||||
[RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and | ||||
Registration Procedures for New URI Schemes", BCP 35, | ||||
RFC 4395, February 2006. | ||||
Appendix A. Acknowledgments | Appendix A. Acknowledgments | |||
This document has been formed from the draft initially authored by | This document was formed from a previous draft document initially | |||
Lachlan Hunt and Joseph Holsten. Additionally, the contributions of | authored by Lachlan Hunt and Joseph Holsten. Additionally, the | |||
Frank Ellermann and Alexey Melnikov are gratefully acknowledged. | contributions of Frank Ellermann and Alexey Melnikov are gratefully | |||
Barry Leiba and Murray Kucherawy deserve a special credit for | acknowledged. Barry Leiba and Murray Kucherawy deserve special | |||
providing a great amount of text which has been used in this | credit for providing a great amount of text that was used in this | |||
document. | document. | |||
Lachlan Hunt and Mykyta Yevstifeyev edited previous versions of this | Lachlan Hunt and Mykyta Yevstifeyev edited previous versions of this | |||
document. Tim Bray and John Klensin provided suggestions about how | document. Tim Bray and John Klensin provided suggestions about how | |||
to improve the document. | to improve the document. | |||
Authors' Addresses | Author's Address | |||
S. Moonesamy (editor) | S. Moonesamy (editor) | |||
76, Ylang Ylang Avenue | 76 Ylang Ylang Avenue | |||
Quatre Bornes | Quatre Bornes | |||
Mauritius | Mauritius | |||
EMail: sm+ietf@elandsys.com | EMail: sm+ietf@elandsys.com | |||
End of changes. 65 change blocks. | ||||
160 lines changed or deleted | 156 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |