Hatena::ブログ(Diary)

変更履歴 はてな版

2016-01-16

SAT大蔵経DBで仏典を読みながらJapan Knowledgeの仏教語大辞典を簡単に引けるようになりました

今回は、SAT大蔵経データベースJapan Knowledgeが連携して便利になった、という話です。

前置きが長いので、前置きを飛ばしてとりあえずどうなったか知りたい人は、下の方にある「ここから具体的な解説です」というところから見てください。

2008年から、SAT大蔵経データベースでは、「本文をドラッグすると英語の仏教辞典を引いて意味を英語で表示する」という機能を提供していました。これはチャールズ・ミュラー先生のDigital Dictionary of Buddhism(DDB)の見出し語と意味のデータ(ついでにピンイン表記も)のデータをいただいたことで実現したサービスでした。これは英語圏の方々には大変喜ばれているだけでなく、英語で仏教のことを書いたり話したりしなければならない世界中の(日本も含む)方々からも好評を博している機能なのですが(一方で、あれのせいで学生がちゃんと辞書を引かなくなったと怒っている米国の大学の先生もおられるそうですが)、しかし、せっかく日本で作っているのに日本語の意味を表示できないのはなんとも残念なことでした。

一方で、有料コンテンツとの連携ということもSAT大蔵経DBでは課題の一つでした。というのは、これまで、SAT大蔵経DBは基本的にフリーのコンテンツを集めたり連携したりしてサービス提供をしてきました。しかしながら、著作権保護期間中の有料コンテンツの中には素晴らしいものがたくさんあります。そもそも優良なコンテンツを作成するには費用が発生することが多いので、利用者が個別に支払った費用がコンテンツの作成に回るという仕組みもまた、捨てがたいものがあります。そこで、フリーのデータベースでありながら、適切な対価を支払えば有料コンテンツも使える、ということが実現できないだろうか、それも、学術データベースの文脈から取り組めないだろうか、ということは、プロジェクトの中でもずっと検討されてきたことの一つでした。

ここでの問題の一つは、学術データベースプロジェクトが課金システムを運用できるか、さらには、課金を要するコンテンツを適切に管理できるか、ということでした。20年前ならいざ知らず、現在のその種の業務の要求水準からすると、それはさすがに手を出すには大き過ぎる課題であり、やむを得ずペンディングとなっていたのでした。

そこに、降って湧いたように登場したのが、Japan Knowledgeでの『仏教語大辞典』搭載の話でした。機関契約だけでなく個人契約サービスも提供しており、国内だけでなく、世界中の大学・大学図書館をはじめ、各地にたくさんの契約機関とユーザを抱えているJapan Knowledgeが、SAT大蔵経DBと関係の深いコンテンツを提供し始める、という話をうかがったとき、これは良い機会だ、ということで、さっそくSAT大蔵経DBとの連携の話になりました。ありがたいことに、見出し語と日本語ふりがなのデータと個々の見出し語のURLのリストをいただけることになりましたので、上記のDDBの検索機能をほぼそのまま援用して、SAT大蔵経DBに組み込んでしまいました。その結果、下記のようになりました。

ここから具体的な解説です。

1.まず、右下の小さなウインドウに注目してください。これが今回新規追加されたJapan Knowledge用ウインドウです。

f:id:digitalnagasaki:20160116192747j:image

2.では、まず、お経を一つ、開いてみましょう。一番最初のものを開いてみます。

f:id:digitalnagasaki:20160116202709j:image


3.次に、どこでもいいのでテキストをドラッグしてみましょう。そうすると、右下の小さなウインドウ仏教語大辞典の見出し語検索結果がリストされます。(ここでは、見出し語を最長一致で検索しています。さらに、その際に、異体字での検索も行っております)

f:id:digitalnagasaki:20160116193014j:image

4.リストされた見出し語をクリックしてみましょう。そうすると、ポップアップウインドウが開いて、仏教語大辞典の説明が表示されます。

(ただし、Japan Knowledgeの機関契約か、パーソナル+Rの個人契約をしている必要があります。それから、パーソナル契約のログインをしていない状態でアクセスした場合は最初の表示画面は機関契約向け画面になりますので、機関契約アクセスでない場合はパーソナル契約のログイン画面に行ってログインしてください

f:id:digitalnagasaki:20160116202717j:image

以上です。兎にも角にも、日本語で意味が出るようになったのは一つの大きな前進かと思っております。

これは、フリーのコンテンツと有料コンテンツを有機的に組み合わせてより良い学術デジタルアーカイブを作成・提供していくための実験の一つです。他にも、うまく組み合わせられそうな有料コンテンツがあれば、ぜひ取り組んでいきたいと、個人的には考えております。特に、有料コンテンツを作っておられる皆様は、ぜひ前向きにご検討ください。


ちなみにSAT大蔵経DBは、これ以外にも色々な機能を提供しておりまして、下記のタブから、関連する書誌情報CiNiiの論文PDFを引いたり、英訳対応コーパスを検索したり、単語の登場頻度を見たり、文字の情報を確認したり…と、色々な機能が提供されておりますので、興味があるかたはクリックして開いて、試してみてください。

f:id:digitalnagasaki:20160116203736j:image

2015-11-27

日本の古典籍のオープンデータ! その2

前回の続きである。

あれもこれもしながら合間にちょこちょこっとやっているので、なんとも微妙なシステムを公開してしまっていて大変恐縮なのだが、

今夜は、示した頁に付与されたタグを表示する時に、同じタグを付与されている別な本/頁へのリンクをリストするだけでなく、さらに、別な本/頁のサムネイル画像まで表示した上で、サムネイル画像をクリックするとその画像がまんなかに表示されるようにしてみた。これによって、タグ付けの意義と課題がよりいっそう見えやすくなるのではないかと思っているところである。

たとえば、下記のURLでは「頼朝」をみてみると、文字だけの頁にも「頼朝」のタグがついている。文字だけの頁だと、どこに「頼朝」の文字列があるのか探すのが結構難しかったりして、やはり画像中の座標情報をとってもらえたらと思ったところである。

http://www2.dhii.jp/nijl_opendata/NIJL0018/099-0014/11

また、「頼朝」は「よりとも」や「源 頼朝」など、色々な表記のタグがあるようで、シソーラスの必要性を改めて感じたところである。

あるいは、下記URLの「一条院」は色々な本にタグつけされているようで、これもなかなか面白い。

http://www2.dhii.jp/nijl_opendata/NIJL0032/110_0619/31

それから、当然のことだが、『寛政武鑑』は異版にそれぞれ割と細かくタグをつけているので、サムネイル画像一覧は結構便利だろう。

http://www2.dhii.jp/nijl_opendata/NIJL0302/MIT-Y01201-143/4

また、さらに、サムネイル画像をクリックすると中央の画像が切り替わるという機能もつけておいたので、それぞれのサムネイル画像をクリックしていくと、パラパラ漫画的に違いがわかるのでこれはこれでちょっと面白い。別ウインドウで開いて詳細に比較してみたければ、頁番号を右クリックして別ウインドウで開いていただくとよい。

というような機能を今夜はつけていたわけだが、昨晩のブログ記事の続きは…眠いのでまた今度。

2015-11-26

日本の古典籍のオープンデータ! その1

日本の古典籍の本格的なオープンデータが公開されたのは今月の上旬。今回の場合、何が本格的かと言えば、その画像の圧倒的な容量である。下記のサイトをご覧いただけば一目瞭然だが、26GBだの30GBだのといったファイルがHTTPダウンロードできるようになっているのである。

http://www.nii.ac.jp/dsc/idr/nijl/nijl_list.html

もちろん、そんなサイズのファイルをHTTPダウンロードさせるというNIIの豪気さにも圧倒されるが、P2Pをセキュリティポリシー等で禁止している機関もNIIにはぶら下がっているそうだし、anonymous FTPというのもFTPのポートを閉じているところがあるかもしれないと思うと、なんでもHTTPという昨今の情勢をNIIが後押しするようなことも色々な事情から致し方ないことなのだろうかとも思う。

 さて、そんなどうでもいい感想はともかく、とりあえず350点もの日本の古典籍の画像+書誌データ+解題+タグがCC BY-SAで公開されるというのは大変に感動的なことであって、これはぜひ活用せねば…と思って見てみようと思ったら、とりあえず見てみる、というのがなかなか困難な状況であることに気がついた。(というか一目瞭然だが)。

 そこで、とりあえず公開されているデータを一通りざっと見えるようにしてみようかと思うに至った。(ここまで、公開データのサイトを見てから数分で考えたこと)。

 そこで、作ってみたのが「国文研データセット簡易Web閲覧」というサイトである。とりあえず、OpenSeaDragonで画像をぬるぬると拡大縮小できたりとか、サムネイル一覧をざっくり見たりとか、付与された解説やタグが見えるようにしたりとか、タグによる頁間のリンクを張って関連頁をたどれるようにしてみたりとか、見栄えは気にせず、とにかく内容を確認できるようにしている。

 特に、「タグ-頁画像対応リスト」と「タグリスト」は色々活用できると思うので、このままローカルに保存して色々いじっていただいたりするのもよいと思う。特に、「歴史的典籍オープンデータワークショップ」に参加してみようと思っている人は、ぜひ、予習に活用していただきたい。

 というわけで、上記のサイトを作るためにやったことを少しずつ書いていくつもりである。まずはデータのダウンロードである。wgetで一括ダウンロード。容量が大変だが、これは待っていればいいのでOKである。たしか1日で終わったような気がする。

 次に、zipファイルを戻す作業。これも基本的には一括作業。元々tcsh使いだったこともあり、知識が断片的なのでcsh系で

$ tcsh

$ foreach f (*.zip)

> unzip $f

> end

ということをして、あとはひたすら待ち。これも結構時間がかかった。

さて、次に、ビューワやサムネイル一覧のための画像加工をしなければならない。まずサムネイル一覧のための画像加工だが、これもまたcsh系で、サーバに入っているImageMagickを使って(この種の操作は10年前からまったく進歩していないのだが)、

$ tcsh

$ foreach f (*/*.jpg)

> convert -resize 200x $f $f:rs.jpg

> end

とやって、どんどんサムネイル画像を作成していくのである。これもあとはひたすら待ち。

次に、画像ビューア、OpenSeaDragonで表示するためのピラミッドタイル画像の作成。このタイル画像作成のツールは色々なものが公開されているが、今回はDZIでpythonのものをダウンロードして、用意したディレクトリを全部読み込んでこのスクリプトを実行していくスクリプトを書いて、あとはひたすら待ち。atコマンドで動かしたが、結局この作業に1週間以上かかった。

というわけで、ピラミッド画像作成が終わったところで、いよいよOpenSeaDragonを使ったサイトの作成に入ったわけだが、それはまた次回に。

2015-10-19

JATS-Con Asiaに参加できなくて残念です:JATS/XMLとJ-Stageについての質問

JATS-Con Asia ミーティングという、ユーザ目線で大変興味のあるイベントが、しかも都内で開催されるというのに、別な国際会議が松江で開催されるというので泣く泣く参加を断念した。今は松江にいる。

泣きそうになるほど残念だった理由は、J-Stageに論文を登載する作業の際に改めて直面した「スペースの扱いの問題」についてどれくらい業界で認知されているのか、ということをおかがいしたかったからである。XMLに詳しい人たちにとっては既知のことだと思われるのだが、単語間が空白で区切られている表記体系と区切られていない表記体系との間では、改行・空白・タブなどの扱いを微妙に変更しなければならない、という件である。

かいつまんで言えば、英語だとテクストデータが改行されている場合、改行は単語の切れ目とみなして1つ空白を入れようということになりがちである。タブも同様である(これを仮に「分かち書きタイプ」としておく)。しかし、たとえば日本語では、そもそも空白を文章の中で使う機会が少ないということもあり、改行されている場合であっても、単語の切れ目である可能性は高くないので(これを仮に「非分かち書きタイプ」としておく)、とりあえず改行等が入っていても無視して、明示的に空白が入っている場合はそれを処理や表示に反映させようということになりやすい。

実際の所、J-Stageでは、(私が使ってみた限りでは:やり方が悪かったのかもしれないが)、メタデータ登載の際に、英語・日本語をlangで指定できるようになっているにも関わらず、英語を指定した場合でも、明示的な空白が入っていない限りは、改行の扱いは「非分かち書きタイプ」だった。私が使っているXMLエディタの設定の問題もあるかもしれないが、デフォルトでは「分かち書きタイプ」を前提として処理が行われるため、結果として、「表示・処理の際には空白として扱われることを前提としている改行が削除されて単語間がつながってしまう」という状況になっていた。単にCSSの書き方の問題だと思うので技術的には深刻な問題ではないのだが、J-Stageのような大規模システムでこういう仕様になってしまっていると、せっかくの効率化の効果が十分に発揮されないのではないかという気がした。もちろん、非分かち書きタイプにあわせて分かち書きタイプの処理方法を変えていくという手もあるかもしれないが、それはたとえばUnicodeが広まったからといってすべてのソフトウェア開発者が多バイト文字の処理に前向きに取り組んでくれるのかという微妙な問題と似たような感じで、やはり後々に微妙な問題となっていくのではという気もしないでもないが、XMLの場合はlang属性でとりあえずデータ側で切り替えができるので、処理系の方でlang属性を見て処理を切り替えてもらえるとありがたいなと思っている。なお、そこら辺のことについて、JATSに深く関わっているMulberry Technologiesの方々や、先日、日本にご招待したWendell Piezさんとお話をする機会もあったのだが、東アジアは大変だよね、ということで、まあ自分たちの問題は自分たちで解決しなければならないのだなという思いを新たにしたところである。

この点について、非分かち書きタイプのテクストが多い東アジアでは最近はどういう風に考えているのか、どう対応しているのか、そういう中でJ-Stageの仕様はどういう位置づけになるのか(普通なのか、ちょっと作り込み損なったのか、今後改善する予定があるのか、それとも分かち書きタイプの書き方を変える方向を目指しているのか、というような)、ということをおうかがいしたかったのだが、残念ながら、参加できなかったのでとりあえずここに書いてみることにしたのであった。

2015-07-21

人文学に役立ちそうなプログラミングの勉強会(中級編)

ここしばらく、TEI/XMLの勉強会を全国各地で開催してきましたが、そろそろ次の一歩に進んでみようかと思います。題して「人文学に役立ちそうなプログラミングの勉強会」です。

といっても、「次の一歩」というほど今までの勉強会を踏まえたものになるかどうかわかりませんが、とりあえず今回は試しとして、一つは

https://sites.google.com/site/opuoageijutsu/link/1

の検索システムの解説&こういうものを簡単に作れるようになるための基礎知識(?)の習得、を目指したいと思います。(この検索システム、たとえば「沖展」などのキーワードで検索してみてください。)

この検索システムは、jQuery UI、とd3.jsを組み合わせたもので、検索結果をグラフ表示したりできます。あとは、CSVファイルを読み出してキーワードの共起情報を集めるという単純なものです。こういう単純なものをどうやって簡単に作るのか、といった辺りの話をしつつ、実際に作ってみながら、色々試してみたいと思います。

それからもう一つ、『走れメロス』のTEI/XMLファイルを作ってみたので、これを使って何かしてみてもらいたいなと思っています。これはDOM操作と上記の仕組みを組み合わせて色々できるのではないかという話です。一応、2日間開催の予定です。

というようなことで、これまでの、そこそこきちんとスケジューリングされた勉強会とは打って変わった、ぬるくてもやもやとしたオーガナイズされてない感じの勉強会になると思います。それでも興味がある、という人は、下記の要項をご覧いただいた上で、ツィッターで @knagasaki 、もしくは dhworkshop_at_dhii.jp (_at_を@に置き換えてください)までメッセージをください。定員は8名までとしますので、先着順ということでお願いいたします。

「人文学に役立ちそうなプログラミングの勉強会」

日時:2015年7月23日、24日(10:00〜18:00くらい。適宜休憩あり)

場所:一般財団法人人文情報学研究所 http://www.dhii.jp/access.html

参加費:無料

持ってくるもの:Unix系OSApachePHPが稼働して無線LAN接続可能なノートパソコンWindowsの場合はVMware等のバーチャル環境でLinuxを動かしていただくことになります。HDDSSDの空き容量を10GB以上用意してください。

奮ってご参加ください、というほどでもないのですが、しかし、やる気がないとついてこれないと思いますので、その旨、よろしくお願いいたします。