Switch branches/tags
Nothing to show
Clone or download


The URL Standard

The URL Standard is being developed at two locations:

See workmode for a proposal for W3C sponsored snapshots. See url-charter for a proposal for a new W3C Working Group.

See draft-ruby-url-problem (plain text) for both a problem statement as well as a proposed plan for integration with IETF standards.


  • Specification. Source is contained in url.src and url.pegjs.
  • IETF document(s). (Source for) IETF Internet Draft laying out problems and some solutions.
  • Reference implementation in JavaScript. This directory also contains web pages that demonstate live parsing of URLs entered in an HTML input field. The latest version is deployed live:
    • liveview - parse a single URL.
    • liveview2 - parse a single URL against a base you provide.
    • liveview3 - parse a single URL and then interactively invoke setters against the result.
  • Evaluate programs and results. Source for the tests is the web-platform-tests GitHub repository. Captured test results against a number of implementations are available. These results can be explored interactively online.

Running make at the top level will build the spec, build the reference implementation, and run the tests against the reference implementation. See the Makefile for a list of prerequisites.

Deploy the evaluate directory to a web server capable of running CGI programs in ruby. The urltest script will capture and automatically upload test results based on the browser that visited the page. The urltest-results script will display the aggregated results.

Running make in the evaluate directory will capture test results for a number of non-web browser URL/URI implementations. See the Makefile for a list of prerequisites.

Running make in the docs directory will build the Internet Draft(s) in HTML and plain text, using xml2rfc.