チュートリアル

カテゴリーID とディレクトリ

順序が逆になってしまいましたが、ここでカテゴリーID とは何かについて説明します。これは階層化されたすべてのカテゴリーに一意に付けられた番号です。あるカテゴリーID に対応するカテゴリーは、ただひとつだけです。この番号は CustomDir で勝手に割り振った番号では無く、ODP が配付するデータファイルに記載されているものです。 CustomDir では、カテゴリーID をディレクトリ名として利用しています。一方、本家 ODP を始めとし、多くの ODP のディレクトリデータベースを利用するディレクトリサイトでは、URLエンコードという方式でカテゴリー名を表現し、URL の一部(つまりディレクトリ名) にしています。前項のカテゴリー ID 対応表の Japanese 階層以下は、%で始まる一見無意味な文字列が URL の一部になっています。しかし、これは決して無意味な文字列では無く、URLエンコードという方式でカテゴリー名を示しています。例えば、UTF-8 という文字コードにおいて、「ス」の文字コードは"E3 82 B9"と、表します。同様に「ポ」は"E3 83 9D"、長音記号「ー」は"E3 83 BC"、「ツ」は"E3 83 84"と、なります。

詳細は省きますが、これら文字コードに%を付けた物が、URLエンコードという表現方式です。カテゴリー ID 対応表の「スポーツ」のカテゴリの URL をよく見てみて下さい。「スポーツ」という日本語が URLエンコードされた方式で表現されているのが確認できると思います。この方式の利点は、ある言語に特化した OS を利用していなくても、その言語で URL を表現しつつ、問題が起こらない事です。しかし、カテゴリー名を URLエンコードして URL の一部に利用すると、URL がかなり長くなってしまうという欠点があります。このため、ローカル環境にファイルを設置する場合、OS の制限によって正しく処理できない事があります。そこで CustomDir では、各カテゴリーに割り振られたカテゴリーID をディレクトリ名として採用しました。

なお、現状の CustomDir では、Japanese 階層以下の日本のウェブサイトのみを扱っています。よって、その上の World 階層、およびトップ階層は現在の所、意味を持っていません。しかし、今後 CustomDir が全階層をサポートした場合との互換性を考慮し、Japanese 階層より上の階層のディレクトリも、形式的に設置してあります。



株式会社スプライン