Simplified URLsとShotURLの性質の違いをまとめました。
1)両者の関係
ShotURLからSimplified URLsが派生。つまり親子?関係です。
2)両者の生成する静的URLの違い
たとえば、
http://localhost/modules/news/article.php?storyid=1を置換するとき下記の様な差が生まれます。 A)ShotURLの場合
http://localhost/m-news+article+storyid-1.html B)Simplified URLsの場合
http://localhost/news+article.storyid+6.htmSimplified URLsではモジュールを意味する接頭辞の"m-"を排除しました。代わりに拡張子"htm"にすることで意味づけをしました。
3)静的URL生成可能な範囲
ShotURLの場合
【対象】modulesディレクトリ内
【深さ】/modules/xxxx/yyyy.phpの3層目
【パラメータ】最小0 最大5
【タグ】"href..." "/modules/..."を含むタグ
Simplified URLsの場合
【対象】modulesディレクトリ内とXOOPSルートディレクトリ内
【深さ】/aaaa.phpの1層目と/modules/xxxx/yyyy.phpの3層目
【パラメータ】最小0 最大5
【タグ】<a>タグのみ
4)loadpage.phpの受け入れ方の違い
ShotURLの場合はディレクトリの深さは3まででパラメータは10までですが、Simplified URLsではどちらも制限がありません。またShotURLではuserinfo.php?uid=1などのXOOPSルートディレクトリ直下のファイルは静的化しないため受け入れませんが、Simplifiedではこれも受け入れます。Simplifiedがモジュールとルートディレクトリ直下のファイルを区別できているトリックは、モジュールのファイルは拡張子が*.htmであるのに対してルートディレクトリ直下のファイルは拡張子が*.htmlです。要するに拡張子の差異で区別しているわけです。
5)loadpage.phpの動作
基本的に両者とも原理は同じでほとんど違いはありません。
6)未知のモジュールへの対応柔軟性
Simplified URLsのほうが間違いなく柔軟性がたかいでしょう。これはShotURLが帰納的
(具体的なHTMLの記述に付随するエラーや問題を取り上げて、それに対応ルールを作る)であるのに対してSimplified URLsが演繹的
(抽象的な相対URLやHTMLの記述の仕方など問題に対する対応ルールを作る)だからです。難しいので頭より体で覚えましょう :-D
7)動作速度
どちらも同じような気もしますが、若干ShotURLが早い気もします。客観データでないので申し訳ありません。