2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

掲示板の汎用ログフォーマット規格を作ろう!

1 :●つんつく● ◆88nTS46ruY :2005/11/12(土) 19:58:04 ID:u8ZfTgnE ?#
住人の力を合わせてログフォーマット規格を作りませんか?
規格を作れば掲示板の移行なども容易に実現できます。

以前も同様のスレッド作りましたがいつの間にか消えてました。
http://pc.2ch.net/php/kako/1035/10359/1035908481.html

デリミタは何にするか
エンコーディングはどうするか
XML化しちゃうけ?
参加してくれる方がいましたら
公式サイトでも立ち上げて本格的にやりたいな・・・と。


2 :nobodyさん:2005/11/12(土) 20:02:12 ID:???
デリミタ
>>10

文字コード
>>20

3 :nobodyさん:2005/11/12(土) 20:05:28 ID:???
記録するべきデータとデータ構造について考えるべき
相互変換可能なフォーマットなんか規定するのはナンセンスつかどうでもいい

4 :nobodyさん:2005/11/12(土) 20:57:12 ID:???
XML
UTF-8

終了

5 :nobodyさん:2005/11/13(日) 00:54:40 ID:RC/r6cYI
とりあえず思いつくものを。
名前 UA HOST コメント タイトル 書き込み日時 メール

てかスレ式にするのかツリーにするのかリストにするのかどれなんだい。

6 :nobodyさん:2005/11/13(日) 02:18:05 ID:???
データベースに投げつける

7 :nobodyさん:2005/11/13(日) 03:49:49 ID:???
ξミヽ(・∀・)ノξ ウンコナゲマクリ

8 :nobodyさん:2005/11/13(日) 09:30:18 ID:???
なぜ、atomじゃダメなの?
まず >>1 は既存のフォーマットをサーベイして比較検討した結果を示してね。
そうすりゃ漁スレ^h^h^h良スレになれる!

9 :nobodyさん:2005/11/13(日) 21:43:41 ID:???
> なぜ、atomじゃダメなの?

意味が解らない。もしや掲示板のソースをatomの中に放り込むって言う馬鹿げた手段に出るつもり?
atomってそういうように作られてたっけ?

10 :nobodyさん:2005/11/15(火) 23:17:27 ID:???
「ログ」でないなら汎用のフォーマットは作れるかもしんないけどね。
OPML みたいな感じで交換時に使うってんならね。

でもログはその利用方法に応じて変わるだろ。

ログフォーマットっていう言い方からしてファイルベース
なんだろうけど、1ファイルで納めるかどうかも利用方法に
応じて変わると思うんだが。で、そういうのはあとで考えるよっ
て連中はとりあえずデータベースに全部投げるとかそういう
発想になっちゃうわけ。

フォーマットありきなんて考え方をログに当てはめるのは
ナンセンスだと思うがなぁ。

11 :nobodyさん:2005/11/16(水) 00:18:59 ID:???
>10
> 1ファイルで納めるかどうかも利用方法に応じて変わると思うんだが。
これについては、>5 で書かれてるHOST情報などですね。
HOST情報など、簡単には表に出せない情報まで1ファイルで扱うと
専用ブラウザ対応の問題で面倒になる。
実際、そういうサイトもあるし。


12 :nobodyさん:2005/11/16(水) 01:35:27 ID:???
・XMLでログファイルの具体的な仕様を定義。
 (国コード・文字コード・グループ・作成者・表題・提供元URL・作成日時・最終更新日時・総レス数・各列の概要 etc.)

例)イメージとしてはこんな感じ
[国コード:JP] [文字コード:Shift-JIS] [所属:2ch WebProg] [作成者:nobody]
[表題:掲示板の汎用ログフォーマット規格を作ろう!] [提供元URL:http://pc8.2ch.net/test/read.cgi/php/1131793084/]
[作成日時:2005/11/12 19:58:04] [最終更新日時:2005/11/16 00:18:59] [総レス数:11]
[各列の概要:no name trip mail date(YYYY/MM/DD hh:mm:ss) id text](←アイコン掲示板用に、iconとか定義しちゃっても面白いかもな)

・ログファイルはCSV形式で送出する。
 (他にも数種類使えるのを用意して、XMLの方で指定してやるってのもアリか。送出時に変換してやるなら、鯖側のログファイルの扱いは自由だし)


専ブラは必要なログの範囲(例えば100〜全て)に加えて、必要な列情報をリクエストとして送信。
鯖の処理に余裕があって帯域に余裕がなければ、必要な範囲だけを抜き出し圧縮して送信すれば良いし。逆なら(略

何となく書いてみたけど途中で飽きて、雑になった。
まともにやろうと思ったら、こんなチラシの裏みたいなのじゃなくて、もっと練らないと使い物にならんね。

13 :nobodyさん:2005/11/16(水) 03:14:23 ID:???
>12
専用ブラウザに関して言えば、ログ範囲はレス単位ではないです。
取得済みログのBytes数で管理されており、「〇Bytes目から続きをくれ」
みたいなリクエストになります。(あくまでも現状は、という話ですが)
そこから考えた場合、通常はデータベースに放り込んでおいてという手法だと
現状のBytes指定のリクエストは難しいということになるのかな。
現在の2chの仕様に合わせないといけないって訳ではないので
ここでの定義としては、「レス単位で指定するのだ」としても良いわけですが
既得分に「あぼーん」があった場合とか、ログ取得がCGI経由になり重くなるとか、
いろいろ懸念事項がありそうです。
掲示板訪問者のうち、専用ブラウザ使用者の占める割合は案外低いけど
専用ブラウザが対応されていない掲示板は、流行にくいと思いますので
難しいっすね。

14 :nobodyさん:2005/11/16(水) 08:07:07 ID:???
静的な情報しか入ってないログなんかより、
Web 2.0 時代の掲示板とか、
そういう方向に発想した方が面白いんじゃねーか?

専用ブラウザとかより RSS, Atom にどんな情報出すと
便利かとかさ。OpenSearch に対応した掲示板とか。

15 :nobodyさん:2005/11/16(水) 22:43:54 ID:???
スレの群れの中で消えていくかと思ったら、意外とまともな流れになったね。

OpenSearchに対応したりと検索系に力を入れた掲示板とか良さそうだし作りたいけど、俺はまだ経験が浅くて力量が伴ってないからなぁ・・。
もっと勉強して精進せねば

16 :nobodyさん:2005/11/16(水) 23:33:20 ID:???
>1がんがれ

17 :nobodyさん:2005/11/16(水) 23:34:06 ID:???
公開/保留/あぼ〜んフラグは欲しい。
あるいは、保留投稿とかゴミ箱行き投稿を別ファイルに持たせるのでも良いけど。
スパム投稿対策には、URL検閲機能と証拠保全機能があると便利だとつくづく感じる。

18 :nobodyさん:2005/11/17(木) 07:40:16 ID:???
どうみても糞スレです

19 :nobodyさん:2005/11/18(金) 04:40:32 ID:b/mBx1Hf
欲しいデータ

■ インデックスファイル
投稿日時 / 編集日時 / 投稿時 IP / 編集時 IP
記事 ID / タグが有効なのかプレーンテキストなのかのフラグ
文字コード / 改行コード / 言語
パスワード / 暗号化の有無 / 暗号化の方法 / 暗号化の際のパスワード (password とはまた別)
記事を別ファイルにするのでそのファイル名 (ファイル名はランダムでユニークなのが望ましい)

※ インデックスファイルは最新の投稿が一番下


■ 記事データ
インデックスファイルをリビルドする際、記事の時刻を posttime で扱うか edittime で扱うかのフラグ
今流行りのタグとやらをカンマ区切りか[]でかこって羅列
投稿者名 / メールアドレス / ホームページ / 件名 / 本文

※ 記事データにはインデックスファイルに記述するデータを全て含む。
※ というのも、インデックスファイルがぶっ飛んだ時にインデックスをリビルド出来るようにするため。


先に必要と思われるデータは列挙しておいたほうがよい。
あとからデータを追加するのはかなり面倒だし、フォーマットがぐちゃぐちゃになって使いづらくなるだけ。
(RSS なんかが反面教師としてはいい例かと思う)



20 :nobodyさん:2005/11/18(金) 15:45:41 ID:???
>>19が反面教師としてはいい例。

21 :nobodyさん:2005/11/18(金) 20:41:14 ID:???
>>19
それって、わざわざ移行を検討させる程に魅力的ですか?

22 :nobodyさん:2005/11/18(金) 22:16:58 ID:???
DB使えよ

23 :nobodyさん:2005/11/18(金) 23:47:47 ID:???
.DAT使え
<>で区切れ

24 :nobodyさん:2005/11/19(土) 04:27:12 ID:???
>>6で正解が出ている。
よって、このスレ終了。

25 :nobodyさん:2005/11/19(土) 04:32:28 ID:19YEjquE
そのDBに入れるデータ構造をうだうだ話すスレだと思うのだが?


26 :nobodyさん:2005/11/19(土) 05:00:34 ID:???
>>25はDBのカラムに順番があると思っているらしい。

27 :nobodyさん:2005/11/19(土) 05:06:09 ID:19YEjquE
誰も「データの順番」とは書いてない。
「データの構造」って書いてる。

28 :nobodyさん:2005/11/19(土) 06:32:30 ID:???
DB のテーブル構造を統一するのはナンセンス.

29 :nobodyさん:2005/11/19(土) 14:47:01 ID:???
せっくす

30 :nobodyさん:2005/11/20(日) 02:49:24 ID:Hl7rGqnD
でも必要なデータを挙げるのは必須作業

31 :nobodyさん:2005/11/20(日) 09:14:17 ID:???
はいはいワロスワロス

32 :nobodyさん:2005/11/20(日) 09:58:32 ID:???
感動した。
協力しようじゃないか。
じゃあ、まずオレから。


投稿者の生年月日:占い機能を入れたいから

33 :nobodyさん:2005/11/20(日) 12:49:54 ID:???
>>32
建前:占い機能を入れたいから
本音:キャッシュカードのパスワードを抜きたいから

34 :nobodyさん:2005/11/20(日) 21:47:37 ID:???
昭和の 33

35 :nobodyさん:2005/11/20(日) 21:51:19 ID:???
書き込んだ人間の健康状態も記入したいので排便量フィールドを追加しといて。

36 :nobodyさん:2005/11/21(月) 03:25:32 ID:m9z0lXWM
排便入れるなら排尿も必要だな
あとカロリー値とか糖分とかも…すんげぇ膨大なデータになるな・・・

37 :nobodyさん:2005/11/21(月) 05:08:38 ID:???
既に違うスクリプトだろ

38 :nobodyさん:2005/11/21(月) 06:38:43 ID:???
いやいや。
掲示板に必要なデータですよ。
なにしろ汎用ですから。

39 :nobodyさん:2005/11/21(月) 07:50:55 ID:???
住基ネットに進入できる掲示板にすれば、データ入力の手間が省けるね♪

40 :nobodyさん:2005/11/21(月) 10:13:04 ID:???
それは侵入だな

41 :nobodyさん:2005/11/22(火) 04:22:26 ID:???
住基ネットのログフォーマットを考えないとな。

42 :nobodyさん:2005/11/22(火) 08:20:33 ID:???
提供可能な臓器の固体番号からまずはじめようか

43 :nobodyさん:2005/11/22(火) 20:55:25 ID:???
というわけで、糞スレでした。

44 :nobodyさん:2005/12/16(金) 05:48:44 ID:nqW99XKP
臓器の固体番号以前に個人ごとに割り振れるユニークIDフィールドも必要
今後人口が増えることを考えて100億ぐらい扱えれば十分か・・・

45 :nobodyさん:2005/12/18(日) 18:46:44 ID:KPcYR7gp
ようするに何でもモジュール化して定義を追加できればいいわけだ

46 :nobodyさん:2006/01/07(土) 13:18:59 ID:??? ?
やっぱ、xml

って、3・4年前でも似たようなスレ見たことあるが・・・。

47 :nobodyさん:2006/01/08(日) 01:55:00 ID:???
sqliteでいいだろ。
国内のレンサバにDBが入っていないことで、日本のcgiの進歩が
世界から取り残されてしまった弊害は計り知れない。。
いまだにKENTが蔓延っているのがその証拠。

48 :nobodyさん:2006/01/08(日) 03:23:37 ID:rLvbm8XB
SQLiteは使いやすいよな
漏れは好きだ

49 :nobodyさん:2006/01/10(火) 07:01:31 ID:???
うちのBBSのログだと、たとえばID10番のログの場合
10.xml
-------------------------------------------------
<bbs-article>
  <time>2005-09-04 04:58:05</time>
  <name>test</name>
  <title>test</title>
  <style>color:#009900;font-family:'MS UI Gothic','Osaka',sans-serif;</style>
  <password>5e4c8dfa(以下略。32byteのMD5)</password>
</bbs-article>
--------------------------------------------------
10.txt
--------------------------------------------------
これは本文です。

てすとてすと
--------------------------------------------------
こんな感じ。

50 :nobodyさん:2006/01/10(火) 18:28:22 ID:???
気持ち悪いログだな。

51 :nobodyさん:2006/01/15(日) 03:04:14 ID:???
ものすごく無駄が多いな…サイズやら気にしないなら問題ないんだろうが…

52 :nobodyさん:2006/01/15(日) 04:50:58 ID:???
>>49
その程度なら XML やめて YAML にしておくと楽そう

記事ごとに style が保持できる必要あるのかなぁ…


53 :nobodyさん:2006/01/15(日) 11:55:49 ID:4XZbfZj+
>>52
投稿時に色などを設定できる掲示板は多い。
必要性は感じないが。

54 :nobodyさん:2006/01/16(月) 19:03:20 ID:???
>>51
データに無駄が多いのは百も承知ですよ。
たとえ無駄が多くとも、得られるメリットのほうが大きいと判断したからそうしてるわけで。

>>52
YAML なんて仕様、初めて知った。おおまかなポリシーはだいたい理解した。
もしもデファクトスタンダードとして認められるぐらいの立場になれば採用するかもね。
それまでは、フォーマットの汎用性・再利用性を優先してXMLにしておくよ。

スタイルについては、仕様を決める段階のときに
そのまんま保存するか、IDなどを使って管理するか(RDBSで言う正規化みたいに)
かなり悩んだ。
もしも正規化した場合だと、記事を投稿した時点でユーザーが選んだスタイルが
後々になって変わってしまう懸念があって、
ユーザーの視点から見たらそれはやっぱ嫌だろうってことで
結局スタイルまるごと保存形式にしたわけです。

55 :49:2006/01/16(月) 19:16:24 ID:LXWSRImJ
おっと、>>49 = >>54 でした。

>>53
この掲示板は、もともとはB級Webサイト
(シロートが運営してて、身近な友達etcの間で細々と交流し合うほーむぺーじ)
での利用を想定してるんですよ。

で、そんなB級Webサイトのいち利用者である自分としては、
こういう掲示板では何らかの形で自分のアイデンティティーを主張したいわけで。

もちろん、知識の共有だけが目的の、技術系のコミュニティであれば
そんな必要は全くないです。

56 :nobodyさん:2006/01/21(土) 04:18:59 ID:pqXier51
RFC 1036

57 :nobodyさん:2006/01/21(土) 20:56:34 ID:GHGpAfBe
これでいいか?

用途:掲示板の基本情報
DTD名:bbs.dtd
XML名:bbs.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- bbs.dtd -->
<!ELEMENT bbs (code, url, name, abstract, mode) >
<!ATTLIST subjects version CDATA #FIXED "1.0">
<!ELEMENT code (#PCDATA) ><!-- 掲示板の英名 -->
<!ELEMENT url (#PCDATA) ><!-- 掲示板のルート(いわゆるindex.htmlのある階層) -->
<!ELEMENT name (#PCDATA) ><!-- 掲示板の名称(ひらがな・漢字も許可)
<!ELEMENT abstract (#PCDATA)<!-- 掲示板の概要 -->
<!ELEMENT rule (#PCDATA)<!-- 掲示板のルール -->
<!ELEMENT mode (#PCDATA)<!-- 掲示板の機能情報(将来の為の予約って事で) -->

サンプル:
<?xml version="1.0" encoding="UTF-8"?>
<!-- bbs.xml -->
<bbs version="1.0">
<code>samplebbs</code>
<url>http://localhost/samplebbs/</url>
<name>サンプル掲示板</name>
<abstract>当該標準フォーマットに関連した話題だけを取り扱います。</abstract>
<rule>XMLやDTDに関する質問はよそでやって下さい。</rule>
</bbs>


58 :nobodyさん:2006/01/21(土) 20:57:23 ID:GHGpAfBe
用途:subject.txtの変わり
DTD名: subject.dtd
XML名: subject.xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- subject.xml -->
<!ELEMENT subjects (thread) >
<!ATTLIST subjects version CDATA #FIXED "1.0">
<!ELEMENT thread (#PCDATA)<!-- スレッドのタイトル -->
<!ATTLIST thread key CDATA #REQUIRED><!-- 各スレッド固有のキー -->
<!ATTLIST thread file CDATA #REQUIRED><!-- 発言ログのファイル名(相対・絶対パスとも許可) -->
<!ATTLIST thread numberof CDATA #REQUIRED><!-- 発言数 -->
<!ATTLIST thread load CDATA><!-- 人気度なんかを表現する良識(でも予約ね)-->

サンプル:
<?xml version="1.0" encoding="UTF-8"?>
<!-- subjects.xml -->
<subjects version="1.0">
<thread key="1234567890" file="./dat/1234567890.xml" numberof="2">スレッド1番</thread>
<thread key="1234567891" file="./dat/1234567891.xml" numberof="12">スレッド2番</thread>
<thread key="1234567892" file="./dat/1234567892.xml" numberof="2">スレッド3番</thread>
<thread key="1234567893" file="./dat/1234567893.xml" numberof="46">スレッド4番</thread>
<thread key="1234567894" file="./dat/1234567894.xml" numberof="12">スレッド5番</thread>
<thread key="1234567895" file="./dat/1234567895.xml" numberof="7">スレッド6番</thread>
<thread key="1234567896" file="./dat/1234567896.xml" numberof="124">スレッド7番</thread>
<thread key="1234567897" file="./dat/1234567897.xml" numberof="2">スレッド8番</thread>
<thread key="1234567898" file="./dat/1234567898.xml" numberof="15">スレッド9番</thread>
<thread key="1234567899" file="./dat/1234567899.xml" numberof="12">スレッド10番</thread>
</subjects>

59 :nobodyさん:2006/01/21(土) 20:58:30 ID:GHGpAfBe
用途:xxxxxxx.log(発言ログ)の変わり
DTD名: thread.dtd
XML名: [スレッドのキー番号].xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- thread.dtd -->
<!ELEMENT thread (message) >
<!ELEMENT message (from, mail, date, body) >
<!ATTLIST message title CDATA #FIXED "1.0"><!-- スレッドのタイトル -->
<!ATTLIST message version CDATA #FIXED "1.0">
<!ELEMENT from (#PCDATA) ><!-- 名前 -->
<!ELEMENT mail (#PCDATA) ><!-- メールアドレス -->
<!ELEMENT date (#PCDATA) ><!-- 投稿時刻(UNIXタイムスタンプ) -->
<!ELEMENT body (#PCDATA) ><!-- 本文 -->

<!-- [スレッドのキー番号].xml -->
<thread version="1.0">
<message>
<from>名無しさん</from>
<mail>sage</mail>
<date>1137844462</date>
<body>発言ですわ</body>
</message>
<message>
<from>名無しさん</from>
<mail>sage</mail>
<date>1137844462</date>
<body>発言ですわ</body>
</message>
</thread>

60 :nobodyさん:2006/01/21(土) 23:26:46 ID:???
頭悪杉

61 :nobodyさん:2006/01/21(土) 23:27:41 ID:GHGpAfBe
具体性の無いレスだな

62 :nobodyさん:2006/01/26(木) 21:22:40 ID:???
無理にXMLにするくらいならカンマ区切りファイルで十分じゃん

63 :nobodyさん:2006/01/29(日) 18:18:13 ID:???
タブ区切りが好き。

64 :nobodyさん:2006/01/29(日) 21:52:39 ID:jiyafhD/
>>62-63
じゃあ、例えばカンマや\tを含むデータを保存したい場合はどうしますか?

65 :nobodyさん:2006/01/29(日) 21:59:02 ID:???
""で括ったり、適当な文字に変換したりお好きなように

66 :nobodyさん:2006/01/29(日) 22:23:21 ID:???
カンマならエンティティ化してタブならスペースにするなり消すなりするんじゃない

67 :nobodyさん:2006/01/30(月) 01:59:23 ID:???
タブは保存すらさせないかなぁ

68 :nobodyさん:2006/01/30(月) 05:29:09 ID:???
CSVもTSVも、データがシンプルなのはいいんだけど、
それぞれの値が何を意味するかの情報が存在しないから
掲示板の「汎用」ログフォーマットとしては不適なんだよね。

改善策としては、データの1行目にフィールド名を記述して
------------------------------------
name,title,date,color
test,test,2006-01-30T00:00,#000000
hoge,var,2006-01-30T01:00,#0000ff
------------------------------------
みたいにするとか。そのほうがまだマシかな。

69 :nobodyさん:2006/01/30(月) 14:27:46 ID:???
=まとめ=

ログ形式
name<>mail<>date<>msg<>subject 2ch形式
↓半互換形式(同じスクリプトでなんとなく読める)
name<>mail<>date<>msg<>subject(<>id<>pass<>stat<>color<>type・・・)
↓区切記号を変更(ちょい変えな読めん)
name,mail,date,msg,subject(,id,pass,stat,color,type・・・)

文字エンコード
S-JIS(2ch互換)

EUC-JP(半端?S-JISよかよさげでUTF-8と違って容量膨れない)

UTF-8(結局最後はこれ?でも容量は膨らむっぽい)

70 :nobodyさん:2006/01/31(火) 16:07:05 ID:???
S-JISじゃなくてCP932と考えたほうがいいんでしょ??@とか入るよね。
まあUTF-8のほうがいいと思うけど。多分長い目で見るとS-JISは廃れる。

71 :nobodyさん:2006/01/31(火) 17:03:46 ID:???
よく考えたらcp932でもない変な文字入ってるわ。UTF-8にすれ

21 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)