URI::Platonic というモジュールを書いた

プラトニック形式の URI という呼び方は RESTful Web サービスに出てきて初めて呼び方を知ったんだけど,そのプラトニック形式の URI と,拡張子付きでリソースの詳細な表現形態を指定した URI(長いな…)をもっと簡単に扱いたかったので,そんなモジュールを書いてみた.

http://coderepos.org/share/browser/lang/perl/URI-Platonic

use URI;
use URI::Platonic;

my $uri = URI->new("http://example.com/path/to/resource.html");
$uri->platonize;     # "http://example.com/path/to/resource" (URI object)
$uri->platonic_path; # "/path/to/resource"
$uri->extension;     # "html"
$uri->as_string;     # "http://example.com/path/to/resource.html"

実はメソッド名を結構迷いながら付けたという経緯があるので,こんな名前の方がいいんじゃね?というのがあれば是非教えてください.大歓迎です.

特にプラトニック形式にした URI オブジェクトを返すメソッドを platonize としたんだけど,ここが一番悩んだ.

(追記)
id:miyagawa さんから URI::Platonic->new($uri) のほうがいいかもというコメントをいただいたのですが,こんなイメージかな?違ってたら教えてください.

package URI::Platonic;
use base 'URI::http';

package main;
my $uri = URI::Platonic->new("http://example.com/path/to/resource.html");
   $uri = URI::Platonic->new($distinct_uri);

$uri->path;      # "/path/to/resource"
$uri->extension; # "html"
$uri->as_string; # "http://example.com/path/to/resource"
$uri->distinct;  # "http://example.com/path/to/resource.html"