JinArchiver (1.504.6) | 2020-10-12 22:15 |
JinCore (1.207.2) | 2020-02-10 02:53 |
Jindolf (4.101.4) | 2020-10-12 22:22 |
JinParser (2.102.2) | 2020-02-11 01:23 |
人狼BBSで扱われるXHTML出力の全てはCGI(index.rb)により生成される。
index.rb が出力するXHTMLの種類。
人狼BBSは、DOCTYPE宣言で「XHTML 1.0 Transitional」を名乗るXHTMLらしきデータを出力するが、残念ながら人狼BBSの出力はXHTMLの基準を満たしていない。XMLでもない。つまりXML規格でいうところの「XMLプロセッサ」で機械的に読み込むことができない。 できない理由は、次に述べるようなほんの些細なことなので、もったいない。
Jindolfは以下の決め付けの元、XHTMLの階層的な構造を解釈する事をはなからあきらめ、単純な正規表現のマッチングによってのみ人狼BBSの出力を解析するアプローチを取っている。
つまりJindolfはコメントをコメントと思わない。こんなんでいいんでしょうか。今のところ問題は発覚していない。
人狼BBSがHTTPを用いてXHTMLを出力する際には、HTTPヘッダやXML宣言、metaタグなどを介して文字集合及び文字エンコーディングに"Shift_JIS"が指定される。 しかし人狼BBSはShift_JISで定義された文字集合(JIS X0201:1997 と JIS X0208:1997)以外の文字も発言として受け入れてしまう。そしてそのような文字が含まれた過去発言を出力してしまう。(いわゆるNEC漢字やIBM漢字と呼ばれる機種依存文字の問題)
Jindolfは、人狼BBSの出力するXHTMLは全て"Shift_JIS"で記述されていると決め付けている。機種依存文字の問題はjava.nio.charset.Charset.forName("Shift_JIS")に丸投げして内部ではUnicodeを使っている。今後の方針は不明。
人狼BBSの出力する全てのXHTMLには
<meta name="robots" content="noindex,nofollow"> <meta name="robots" content="noarchive">なるロボット除けのおまじないがheadタグ内に指定してある。
robots.txtは設置していない模様。
<?xml XML宣言 ?> <!DOCTYPE DOCTYPE宣言 > <html> <head> </head> <body> ...BODY構造... </body> </html>
※ tbody は実際には略され記述されていない。
<table> <tbody> <tr> <td> ← ここで全体をセンタリング指定 <table> ← ここで500px幅指定 <tbody> <tr> <td> ← ここでセンタリング指定 <a><img></a> ← タイトル画像 ...メイン部... ...フッタ部... </td> </tr> </tbody> </table> </td> </tr> </tbody> </table>
<div class="main"> <form>.....</form> ← ログイン(ログアウト)フォーム。 <div class="login_form"> ← E国では替りにこちら。 <a href="index.rb?cmd=to_sign_in">sign in</a> </div> 村名 <p> ...各日付へのリンク </p> フィルタへのリンク 以下、 <div class="message"> ...メッセージ </div> の繰り返し。 <p>参加者はログインして下さい。</p> ←進行中の村で現れる事がある。 <p>ゲーム参加者希望者はログインして下さい。</p> ←進行中の村で現れる事がある。 <a> ...次の日へのリンク </a> </div>
[ページ情報]
更新日時: 2020-10-12 23:35:18, 更新者: olyutorskii
[権限]
表示:無制限, 編集:メンバー, 削除/設定:管理者