]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man7/uri.7
Many pages: Use \[ti] instead of \(ti
[thirdparty/man-pages.git] / man7 / uri.7
index c2353dfffa5fb566d65e46ec31536ec8d31a7ad5..01e84287d18c12ee48bb59bbba7c2acb763620bd 100644 (file)
@@ -1,25 +1,6 @@
-'\"
 .\" (C) Copyright 1999-2000 David A. Wheeler (dwheeler@dwheeler.com)
 .\"
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
 .\"
 .\" Fragments of this document are directly derived from IETF standards.
 .\" For those fragments which are directly derived from such standards,
@@ -44,8 +25,7 @@
 .\" Modified Fri Aug 21 23:00:00 1999 by David A. Wheeler (dwheeler@dwheeler.com)
 .\" Modified Tue Mar 14 2000 by David A. Wheeler (dwheeler@dwheeler.com)
 .\"
-.\" FIXME Section titles and orderings in this page are very inconsistent
-.TH URI 7 2000-03-14 "Linux" "Linux Programmer's Manual"
+.TH uri 7 (date) "Linux man-pages (unreleased)"
 .SH NAME
 uri, url, urn \- uniform resource identifier (URI), including a URL or URN
 .SH SYNOPSIS
@@ -57,7 +37,8 @@ absoluteURI = scheme ":" ( hierarchical_part | opaque_part )
 .HP
 relativeURI = ( net_path | absolute_path | relative_path ) [ "?" query ]
 .HP
-scheme = "http" | "ftp" | "gopher" | "mailto" | "news" | "telnet" | "file" | "man" | "info" | "whatis" | "ldap" | "wais" | \&...
+scheme = "http" | "ftp" | "gopher" | "mailto" | "news" | "telnet" |
+         "file" | "man" | "info" | "whatis" | "ldap" | "wais" | \&...
 .HP
 hierarchical_part = ( net_path | absolute_path ) [ "?" query ]
 .HP
@@ -68,7 +49,6 @@ absolute_path = "/"  path_segments
 relative_path = relative_segment [ absolute_path ]
 .fi
 .SH DESCRIPTION
-.PP
 A Uniform Resource Identifier (URI) is a short string of characters
 identifying an abstract or physical resource (for example, a web page).
 A Uniform Resource Locator (URL) is a URI
@@ -81,7 +61,7 @@ the resource ceases to exist or becomes unavailable.
 .PP
 URIs are the standard way to name hypertext link destinations
 for tools such as web browsers.
-The string "http://www.kernelnotes.org" is a URL (and thus it
+The string "http://www.kernel.org" is a URL (and thus it
 is also a URI).
 Many people use the term URL loosely as a synonym for URI
 (though technically URLs are a subset of URIs).
@@ -94,7 +74,7 @@ from the current context.
 Within a relative path reference, the complete path segments "." and
 ".." have special meanings: "the current hierarchy level" and "the
 level above this hierarchy level", respectively, just like they do in
-Unix-like systems.
+UNIX-like systems.
 A path segment which contains a colon
 character can't be used as the first segment of a relative URI path
 (e.g., "this:that"), because it would be mistaken for a scheme name;
@@ -103,8 +83,8 @@ Note that descendants of MS-DOS (e.g., Microsoft Windows) replace
 devicename colons with the vertical bar ("|") in URIs, so "C:" becomes "C|".
 .PP
 A fragment identifier, if included, refers to a particular named portion
-(fragment) of a resource; text after a '#' identifies the fragment.
-A URI beginning with '#' refers to that fragment in the current resource.
+(fragment) of a resource; text after a \[aq]#\[aq] identifies the fragment.
+A URI beginning with \[aq]#\[aq] refers to that fragment in the current resource.
 .SS Usage
 There are many different URI schemes, each with specific
 additional rules and meanings, but they are intentionally made to be
@@ -116,23 +96,23 @@ permit the authority to be the following format, called here an
 .HP
 .IR "ip_server = " [ user " [ : " password " ] @ ] " host " [ : " port ]
 .PP
-This format allows you to optionally insert a user name,
+This format allows you to optionally insert a username,
 a user plus password, and/or a port number.
 The
 .I host
 is the name of the host computer, either its name as determined by DNS
 or an IP address (numbers separated by periods).
 Thus the URI
-<http://fred:fredpassword@xyz.com:8080/>
-logs into a web server on host xyz.com
+<http://fred:fredpassword@example.com:8080/>
+logs into a web server on host example.com
 as fred (using fredpassword) using port 8080.
 Avoid including a password in a URI if possible because of the many
 security risks of having a password written down.
-If the URL supplies a user name but no password, and the remote
+If the URL supplies a username but no password, and the remote
 server requests a password, the program interpreting the URL
 should request one from the user.
 .PP
-Here are some of the most common schemes in use on Unix-like systems
+Here are some of the most common schemes in use on UNIX-like systems
 that are understood by many tools.
 Note that many tools using URIs also have internal schemes or specialized
 schemes; see those tools' documentation for information on those schemes.
@@ -170,7 +150,9 @@ may be too long to store as a URI, so they use a different
 interaction mechanism (called POST) which does
 not include the data in the URI.
 See the Common Gateway Interface specification at
-<http://www.w3.org/CGI> for more information.
+.UR http://www.w3.org\:/CGI
+.UE
+for more information.
 .PP
 .B "ftp \- File Transfer Protocol (FTP)"
 .PP
@@ -178,7 +160,7 @@ See the Common Gateway Interface specification at
 .PP
 This is a URL accessing a file through the file transfer protocol (FTP).
 The default port (for control) is 21.
-If no username is included, the user name "anonymous" is supplied, and
+If no username is included, the username "anonymous" is supplied, and
 in that case many clients provide as the password the requestor's
 Internet email address.
 An example is
@@ -238,7 +220,7 @@ An example is <news:comp.lang.ada>.
 A
 .I message-id
 corresponds to the Message-ID of
-.URL http://www.ietf.org/rfc/rfc1036.txt
+.UR http://www.ietf.org\:/rfc\:/rfc1036.txt
 IETF RFC\ 1036,
 .UE
 without the enclosing "<"
@@ -265,10 +247,10 @@ An example is <telnet://melvyl.ucop.edu/>.
 .PP
 This represents a file or directory accessible locally.
 As a special case,
-.I host
+.I ip_server
 can be the string "localhost" or the empty
-string; this is interpreted as `the machine from which the URL is
-being interpreted'.
+string; this is interpreted as "the machine from which the URL is
+being interpreted".
 If the path is to a directory, the viewer should display the
 directory's contents with links to each containee;
 not all viewers currently do this.
@@ -289,7 +271,7 @@ A more portable syntax is to use an empty string as the server name,
 for example,
 <file:///etc/passwd>; this form does the same thing
 and is easily recognized by pattern matchers and older programs as a URI.
-Note that if you really mean to say "start from the current location," don't
+Note that if you really mean to say "start from the current location", don't
 specify the scheme at all; use a relative address like <../test.txt>,
 which has the side-effect of being scheme-independent.
 An example of this scheme is <file:///etc/passwd>.
@@ -305,7 +287,7 @@ The command name can optionally be followed by a
 parenthesis and section number; see
 .BR man (7)
 for more information on the meaning of the section numbers.
-This URI scheme is unique to Unix-like systems (such as Linux)
+This URI scheme is unique to UNIX-like systems (such as Linux)
 and is not currently registered by the IETF.
 An example is <man:ls(1)>.
 .PP
@@ -322,7 +304,7 @@ An example is <man:ls(1)>.
 This scheme refers to online info reference pages (generated from
 texinfo files),
 a documentation format used by programs such as the GNU tools.
-This URI scheme is unique to Unix-like systems (such as Linux)
+This URI scheme is unique to UNIX-like systems (such as Linux)
 and is not currently registered by the IETF.
 As of this writing, GNOME and KDE differ in their URI syntax
 and do not accept the other's syntax.
@@ -347,7 +329,7 @@ commands and returns a list of descriptions containing that string.
 Only complete word matches are returned.
 See
 .BR whatis (1).
-This URI scheme is unique to Unix-like systems (such as Linux)
+This URI scheme is unique to UNIX-like systems (such as Linux)
 and is not currently registered by the IETF.
 .PP
 .B "ghelp \- GNOME help documentation"
@@ -375,49 +357,56 @@ Note that not much documentation currently exists in this format.
 .PP
 This scheme supports queries to the
 Lightweight Directory Access Protocol (LDAP), a protocol for querying
-a set of servers for hierarchically-organized information
+a set of servers for hierarchically organized information
 (such as people and computing resources).
-More information on the LDAP URL scheme is available in
-.UR http://www.ietf.org/rfc/rfc2255.txt
-RFC\ 2255.
+See
+.UR http://www.ietf.org\:/rfc\:/rfc2255.txt
+RFC\ 2255
 .UE
+for more information on the LDAP URL scheme.
 The components of this URL are:
-.IP hostport 12
+.TP
+hostport
 the LDAP server to query, written as a hostname optionally followed by
 a colon and the port number.
 The default LDAP port is TCP port 389.
 If empty, the client determines which the LDAP server to use.
-.IP dn
+.TP
+dn
 the LDAP Distinguished Name, which identifies
 the base object of the LDAP search (see
-.UR http://www.ietf.org/rfc/rfc2253.txt
+.UR http://www.ietf.org\:/rfc\:/rfc2253.txt
 RFC\ 2253
 .UE
 section 3).
-.IP attributes
+.TP
+attributes
 a comma-separated list of attributes to be returned;
 see RFC\ 2251 section 4.1.5.
 If omitted, all attributes should be returned.
-.IP scope
+.TP
+scope
 specifies the scope of the search, which can be one of
 "base" (for a base object search), "one" (for a one-level search),
 or "sub" (for a subtree search).
 If scope is omitted, "base" is assumed.
-.IP filter
+.TP
+filter
 specifies the search filter (subset of entries
 to return).
 If omitted, all entries should be returned.
 See
-.UR http://www.ietf.org/rfc/rfc2254.txt
+.UR http://www.ietf.org\:/rfc\:/rfc2254.txt
 RFC\ 2254
 .UE
 section 4.
-.IP extensions
+.TP
+extensions
 a comma-separated list of type=value
 pairs, where the =value portion may be omitted for options not
 requiring it.
-An extension prefixed with a '!' is critical
-(must be supported to be valid), otherwise it is non-critical (optional).
+An extension prefixed with a \[aq]!\[aq] is critical
+(must be supported to be valid), otherwise it is noncritical (optional).
 .PP
 LDAP queries are easiest to explain by example.
 Here's a query that asks ldap.itd.umich.edu for information about
@@ -425,7 +414,7 @@ the University of Michigan in the U.S.:
 .PP
 .nf
 ldap://ldap.itd.umich.edu/o=University%20of%20Michigan,c=US
-.nf
+.fi
 .PP
 To just get its postal address attribute, request:
 .PP
@@ -450,7 +439,7 @@ ldap://host.com:6666/o=University%20of%20Michigan,c=US??sub?(cn=Babs%20Jensen)
 .PP
 This scheme designates a WAIS database, search, or document
 (see
-.UR http://www.ietf.org/rfc/rfc1625.txt
+.UR http://www.ietf.org\:/rfc\:/rfc1625.txt
 IETF RFC\ 1625
 .UE
 for more information on WAIS).
@@ -482,8 +471,7 @@ URNs are to be supported by the urn: scheme, with a hierarchical name space
 (e.g., urn:ietf:... would identify IETF documents); at this time
 URNs are not widely implemented.
 Not all tools support all schemes.
-.SS "Character Encoding"
-.PP
+.SS Character encoding
 URIs use a limited number of characters so that they can be
 typed in and used in a variety of situations.
 .PP
@@ -491,20 +479,28 @@ The following characters are reserved, that is, they may appear in a
 URI but their use is limited to their reserved purpose
 (conflicting data must be escaped before forming the URI):
 .IP
-   ; / ? : @ & = + $ ,
+.in +4n
+.EX
+; / ? : @ & = + $ ,
+.EE
+.in
 .PP
 Unreserved characters may be included in a URI.
 Unreserved characters
-include upper and lower case English letters,
+include uppercase and lowercase Latin letters,
 decimal digits, and the following
 limited set of punctuation marks and symbols:
 .IP
- \- _ . ! ~ * ' ( )
+.in +4n
+.EX
+\- _ . ! \[ti] * ' ( )
+.EE
+.in
 .PP
 All other characters must be escaped.
 An escaped octet is encoded as a character triplet, consisting of the
 percent character "%" followed by the two hexadecimal digits
-representing the octet code (you can use upper or lower case letters
+representing the octet code (you can use uppercase or lowercase letters
 for the hexadecimal digits).
 For example, a blank space must be escaped
 as "%20", a tab character as "%09", and the "&" as "%26".
@@ -519,22 +515,23 @@ A URI is always shown in its "escaped" form.
 Unreserved characters can be escaped without changing the semantics
 of the URI, but this should not be done unless the URI is being used
 in a context that does not allow the unescaped character to appear.
-For example, "%7e" is sometimes used instead of "~" in an http URL
-path, but the two are equivalent for an http URL.
+For example, "%7e" is sometimes used instead of "\[ti]" in an HTTP URL
+path, but the two are equivalent for an HTTP URL.
 .PP
 For URIs which must handle characters outside the US ASCII character set,
 the HTML 4.01 specification (section B.2) and
-IETF RFC\ 2718 (section 2.2.5) recommend the following approach:
-.IP 1. 4
-translate the character sequences into UTF-8 (IETF RFC\ 2279) \(em see
-.BR utf-8 (7)
-\(em and then
-.IP 2.
+IETF RFC\~3986 (last paragraph of section 2.5)
+recommend the following approach:
+.IP (1) 5
+translate the character sequences into UTF-8 (IETF RFC\~3629)\[em]see
+.BR utf\-8 (7)\[em]and
+then
+.IP (2)
 use the URI escaping mechanism, that is,
 use the %HH encoding for unsafe octets.
-.SS "Writing a URI"
+.SS Writing a URI
 When written, URIs should be placed inside double quotes
-(e.g., "http://www.kernelnotes.org"),
+(e.g., "http://www.kernel.org"),
 enclosed in angle brackets (e.g., <http://lwn.net>),
 or placed on a line by themselves.
 A warning for those who use double-quotes:
@@ -547,11 +544,7 @@ switch to a quoting system that never includes extraneous characters
 inside quotation marks.
 This latter system, called the 'new' or 'logical' quoting system by
 "Hart's Rules" and the "Oxford Dictionary for Writers and Editors",
-is preferred practice in Great Britain and hackers worldwide
-(see the
-Jargon File's section on Hacker Writing Style,
-.IR http://www.fwi.uva.nl/~mes/jargon/h/HackerWritingStyle.html ,
-for more information).
+is preferred practice in Great Britain and in various European languages.
 Older documents suggested inserting the prefix "URL:"
 just before the URI, but this form has never caught on.
 .PP
@@ -572,17 +565,17 @@ Such heuristics may
 change over time, particularly when new schemes are introduced.
 Since an abbreviated URI has the same syntax as a relative URL path,
 abbreviated URI references cannot be used where relative URIs are
-permitted, and can only be used when there is no defined base
+permitted, and can be used only when there is no defined base
 (such as in dialog boxes).
 Don't use abbreviated URIs as hypertext links inside a document;
 use the standard format as described here.
-.SH "CONFORMING TO"
-.PP
-.IR http://www.ietf.org/rfc/rfc2396.txt
-(IETF RFC\ 2396),
-.I http://www.w3.org/TR/REC-html40
-(HTML 4.0).
-.UE
+.SH STANDARDS
+.UR http://www.ietf.org\:/rfc\:/rfc2396.txt
+(IETF RFC\ 2396)
+.UE ,
+.UR http://www.w3.org\:/TR\:/REC\-html40
+(HTML 4.0)
+.UE .
 .SH NOTES
 Any tool accepting URIs (e.g., a web browser) on a Linux system should
 be able to handle (directly or indirectly) all of the
@@ -598,7 +591,7 @@ HTML uses the format <A HREF="\fIuri\fP">
 .I text
 </A>.
 Texinfo files use the format @uref{\fIuri\fP}.
-Man and mdoc have the recently-added UR macro, or just include the
+Man and mdoc have the recently added UR macro, or just include the
 URI in the text (viewers should be able to detect :// as part of a URI).
 .PP
 The GNOME and KDE desktop environments currently vary in the URIs
@@ -622,14 +615,13 @@ will converge to common URI formats, and a future
 version of this man page will describe the converged result.
 Efforts to aid this convergence are encouraged.
 .SS Security
-.PP
 A URI does not in itself pose a security threat.
 There is no general guarantee that a URL, which at one time
 located a given resource, will continue to do so.
 Nor is there any
 guarantee that a URL will not locate a different resource at some
-later point in time; such a guarantee can only be
-obtained from the person(s) controlling that namespace and the
+later point in time; such a guarantee can be
+obtained only from the person(s) controlling that namespace and the
 resource in question.
 .PP
 It is sometimes possible to construct a URL such that an attempt to
@@ -662,10 +654,9 @@ remote operation to be performed.
 It is clearly unwise to use a URI that contains a password which is
 intended to be secret.
 In particular, the use of a password within
-the 'userinfo' component of a URI is strongly recommended against except
-in those rare cases where the 'password' parameter is intended to be public.
+the "userinfo" component of a URI is strongly recommended against except
+in those rare cases where the "password" parameter is intended to be public.
 .SH BUGS
-.PP
 Documentation may be placed in a variety of locations, so there
 currently isn't a good URI scheme for general online documentation
 in arbitrary formats.
@@ -693,15 +684,16 @@ or implement links using URIs.
 Many programs can't handle all of these different URI formats; there
 should be a standard mechanism to load an arbitrary URI that automatically
 detects the users' environment (e.g., text or graphics,
-desktop environment, local user preferences, and currently-executing
+desktop environment, local user preferences, and currently executing
 tools) and invokes the right tool for any URI.
 .\" .SH AUTHOR
 .\" David A. Wheeler (dwheeler@dwheeler.com) wrote this man page.
-.SH "SEE ALSO"
+.SH SEE ALSO
 .BR lynx (1),
 .BR man2html (1),
 .BR mailaddr (7),
-.BR utf-8 (7),
-.UR http://www.ietf.org/rfc/rfc2255.txt
-IETF RFC\ 2255.
+.BR utf\-8 (7)
+.PP
+.UR http://www.ietf.org\:/rfc\:/rfc2255.txt
+IETF RFC\ 2255
 .UE