Author Archives: yayamamo

UTF8 / binary on mod_perl and MySQL max_allowed_packet

Perl (mod_perl) で日本語を利用するために binmode STDOUT, “:encoding(utf8)”; をしていたが、これがネックになって今度は バイナリデータを出力する際に変換が起きてしまっていた。
バイナリを出力する前に binmode STDOUT, “:raw”; を怠らずに。

また、MySQL のデータベースに、ある程度のサイズのデータを放り込もうとする際には max_allowed_packet のサイズに気をつける必要がある。初期値は1Mになっているので、my.cnf の中に書かれているその値を変更する。

変更後のMySQLサーバーの再起動を忘れずにする(mysqladminで reload ではなく、shutdownしてから再起動。)ことと、mod_perl による運用では、Perlスクリプト中で SET max_allowed_packet=8M などとしても反映されないことに注意。

SGE

qsub … -o PATH
と指定すると、同じ名前のファイルが既にPATHにある時、上書きではなくて追加 (append) が行われることに注意。

Allieデータ公開

無事Creative Commons Ver. 2.1にて公開に至りました。
Allie
今回、PubMed/MEDLINE® のデータを利用した派生物の公開に対する利用許諾のあり方について、弁護士とのやり取りを通し、色々と学ぶことがありました。
利用条件の内容が結構な量になっています。NLMは、そのデータの派生物を公開する場合の条件として、NLMデータの利用条件中に書かれている一部の再掲を求めていることも関係しています。一般に米国政府の生成したデータには著作権が無いのですが、PubMed/MEDLINEに収められている文献には出版社の権利があるので注意が必要です。また、元データであるPubMed/MEDLINEデータが頻繁に更新されていることから、そのデータを利用した派生物も適宜更新に努めることが求められています。もちろん、公開する時にはクレジットを載せることも必要になります。その他、®を付けることも求められていました。しかし多くのサイトは付けていないですね。とても律義なサイトになったのでしょうか。

Perl Text::Scan mod_perl

PerlモジュールText::Scanは内部で__DATA__キーワードとInlineを用いている。

mod_perl を利用したハンドラ内で特に対策を取らずに本モジュールを利用すると下記のメッセージが表示され、うまく動作しない。

One or more DATA sections were not processed by Inline.

そこで、一言 “Inline->init;”を入れてやるとうまくいく。

use Inline;
Inline->init

http://search.cpan.org/~kgb/PDL-2.3.2/Basic/Gen/Inline/Pdlpp.pm に書かれていた。
これが見つかるまで結構時間を費やした。

アプリケーションタイプ

Content-Type:

に続いて記述される、まさに「コンテンツのタイプ」に関し、RFCでの記述を調べてみた。
何故か簡単に見つからなかったが、ようやく発見したのでメモしておくことに。
特に今回はTogoDocからリファレンスファイルをダウンロードして取得する際のタイプを調べることを目標としているので、typeはapplicationに限定し、そのsubtypeについて調査。
まずはWikiPediaのエントリをチェック。
すると、RFC2045に記述の規則が書かれていて、subtypeについては以下のような決まりになっていることが判明。

subtype := extension-token / iana-token
extension-token := ietf-token / x-token
ietf-token := <An extension token defined by a standards-track RFC and registered with IANA.>
x-token := <The two characters “X-” or “x-” followed, with no intervening white space, by any token>
iana-token := <A publicly-defined extension token. Tokens of this form must be registered with IANA as specified in RFC 2048.>

そしてIANAに登録されているsubtype一覧は以下の通り。
http://www.iana.org/assignments/media-types/application/
というわけで、リファレンス関係のファイルについては特に登録されているものはないので、x-tokenを用いることになった。

まとめサイトとしてはこちらも参考になる。

因みにRFC2048でIANAへの新規subtype登録方法が記述されている。

これからのデジタル図書館についての文献

Hull D, Pettifer SR, Kell DB
Defrosting the Digital Library: Bibliographic Tools for the Next Generation Web
PLoS Comput Biol. 2008 Oct;4(10):e1000204. Epub 2008 Oct 31.
CiteULike Entry

DOI

人ごみ

皆が人ごみを避けているとしたら、人ごみは無いよね。

ログ

どうして、どいつもこいつも Mozilla を騙るのか?

"Mozilla/5.0 (compatible; ...

正規表現

これを説明している日本語のページで気に入ったものが無かったので一つ書いてみた。
http://marine.cb.k.u-tokyo.ac.jp/~yayamamo/pub/wiki/dbcls/regexp

気付き

指摘されるまで気付かなかった…。

これはひどい。

都度都度外から見なくては。