MooTools More RC1 (released yesterday) ships with a URI component which is a subclass of String. An important advantage of that approach is that extends the String native. This means you can take advantage of all the string methods directly applied to your URI object, or send an URI instance to methods that expect strings
What I like about your script is the extensible nature of the schemes. Even though most schemes can be perfectly tackled by the More RC1 URI Regexp, javascript: is a counter-example which it couldn't possible support. Plus the API is designed for a fixed set of URI components, which if you take a look at the schemes<http://en.wikipedia.org/wiki/URI_scheme#Official_IANA-registered_schemes> is not a reality. Our current URI is more URL than URI. -- Guillermo Rauch http://devthought.com
