【機能開発】Omeka SのIIIFモジュールで、目次を加える機能を追加しました。(その1:フラットな目次の登録)
概要
Omeka SのIIIF Serverモジュールについて、IIIFマニフェストに目次を加える機能を追加開発しました。以下の、ver 3.6.5.3から本機能が利用可能です。
本記事では、本モジュールを用いて、目次を追加する方法について説明します。なお、動画でも操作方法を紹介しています。参考なれば幸いです。
詳細
設定
公式の説明は以下にあります。
https://github.com/Daniel-KM/Omeka-S-module-IiifServer#config-options-for-manifest
まず、本モジュールの設定画面において、「Property for structures」に指定するプロパティを選択します。ここで選択したプロパティの値に、目次の情報を入力することで、IIIFマニフェストに目次情報を反映させることができます。ここでは、例えば、「Dublin Core: 目次」を選択します。
データ登録
今回は、国立国会図書館で公開されている『校異源氏物語』の一部を例とします。
ここでは、アイテムの登録とBulk Importを用いたIIIF画像の一括登録の方法についても紹介します。Bulk Importの使い方については、以下の記事を参考にしてください。
アイテムの登録
まず、アイテムを登録します。画面左部のメニューから「アイテム」を選択し、アイテム画面の画面右上部の「新規アイテムの追加」をクリックします。そして、ここでは最低限の情報として、タイトルに「校異源氏物語」、識別子(dcterms:identifier)に「kouigenjimonogatari」を与えます。
画像(メディア)の登録
次に、画像の登録を行います。今回は、IIIF画像を登録する例を紹介します。具体的には、国立国会図書館で配信されているIIIF画像の一部(はじめの35コマ)を登録します。
一括登録用のデータとして、以下のようなCSVファイルを用意します。ポイントとして、列「iiif」にIIIF画像サービスのURL、列「item」に先に入力した「kouigenjimonogatari」を与えます。
https://github.com/omeka-j/Omeka-S-module-BulkImport-Sample-Data/blob/main/media_iiif.csv
データの一括登録は、Bulk Importを用います。画面左のメニューから「Bulk Import」をクリックし、「CSV - Medias」をクリックします。そして先に作成したCSVファイルをアップロードして、「Continue」を押します。次の設定画面「Start import」はそのままで、「Continue」>「Start import」を選択して、画像を一括登録します。
アイテムの一覧画面から、先ほど登録した「校異源氏物語」を確認すると、35件の画像が登録されていることを確認できます。
目次の登録
この35件の画像について、目次情報を付与します。ここでは、1コマ目に表紙(id: cover)、4-6コマ目に序(id: jyo)、6-15コマ目に凡例(id: legend)、16-18コマ目に総目録(id: catelogue)、19-20コマ目に目次(id: toc)、20-35コマ目に「きりつぼ」(id: ch1)、35コマ目に「はゝき木」(id: ch2)を与えます。
具体的には、下図のように、プロパティ「目次」を追加して、各行が以下のフォーマットに基づく情報を入力します。
{id}, {label}, {canvasIndexOrRangeId1};{canvasIndexOrRangeId2};...; {canvasIndexOrRangeIdN}
または、
{id}, {label}, {canvasIndex1}-{canvasIndexN}
具体的には、以下を入力します。
cover,表紙,1 jyo,序,4-6 legend,凡例,6-15 catalogue,總目錄,16-18
toc,目次,19-20 ch1,きりつほ,20-35 ch2,はゝき木,35
この後、アイテムの公開ページに遷移し、Universal Viewerを確認すると、正しく目次が設定されていることを確認できます。
https://diyhistory.org/nakamura196/s/main/item/52
本記事では、ここまでの説明とします。今回はフラットな目次を作成する方法を紹介しましたが、階層構造を持つ目次を作成することもできます。階層構造を持つ目次の登録方法については、以下の記事を参照してください。
まとめ
本記事では、Omeka SのIIIF Serverモジュールを用いて、目次情報を追加する方法を紹介しました。Omeka Sを用いたIIIF配信にあたり、本記事がお役に立てば幸いです。
なお、本機能開発に関するマージリクエストは以下です。
当初、IIIF Presentation APIのバージョン2の設定に対して、フラットな目次情報を追加するマージリクエストを送りましたが、その後、管理者であるDaniel-KM氏が追加開発してくださり、バージョン3への対応や、階層的な目次も扱えるようになりました。結果として、私が追加したソースコードはほぼ上書きしてくださっています。(笑)