# Modified Gopher Backward non-compatible extensions for modified Gopher protocol ## Content-type Based on gopher idea that content-type specified in link descriptor. Content-type is inferred from link dot separated extension (suffix). This allows links where content-type can be recognized by human, and that explicitly refers to both content location and type (and how it should be treated by client). Also it introduces ability to use one link type in menu (proposal is "&"). Server may treat suffix literally as part of resource location, and separately as reference to desired representation (like HTTP Accept header) and resource location. Client should handle resource according to its suffix. - locations having trailing "/" should be treated as menu - locations having trailing "?" should be treated as query handler - for locations that doesn't have suffix, there could be options: menu, octet-stream or plain text (to be defined). ## Flexible menu item descriptor Host and port fields of gopher descriptor may be optional. So if both host and port is absent, then current host and port are implied, if port is absent, then default port number is implied. ## Response with undefined length Proposal is to use chunked transfer encoding method for server response. To be defined: this method should be optional and negotiation mechanism is required. ## Hostname based routing / virtual hosting Proposed request format is (hostname) + (path/selector), where hostname is optional and path should have leading "/". ## Links to external protocol resources In progress ## Error responses In progress ## Redirects In progress ## Tags/metadata for menus In progress