repo: gemini-site
action: commit
revision: 
path_from: 
revision_from: d0862e8dc90f0628991d1021cebd4c030cfcad8a:
path_to: 
revision_to: 
git.thebackupbox.net
gemini-site
git clone git://git.thebackupbox.net/gemini-site
commit d0862e8dc90f0628991d1021cebd4c030cfcad8a
Author: Solderpunk 
Date:   Mon Jun 15 15:46:14 2020 +0000

    Define URI scheme.

diff --git a/docs/specification.gmi b/docs/specification.gmi
index 8f1afa8c3b98926f30faa4984f9e310cd7264c38..
index ..33d7c6b111f7f2bafda6008fca18e6d03d63bb68 100644
--- a/docs/specification.gmi
+++ b/docs/specification.gmi
@@ -29,6 +29,10 @@ S:   Sends response body (text or binary data) (see 3.3)
 S:   Closes connection
 C:   Handles response (see 3.4)

+## 1.2 Gemini URI scheme
+
+Resources hosted via Gemini are identified using URIs with the scheme "gemini".  This scheme is syntactically compatible with the generic URI syntax defined in RFC 3986, but does not support all components of the generic syntax.  In particular, the authority component is allowed and required, but its userinfo subcomponent is NOT allowed.  The host subcomponent is required.  The port subcomponent is optional, with a default value of 1965.  The path, query and fragment components are allowed and have no special meanings beyond those defined by the generic syntax.  Spaces in gemini URIs should be encoded as %20, not +.
+
 # 2 Gemini requests

 Gemini requests are a single CRLF-terminated line with the following structure:

-----END OF PAGE-----