Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

The Perl URI:: module

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 URI
Octocat-spinner-32 t
Octocat-spinner-32 Changes
Octocat-spinner-32 MANIFEST
Octocat-spinner-32 MANIFEST.SKIP
Octocat-spinner-32 Makefile.PL
Octocat-spinner-32 README
!!! This is work in progress.  Class names and interfaces will change. !!!

This is an attempt to update and simplify the URI::URL classes based
on RFC 2396 "Uniform Resource Identifiers (URI): Generic Syntax"

Some basic terminology has changed so it might make sense to make a
new start with new class names.  This also allows us to simplify the
implementation by getting rid of some methods since we don't really
have to be backwards compatible.  The old modules can still be used
for old code.  The new draft also allows the parser implemented by a
single regular expression which should also help making it faster than
the old modules.

The main change proposed is to use 'URI' as the main class name.  The
URI and URI::_generic class implement Uniform Resource Identifiers
parsing and resolving of relative URIs as specified by RFC 2396.

Main user visible changes from URI::URL are:

   * Don't export url() constructor function.  URI->new is short
   * No base() attribute, also means that abs() and rel() needs
     mandatory $base argument.

   * netloc --> authority

   * user/password --> userinfo

   * full_path  --> abs_path_query

   * path_components --> path_segments.  If a path segment has
     parameters then this segment is represented by an array reference.

   * frag --> fragment.  The returned fragment is still escaped?

   * params() is gone.

   * All the epath/equery/eparam methods are gone.  The corresponding
     method without e-prefix now returns escaped strings

   * crack is gone

   * newlocal is gone (or NYI)

   * print_on is gone

   * URI::URL::strict() is replaced by a global variable $URI::STRICT

Comments welcomed?  These modules are discussed on the
<> mailing list.

Copyright 1998 Gisle Aas.

modify it under the same terms as Perl itself.
Something went wrong with that request. Please try again.