ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
【Omeka Sモジュール開発】IIIF Viewersの更新

【Omeka Sモジュール開発】IIIF Viewersの更新

概要 IIIFマニフェストのアイコンと、複数のIIIF対応ビューアを設定するOmeka Sのモジュール「IIIF Viewers」について、機能改修を行いました。 https://github.com/omeka-j/Omeka-S-module-IiifViewers この改修に合わせて、version 1.1.0をリリースしています。 https://github.com/omeka-j/Omeka-S-module-IiifViewers/releases/tag/1.1.0 リリースにあたっては、以下の記事の方法を使用しています。 以下、具体的な改修内容について説明します。 IIIFマニフェストアイコンのURLの修正 以下の記事でも触れましたが、IIIFマニフェストアイコンについて、ドラッグ&ドロップで他のビューアにロードできない不具合がありました。今回の改修により、この不具合を修正しました。 ビューアの設定の方法の変更 これまでは「Mirador」「Universal Viewer」「Curation Viewer」「Tify」を使用する前提の設計としていました。 この制約に対して、今回の改修では、複数(現時点では5つ)の任意のビューアを設定できるように修正しました。 具体的には、以下の図に示すように、Viewer 1からViewer 5のそれぞれについて、ラベル・URL・アイコンを指定できるようにしました。これにより、任意のビューアの設定や並び替えが可能となります。 合わせて、デフォルトで設定していたTifyについて、その仕様変更に伴い、初期設定から除外しています。 注意点 今回のversion 1.1.0へのアップデートにおいて、モジュールの設定ファイルの構造を変更しています。これについて、現時点ではモジュール開発に不足があり、モジュールのアップグレード処理において、適切な初期設定が反映されないケースがあります。 そのため、本モジュールのアップグレードを行う際には、一旦モジュールをアンインストールしていただき、再度インストールをお願いいたします。この不具合については、今後修正予定です。 まとめ IIIF Viewersモジュールをお使いの方の参考になりましたら幸いです。

Omeka Sのモジュール開発におけるGitHubへのリリーススクリプトの作成

Omeka Sのモジュール開発におけるGitHubへのリリーススクリプトの作成

Omeka Sのモジュール開発におけるGitHubへのリリーススクリプトの作成しました。 この開発にあたっては、Omeka Sのモジュールを数多く開発されているDaniel-KM氏のGitHubリポジトリの使い方を参考にしました。 具体的には、GitHubのリポジトリは「Omeka-S-module-{モジュール名}」のように作成されています。 例:https://github.com/Daniel-KM/Omeka-S-module-EasyInstall そしてリリースについては、「{モジュール名}-{バージョン}」名とともに、「{モジュール名}-{バージョン}.zip」というファイルを添付しています。 例:https://github.com/Daniel-KM/Omeka-S-module-EasyInstall/releases/tag/3.3.6 このzipファイルを展開すると、「{モジュール名}」のフォルダが作成されます。これは、Omeka Sの仕様に合わせて、モジュールの名前と一致したフォルダが必要なためです。 上記を実現するためのスクリプトとして、以下を作成しました。各リポジトリの直下で実行することを想定しています。 set -e version=1.0.1 # バージョンの例 name=IiifViewers # モジュール名の例 repository_path=. # モジュールのパス(リポジトリの直下で実行する例) # 不要なファイルを除外したモジュール名のフォルダを作成 rsync -ahv $repository_path $repository_path/$name --exclude '.*' --exclude '*.sh' # zipファイルの作成 zip $repository_path/$name-$version.zip -r $repository_path/$name # フォルダの削除 rm -rf $repository_path/$name # リリース gh release create $version $repository_path/$name-$version.zip -t $name-$version -n "Released version $version." # ファイルの削除 rm $repository_path/$name-$version.zip ghコマンドはインストールが必要です。 https://github.com/cli/cli よりよい方法があるかと思いますが、Omeka Sのモジュールおよびテーマ開発の参考になりましたら幸いです。 ...

Omeka Sのモジュール一括ダウンロードスクリプト

Omeka Sのモジュール一括ダウンロードスクリプト

私がOmeka Sでよく使用するモジュールを一括ダウンロードするスクリプトを作成しています。順次更新する予定です。 参考になりましたら幸いです。 # Module ## CustomOntology version=3.3.5.1 name=CustomOntology wget https://github.com/Daniel-KM/Omeka-S-module-$name/releases/download/$version/$name-$version.zip unzip $name-$version.zip rm $name-$version.zip ## IIIF Server version=3.6.6.7 name=IiifServer wget https://github.com/Daniel-KM/Omeka-S-module-$name/releases/download/$version/$name-$version.zip unzip $name-$version.zip rm $name-$version.zip ## Universal Viewer version=3.6.4.5 name=UniversalViewer wget https://github.com/Daniel-KM/Omeka-S-module-$name/releases/download/$version/$name-$version.zip unzip $name-$version.zip rm $name-$version.zip ## iiif viewers wget https://github.com/omeka-j/Omeka-S-module-IiifViewers/releases/download/1.1.0/IiifViewers-1.1.0.zip unzip IiifViewers-1.1.0.zip rm IiifViewers-1.1.0.zip ## easy admin wget https://github.com/Daniel-KM/Omeka-S-module-EasyAdmin/releases/download/3.3.7/EasyAdmin-3.3.7.zip unzip EasyAdmin-3.3.7.zip rm EasyAdmin-3.3.7.zip

【Omeka S テーマ開発】Bootstrap 5を用いたOmeka Sテーマの不具合を修正しました。

【Omeka S テーマ開発】Bootstrap 5を用いたOmeka Sテーマの不具合を修正しました。

Bootstrap 5を用いたOmeka Sテーマを以下で公開しています。 https://github.com/ldasjp8/Omeka-S-theme-Bootstrap5 本テーマの使い方は、以下の記事で紹介しています。 そして上記の記事に記載している通り、これまで表示スタイルを指定するオプションで不具合が生じていました。この不具合について、以下のコミットにより修正しました。 https://github.com/ldasjp8/Omeka-S-theme-Bootstrap5/commit/3b456277fe4f75cdcc0044a0fe0df7e7e2e14156 本テーマを使用されている方の参考になりましたら幸いです。

Amazon LightsailでOmeka Sの初期設定を行うscript

Amazon LightsailでOmeka Sの初期設定を行うscript

Amazon LightsailでOmeka Sの初期設定を行うscriptを作成しました。 Amazon Lightsailを用いてOmeka Sを使用する際の参考になりましたら幸いです。 # 変数 OMEKA_PATH=/home/bitnami/htdocs/omeka-s ## ハイフンは含めない DBNAME=omeka_s VERSION=3.2.3 ############# set -e mkdir $OMEKA_PATH # Omekaのダウンロード wget https://github.com/omeka/omeka-s/releases/download/v$VERSION/omeka-s-$VERSION.zip unzip -q omeka-s-$VERSION.zip mv omeka-s/* $OMEKA_PATH # .htaccessの移動 mv omeka-s/.htaccess $OMEKA_PATH # 不要なフォルダの削除 rm -rf omeka-s rm omeka-s-$VERSION.zip # 元からあったindex.htmlを削除(もし存在すれば) if [ -e $OMEKA_PATH/index.html ]; then rm $OMEKA_PATH/index.html fi # データベースの作成 cat <<EOF > sql.cnf [client] user = root password = $(cat /home/bitnami/bitnami_application_password) host = localhost EOF mysql --defaults-extra-file=sql.cnf -e "create database $DBNAME"; # Omeka Sの設定 cat <<EOF > $OMEKA_PATH/config/database.ini user = root password = $(cat bitnami_application_password) dbname = $DBNAME host = localhost EOF sudo chown -R daemon:daemon $OMEKA_PATH/files sudo apt install imagemagick -y

Omeka S IIIF ServerのIIIFマニフェスト(version 2)の出力内容

Omeka S IIIF ServerのIIIFマニフェスト(version 2)の出力内容

概要 Omeka SでIIIFマニフェストを配信するためのモジュールとして、IIIF Serverがあります。 https://github.com/Daniel-KM/Omeka-S-module-IiifServer 本記事では、このIIIFマニフェスト(特に、IIIF Presentation API version 2)の出力内容について確認します。 例 以下、https://shared.ldas.jp/omeka-sというURLで公開しているOmeka Sにおいて、IDtest-111のアイテムに関するIIIFマニフェストの例です。 { "@context": "http://iiif.io/api/presentation/2/context.json", "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/manifest", "@type": "sc:Manifest", "label": "Sample Item", "thumbnail": { "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0001.tif/full/!200,200/0/default.jpg", "@type": "dctypes:Image", "format": "image/jpeg", "width": 200, "height": 200 }, "license": "https://shared.ldas.jp/omeka-s/s/test/page/reuse", "attribution": "サンプル機関", "related": { "@id": "https://shared.ldas.jp/omeka-s", "format": "text/html" }, "seeAlso": { "@id": "https://shared.ldas.jp/omeka-s/api/items/1270", "format": "application/ld+json" }, "metadata": [ { "label": "Title", "value": "Sample Item" }, { "label": "Identifier", "value": "test-111" } ], "sequences": [ { "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/sequence/normal", "@type": "sc:Sequence", "label": "Current Page Order", "viewingDirection": "left-to-right", "canvases": [ { "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/canvas/p1", "@type": "sc:Canvas", "label": "1", "thumbnail": { "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0001.tif/full/!200,200/0/default.jpg", "@type": "dctypes:Image", "format": "image/jpeg", "width": 200, "height": 200 }, "width": 6401, "height": 4810, "images": [ { "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/annotation/p0001-image", "@type": "oa:Annotation", "motivation": "sc:painting", "resource": { "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0001.tif/full/full/0/default.jpg", "@type": "dctypes:Image", "format": "image/jpeg", "width": 6401, "height": 4810, "service": { "@context": "http://iiif.io/api/image/2/context.json", "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0001.tif", "profile": "http://iiif.io/api/image/2/level1.json" } }, "on": "https://shared.ldas.jp/omeka-s/iiif/test-111/canvas/p1" } ] }, { "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/canvas/p2", "@type": "sc:Canvas", "label": "2枚目", "thumbnail": { "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0002.tif/full/!200,200/0/default.jpg", "@type": "dctypes:Image", "format": "image/jpeg", "width": 200, "height": 200 }, "width": 6401, "height": 4810, "images": [ { "@id": "https://shared.ldas.jp/omeka-s/iiif/test-111/annotation/p0002-image", "@type": "oa:Annotation", "motivation": "sc:painting", "resource": { "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0002.tif/full/full/0/default.jpg", "@type": "dctypes:Image", "format": "image/jpeg", "width": 6401, "height": 4810, "service": { "@context": "http://iiif.io/api/image/2/context.json", "@id": "https://iiif.dl.itc.u-tokyo.ac.jp/iiif/kunshujou/A00_6010/001/001_0002.tif", "profile": "http://iiif.io/api/image/2/level1.json" } }, "on": "https://shared.ldas.jp/omeka-s/iiif/test-111/canvas/p2" } ], "metadata": [ { "label": "Title", "value": "2枚目" } ] } ] } ] } 以下、それぞれのタイプについて説明します。 ...

[Omeka S]日本語検索の不具合を回避するFoundation Sテーマを作成しました。

[Omeka S]日本語検索の不具合を回避するFoundation Sテーマを作成しました。

以下の記事にまとめた通り、Omeka Sの日本語による全文検索について、デフォルト設定では一部不具合が生じます。 https://nakamura196.hatenablog.com/entry/2022/03/07/083004 上記の記事において、この不具合への簡易な対応方法である「対策2」を紹介しています。 今回はOmeka Sのテーマの一つである「Foundation S」に対して、この対策を適用したリポジトリを作成しました。 https://github.com/nakamura196/foundation-s 「Foundation S」テーマをお使いで、日本語検索の不具合でお困りの方の参考になれば幸いです。

[Omeka S]Bulk Importの不具合対応(ソースコードからのインストール方法を含む)

[Omeka S]Bulk Importの不具合対応(ソースコードからのインストール方法を含む)

概要 Omeka Sでのデータ一括登録を行うためのモジュールの一つであるBulk Importについて、2022年8月21日現在の最新版であるver.3.3.33.4において不具合が含まれるようです。 具体的には以下のissueで、mediaの一括登録時に不具合が生じます。 https://gitlab.com/Daniel-KM/Omeka-S-module-BulkImport/-/issues/11 この不具合について、以下のcommitで既に対応済みです。 https://github.com/Daniel-KM/Omeka-S-module-BulkImport/commit/7d568a97f08459e22e7c5fbaa8163b17ab4ba805 しかし、本日時点において、まだRelease版は公開されていないため、ソースコードからのインストールを行う必要があります。 ソースコードからのインストール 以下の記事も参考にしてください。 ここでは、改めてインストール方法を説明します。 ソースコードのダウンロード Omeka Sのmodulesディレクトリに移動して、ソースコードをダウンロードします。必要に応じて、ダウンロード済みのBulkImport関連ファイルおよびフォルダを削除します。 cd modules rm -rf BulkImport* git clone https://github.com/Daniel-KM/Omeka-S-module-BulkImport.git BulkImport composer 次にcomposer installを行います。 cd BulkImport composer install --no-dev 以下のように、composerが見つからない場合があります。 composer: Command not found. 簡単な対応方法として、以下を実行します。 curl -sS https://getcomposer.org/installer | php php composer.phar install --no-dev 上記により、モジュールのインストールは完了です。 Omeka Sの管理画面での操作 モジュールのアップグレード ブラウザから、管理画面のModules一覧ページにアクセスします。 http://xxx.xyz/omeka-s/admin/module この一覧からBulk Importを確認し、「Upgrade」ボタンが表示されている場合には、アップグレードしてください。 Import時の注意 基本的な操作方法に変更はありませんが、以下のStart import画面において、「Identifier to use for linked resources or update」の変更が必要な場合があります。 以下のmetada.csvおよびimage.csvを使用することを想定します。 https://gist.github.com/nakamura196/fa50591426c43eec319e71bfdb8b6460 以下、登録画面です。 ...

Omeka ClassicをHeadless CMSとして使用してみる。

Omeka ClassicをHeadless CMSとして使用してみる。

概要 Omeka SおよびOmeka Classicは、デジタルアーカイブ構築および人文(情報)学研究において、とても便利なツールです。 https://omeka.org/ REST APIを標準搭載し、モジュールおよびプラグインの追加などによる高い拡張性を持ちます。またIIIF関連ツール、翻刻支援ツール、時空間情報を取り扱うツールなど、さまざまな既存資産を利用することができます。 一方、サイトの見た目を変更するテーマ開発などについては、PHPおよびOmekaに対する知識が求められ、比較的難易度が高いと(個人的に)感じています。この点について、昨今はバックエンドとフロンドエンドを分離したHeadless CMSという使い方も普及しつつあります。 そこでOmeka ClassicをHeadless CMSとして使用し、Nuxt 3を用いたフロントエンド開発を試みました。Omekaの活用方法の一例として参考になれば幸いです。 Omeka Classicの準備 APIの有効化 以下を参考に、APIの有効化を行います。 https://omeka.org/classic/docs/Admin/Settings/API_Settings/ Access-Control-Allow-Originヘッダーの追加 .htaccessファイルにAccess-Control-Allow-Originヘッダーを追加します。 Header set Access-Control-Allow-Origin "*" # 追加 # Omeka .htaccess: Apache configuration file # This file is required for Omeka to function correctly. # --------------- # # Error Reporting # ... Omeka ClassicのAPI 以下のページにAPIがまとめられています。 https://omeka.readthedocs.io/en/latest/Reference/api/index.html 例えば、以下のようなURLから、アイテムに対する簡易な検索が可能です。(Omeka Classicでは詳細な検索ができないようです。本格的な利用にあたっては、Omeka Sを使用する必要がありそうです。) https://omeka.aws.ldas.jp/api/items?search=被 フロントエンドの開発 今回は勉強を兼ねて、Nuxt 3とVuetify 3を使ってみました。2022-07-08時点において、アプリの完成度は大変低いが、Omeka ClassicをHeadless CMSとして利用し得ることを確認できました。 https://omekac.netlify.app/ まとめ Omeka(SおよびClassic)を用いたシステム開発における一例として、参考になりましたら幸いです。 ...

Omeka ClassicのIIIF Toolkitを用いたアノテーションの一括登録方法

Omeka ClassicのIIIF Toolkitを用いたアノテーションの一括登録方法

はじめに 備忘録的な意味合いの強い記事です。わかりにくい点も多々あるかと思いますが、ご容赦ください。 特に以下で紹介されている、IIIF Toolkitが使用するアノテーションエンドポイントの使い方について、参考になりましたら幸いです。 https://github.com/utlib/IiifItems/wiki/The-Mirador-Omeka-Annotator-Endpoint 概要 Omeka ClassicのIIIF Toolkitプラグインは、IIIFマニフェストファイルの読み込みや、画像へのアノテーションを行うことができるとても便利なツールです。 https://zenn.dev/nakamura196/books/2a0aa162dcd0eb/viewer/b37a8c 今回は、Omeka Classicとは独立して作成されたアノテーションデータを持っていることを前提として、それらのアノテーションをOmeka Classicに一括登録する方法を記事にします。 以下のGooble Colabのノートブックを用意しています。参考になりましたら幸いです。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/Omeka_ClassicのIIIF_Toolkitを用いたアノテーションの一括登録方法.ipynb 使い方 事前準備0 上記のノートブックを実行する前に、Omeka ClassicのAPIの有効化、およびAPIキーの発行を行う必要があります。 Omeka ClassicのAPIの有効化 以下に示すように、デフォルトではOFFになっているAPIの有効化を行います。 APIキーの発行 非公開のアイテムについては、APIキーを用いたアクセスが必要になるため、ユーザ毎にAPIキーを発行します。 ノートブックの実行 上記のノートブックに従って、Omeka ClassicのAPIを用いたデータ登録を行います。 結果 以下に示すように、アノテーションが一括登録されていることが確認できます。 まとめ Omeka ClassicのIIIF Toolkitが提供するAPIの扱い方など、参考になりましたら幸いです。

Amazon Lightsailを用いたOmeka Classicサイトの構築(独自ドメイン+SSL化を含む)

Amazon Lightsailを用いたOmeka Classicサイトの構築(独自ドメイン+SSL化を含む)

概要 Amazon Lightsailを用いたOmkea Sの構築方法を以下の記事にまとめました。 今回はAmazon Lightsailを用いたOmeka Classicの構築法方について紹介します。Omeka Classicは以下の本で紹介しているように、IIIF Toolkitを用いたアノテーション付与環境の構築などに有用です。 https://zenn.dev/nakamura196/books/2a0aa162dcd0eb Amazon Lightsail インスタンスの作成 以下のページにアクセスします。 https://lightsail.aws.amazon.com/ls/webapp/home/instances そして、以下の「Create Instance」ボタンをクリックします。 「Select a blueprint」において、「LAMP (PHP 7)」を選択します。 「Choose your instance plan」において、インスタンスプランを選択します。今回は最も低価格のプランを選びました。 起動したら、以下のインスタンスのページにアクセスして、「Connect using SSH」ボタンを押します。 以下の画面が表示されます。 Linux ip-172-26-9-30 4.19.0-20-cloud-amd64 #1 SMP Debian 4.19.235-1 (2022-03-17) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. ___ _ _ _ | _ |_) |_ _ _ __ _ _ __ (_) | _ \ | _| ' \/ _` | ' \| | |___/_|\__|_|_|\__,_|_|_|_|_| *** Welcome to the LAMP packaged by Bitnami 7.4.29-0 *** *** Documentation: https://docs.bitnami.com/aws/infrastructure/lamp/ *** *** https://docs.bitnami.com/aws/ *** *** Bitnami Forums: https://community.bitnami.com/ *** bitnami@ip-172-26-9-30:~$ インスタンス内での作業 ファイルの移動 まず、必要なファイルのダウンロードや移動を行います。 ...

AWS Copilotを用いたOmeka Sデータの定期バックアップ

AWS Copilotを用いたOmeka Sデータの定期バックアップ

概要 先日、Omeka Sのデータをダウンロードするプログラムを作成しました。 今回は、AWS Copilotを使用して、上記のプログラムを定期的に実行してみます。 AWS Copilotのインストール 以下を参考にしてください。 https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/AWS_Copilot.html ファイルの準備 任意の場所で、Dockerfile、main.sh、.envの3ファイルを作成します。 Dockerfile FROM python:3 COPY *.sh . CMD sh main.sh main.sh set -e export output_dir=../docs # Omeka Sからデータをダウンロードするプログラム export repo_tool=https://github.com/nakamura196/omekas_backup.git dir_tool=tool dir_dataset=dataset # フォルダが存在したら if [ -d $dir_tool ]; then rm -rf $dir_tool rm -rf $dir_dataset fi # clone git clone --depth 1 $repo_tool $dir_tool git clone --depth 1 $repo_dataset $dir_dataset # requirements.txt cd $dir_tool pip install --upgrade pip pip install -r requirements.txt # 実行 cd src sh main.sh # copy odir=../../$dir_dataset/$subdir mkdir -p $odir cd $odir cp -r ../../$dir_tool/data . cp -r ../../$dir_tool/docs . # git git status git add . git config user.email "$email" git config user.name "$name" git commit -m "update" git push # 後処理 cd ../../ rm -rf $dir_tool rm -rf $dir_dataset .env api_url=https://dev.omeka.org/omeka-s-sandbox/api github_url=https://<個人アクセストークン>@github.com/<ユーザ名>/<リポジトリ名>.git username=nakamura email=nakamura@example.org dirname=dev 以下、説明です。 ...

Omeka Classicのデータをダウンロードするプログラムを作成しました。

Omeka Classicのデータをダウンロードするプログラムを作成しました。

Omeka Classicのデータをダウンロードするプログラムを作成しました。以下のリポジトリで公開しています。 https://github.com/nakamura196/omekac_backup また、本プログラムの実行例を示すGoogle Colabを作成しました。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/omeka_classic_backup.ipynb 上記のチュートリアルでは、以下のOmeka Classicのサイトを対象に、データのダウンロードを実行します。 https://jinmoncom2017.omeka.net/ 実行後、docsフォルダにapiのダウンロード結果が出力されます。 上記のデータをバックアップ等にご利用いただけます。Omeka Classicを利用される際の参考になりましたら幸いです。

Omeka Sのデータをダウンロードするプログラムを作成しました。

Omeka Sのデータをダウンロードするプログラムを作成しました。

Omeka Sのデータをダウンロードするプログラムを作成しました。以下のリポジトリで公開しています。 https://github.com/nakamura196/omekas_backup また、本プログラムの実行例を示すGoogle Colabを作成しました。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/omekas_backup.ipynb 上記のチュートリアルでは、以下のOmeka Sのサンドボックスを対象に、データのダウンロードを実行します。 https://omeka.org/s/download/#sandbox 実行後、docsフォルダにapiのダウンロード結果、dataフォルダにそれらをまとめたMS Excelファイルが出力されます。 上記のデータをバックアップ等にご利用いただけます。Omeka Sを利用される際の参考になりましたら幸いです。

【Omeka S モジュール】IIIF ServerモジュールでImage APIを使用しない方法

【Omeka S モジュール】IIIF ServerモジュールでImage APIを使用しない方法

概要 IIIFマニフェストの生成を行うOmeka Sのモジュール「IIIF Server」において、Image APIを使用しない設定を行うことができます。これにより、レンタルサーバなどのリソースが限られた環境において、IIIFマニフェストの配信などが容易となります。 以前、以下の記事を執筆しました。 https://nakamura196.hatenablog.com/entry/2021/07/22/171657 2022年5月時点において、モジュールのアップデートにより、設定の方法が変わりましたので、設定方法をあらためて記事にします。なお、Image APIを使用しないメリットやデメリットについては、上記の記事をご参照ください。 設定方法 確認した環境は以下です。 Omeka S version 3.2.0 IIIF Server version 3.6.6.6 モジュールの一覧画面から「IIIF Server」をみつけ、「設定」ボタンをクリックします。 遷移先のページで最下部に移動すると、「External image server」 > 「Default IIIF image api version」という設定項目があります。ここで以下に示すように、「No image server」のオプションを選択することにより、Image APIを使用しないマニフェストファイルの生成が可能になります。 まとめ レンタルサーバなどのリソースが限られた環境でOmekaを運用しており、タイル画像の生成に時間がかかってしまう場合などに、本記事が参考になりましたら幸いです。

【Omeka S Theme】Bootstrap 5テーマのMappingモジュール一部対応

【Omeka S Theme】Bootstrap 5テーマのMappingモジュール一部対応

概要 以下のBootstrap 5を用いたOmeka Sのテーマについて、後述するように、Mappingモジュールをインストールした際、map-browseページで表示崩れが発生していました。 https://github.com/ldasjp8/Omeka-S-theme-Bootstrap5 上記について、以下のように修正しました。 https://github.com/ldasjp8/Omeka-S-theme-Bootstrap5/commit/d60c93ff6d79b5505d25ef26e31e3776f55199d4 修正前 地理関係のフォームの表示が崩れていました。 修正後 地理関係のフォームの表示崩れを修正しました。 まとめ まだまだ表示が崩れてしまうページやモジュールがありますが、順次対応していきたいと思います。

【Omeka S】IIIF対応の複数ビューアを設置する「IIIF Viewers」モジュールの使い方

【Omeka S】IIIF対応の複数ビューアを設置する「IIIF Viewers」モジュールの使い方

概要 Omeka SにIIIF マニフェスト URI のアイコンとビューアを表示するためのモジュール「IIIF Viewers」を開発・公開しています。本モジュールの開発にあたっては、国文学研究資料館にご協力いただきました。 https://github.com/omeka-j/Omeka-S-module-IiifViewers 以下、本モジュールの使い方について説明します。 インストール Omeka Sにおける標準的な方法でインストール可能です。 具体的には、まず以下の「Releases」欄のリンクをクリックします。 次に、以下のリンクをクリックすることで、zipファイルをダウンロードできます。ダウンロードしたファイルを展開して、インストール済みのOmeka Sの「modules」フォルダに展開したフォルダ「IiifViewers」を配置してください。 本記事執筆時点では、以下のURLで最新版をダウンロードすることができます。 https://github.com/omeka-j/Omeka-S-module-IiifViewers/releases/download/0.0.5/IiifViewers.zip 使い方 インストール後、以下の設定画面に遷移します。本モジュールで使用する各種IIIF対応ビューアへのリンクを指定することができます。(デフォルト設定のままでも問題ありません。) また、画面左部の「モジュール > IIIF Viewers」のリンクをクリックすることで、各ビューアのアイコンを指定することができます。 カスタマイズ例 たとえば、「TIFY」を設定している箇所について、神崎正英氏が開発されている「Image Annotator」に変更してみます。 https://www.kanzaki.com/works/2016/pub/image-annotator まず以下の画面から、ロゴを変更します。 次に、モジュールの一覧画面から、以下の「設定」ボタンを選択します。 そして、「TIFY」のURLの値を以下に変更します。 http://www.kanzaki.com/works/2016/pub/image-annotator?u= 結果、以下のように追加したアイコンが表示され、アイコンをクリックすると、Image Annotatorで画像を閲覧することができます。 まとめ 今後、任意の数のIIIF対応ビューアを設定できるように修正したいと思います。 新機能やバグ修正のご要望などございましたらお知らせください。またプルリクエストも歓迎いたします。 ご活用いただけますと幸いです。

Omeka SにDC-NDL(国立国会図書館ダブリンコアメタデータ記述)を語彙として登録する

Omeka SにDC-NDL(国立国会図書館ダブリンコアメタデータ記述)を語彙として登録する

Omeka SにDC-NDL(国立国会図書館ダブリンコアメタデータ記述)を語彙として登録する方法です。 まず、以下のように、「語彙の一覧」を選択します。 次に、右上の「人間が理解できる語彙のタイトル。」ボタンをクリックします。(こちらは翻訳データが間違っています。今後修正したいと思います。) そして、以下の画面に示すように、必要な情報を入力します。 具体的な情報は以下です。 大項目 小項目 値 備考 基本情報 ラベル DC-NDL この値は任意です。 基本情報 名前空間URI http://ndl.go.jp/dcndl/terms/ 基本情報 名前空間の接頭語 dcndl ファイル 語彙URL https://www.ndl.go.jp/jp/dlib/standards/meta/2020/12/ndl-terms.rdf 結果、以下のように、DC-NDLが語彙として利用可能になります。 他のRDFスキーマについても同様の方法で登録可能です。参考になりましたら幸いです。

gdriveを用いたOmeka Sの簡易バックアップ

gdriveを用いたOmeka Sの簡易バックアップ

概要 gdriveを用いたOmeka Sの簡易バックアップの方法についてのメモです。 ここでは例として、Amazon Lightsailで起動したLAMP環境にインストールしたOmeka Sを対象とします。インストール方法は以下をご確認ください。 gdriveのインストール 今回は、Google Driveにファイルをバックアップします。そのため、gdriveを使用します。以下の記事を参考に、gdriveをインストールしてください。 backup用のスクリプトを用意する $HOMEディレクトリにおいて、例えばbackup.shというファイルを作成します。ファイルの内容の一例は以下です。 # 設定値 ## Omeka Sのインストールディレクトリ OMEKA_DIRNAME=htdocs OUTPUT_DIRNAME=`date +%y-%m-%d` ## MySQLのユーザ名。 USERNAME=root ## MySQLのパスワード。以下のコマンドで確認できます。 ## cat /home/bitnami/bitnami_application_password PASSWORD=<パスワード> ## Omeka Sのデータベース名。例:omekas DATABASE_NAME=<データベース名> FOLDER_ID=<GoogleドライブのフォルダID> # 出力フォルダの作成(日付に基づくフォルダ名を作成) mkdir -p "$OUTPUT_DIRNAME" # sqlのバックアップ mysqldump -u $USERNAME -p$PASSWORD $DATABASE_NAME > $OUTPUT_DIRNAME/dump.sql # omeka関連フォルダの圧縮 zip -q $OUTPUT_DIRNAME/$OMEKA_DIRNAME -r $OMEKA_DIRNAME # Google Driveへのアップロード ./go/bin/gdrive upload --recursive --parent $FOLDER_ID $OUTPUT_DIRNAME # 出力フォルダの削除 rm -rf $OUTPUT_DIRNAME 上記のファイルを作成後、以下のコマンドを実行します。 ...

Amazon Lightsailを用いたOmeka Sサイトの構築(独自ドメイン+SSL化を含む)

Amazon Lightsailを用いたOmeka Sサイトの構築(独自ドメイン+SSL化を含む)

更新履歴 2022/09/08 スクリプトの記述を最新化しました。 概要 Amazon Lightsailは以下のような説明がなされています。 Amazon Lightsail は、コンテナなどのクラウドリソースを予測可能な低価格で簡単に管理できる、使いやすい仮想プライベートサーバー (VPS) です。 今回は、このAmazon Lightsailを用いたOmeka Sの構築方法を紹介します。合わせて、データベースの公開にあたり一般的に求められる「独自ドメイン」「SSL」設定についても扱います。 Amazon Lightsail インスタンスの作成 以下のページにアクセスします。 https://lightsail.aws.amazon.com/ls/webapp/home/instances そして、以下の「Create Instance」ボタンをクリックします。 「Select a blueprint」において、「LAMP (PHP 7)」を選択します。 「Choose your instance plan」において、インスタンスプランを選択します。今回は最も低価格のプランを選びました。 起動したら、以下のインスタンスのページにアクセスして、「Connect using SSH」ボタンを押します。 以下の画面が表示されます。 Linux ip-172-26-5-202 4.19.0-19-cloud-amd64 #1 SMP Debian 4.19.232-1 (2022-03-07) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. ___ _ _ _ | _ |_) |_ _ _ __ _ _ __ (_) | _ \ | _| ' \/ _` | ' \| | |___/_|\__|_|_|\__,_|_|_|_|_| *** Welcome to the LAMP packaged by Bitnami 7.4.28-14 *** *** Documentation: https://docs.bitnami.com/aws/infrastructure/lamp/ *** *** https://docs.bitnami.com/aws/ *** *** Bitnami Forums: https://community.bitnami.com/ *** bitnami@ip-172-26-5-202:~$ インスタンス内での作業 ファイルの移動 まず、必要なファイルのダウンロードや移動を行います。 ...