Omeka Sへの画像一括登録用プログラム
概要
Omeka Sでメタデータ(Omeka用語でアイテム)や画像(Omeka用語でメディア)を一括する場合、Bulk Importモジュールなどを使用することが多いです。
一方、Omeka Sが提供するREST APIを介して登録することも可能です。
今回は、本APIを用いた画像の一括登録用プログラムを作成しましたので、その紹介です。
開発した理由
最新のBulk Importモジュールでは、エラーが発生した際に、停止するか継続するか等を選択できますが、古いバージョンのモジュールでは、この設定ができません。そのため、画像を一括登録した際に、画像の取得に失敗する都度、その画像が抜けてしまうケースがありました。
そこで、上記への対応のため、APIを用いた画像の一括登録用プログラムを作成しました。
使い方
以下のノートブックでサンプルをご確認いただけます。
まず、登録用のcsvファイルを作成します。本プログラムのIIIF画像の一括登録のみを対象としており、Media Urlには、IIIF画像のURL(info.jsonを含む)を指定します。
Item Identifier | Media Url |
---|---|
post_226 | https://nakamura196.github.io/iiif_static/files/tile/kunshujo/info.json |
Google Colabで実行する場合には、csvファイルをアップロードします。
次にAPIの認証情報やエンドポイントのURLを設定します。
property_id
の値については、上記csvのItem Identifier
で指定した値をもつプロパティのIDを指定します。ここでは、dcterms:identifier
を使用するため、そのOmekaの内部IDにあたる10を指定します。
処理内容
入力したcsvファイルと数の齟齬がある場合のみ、登録を行います。
例えば、アイテムに2件のメディアを紐づけるようにcsvファイルで指定されているにも関わらず、Omeka上では1件のメディアしか紐づいていないアイテムがあった場合、当該アイテムの紐づいたメディアを削除し、再度csvファイルの内容に基づいて登録します。
これにより、メディアの新規の一括登録や、登録漏れが発生していたメディアの修正等を行うことができます。
まとめ
BulImport以外での画像の一括登録方法として、参考になりましたら幸いです。
Discussion