ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
Omeka Sへの画像一括登録用プログラム

Omeka Sへの画像一括登録用プログラム

概要 Omeka Sでメタデータ(Omeka用語でアイテム)や画像(Omeka用語でメディア)を一括する場合、Bulk Importモジュールなどを使用することが多いです。 https://github.com/Daniel-KM/Omeka-S-module-BulkImport 一方、Omeka Sが提供するREST APIを介して登録することも可能です。 今回は、本APIを用いた画像の一括登録用プログラムを作成しましたので、その紹介です。 開発した理由 最新のBulk Importモジュールでは、エラーが発生した際に、停止するか継続するか等を選択できますが、古いバージョンのモジュールでは、この設定ができません。そのため、画像を一括登録した際に、画像の取得に失敗する都度、その画像が抜けてしまうケースがありました。 そこで、上記への対応のため、APIを用いた画像の一括登録用プログラムを作成しました。 使い方 以下のノートブックでサンプルをご確認いただけます。 https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/Omeka_Sへの画像一括登録用プログラム.ipynb まず、登録用の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以外での画像の一括登録方法として、参考になりましたら幸いです。

【Omeka S モジュール紹介】BulkExport:データの一括エクスポート

【Omeka S モジュール紹介】BulkExport:データの一括エクスポート

概要 Omeka Sでデータの一括エクスポートを行うためのモジュールとして、BulkExportがあります。 https://github.com/Daniel-KM/Omeka-S-module-BulkExport 本記事では、本モジュールの使い方について説明します。 インストール 他の一般的なモジュールと同様、標準的な方法でインストールできます。 以下のURLから最新のzipファイルをダウンロードします。 https://github.com/Daniel-KM/Omeka-S-module-BulkExport/releases インストール時に、以下のように、Logモジュールを事前にインストールする必要があります。 使い方 管理画面左部の「BulkExport」をクリックし、エクスポートアイコンをクリックします。 次の画面でエスクポート内容の設定を行うことができます。デフォルトのままでもかまいません。 続く画面でエクポートを実行すると、以下のように、エクスポートの結果を確認できます。Get fileボタンから、エクスポート結果をダウンロードすることができます。 エクスポート結果の例は以下です。 o:id o:resource_template o:resource_class o:is_public o:item_set[o:id] o:item_set[dcterms:title] o:media[o:id] o:media[file] dcterms:title dcterms:rights dcterms:isPartOf 1 dctype:Image true parent 3 2 dctype:Image true child http://creativecommons.org/licenses/by/4.0/ 1 3 dctype:Collection true top データ数が多い場合 データ数が多い場合は、以下のように、バックグラウンドジョブとして実行されます。ジョブが完了すると、上記のダウンロードボタンが表示されます。 まとめ Omeka Sに格納されたデータの一括エクスポートを行う場合の参考になりましたら幸いです。 ...

Amazon LightsailでOmeka Sの初期設定を行うscript(Easy Adminモジュールの追加)

Amazon LightsailでOmeka Sの初期設定を行うscript(Easy Adminモジュールの追加)

以下の記事で紹介した「Amazon LightsailでOmeka Sの初期設定を行うscript」に対して、テーマやモジュールを簡単に追加できる「Easy Admin」を追加し、また関連ディレクトリの権限を修正したスクリプトを作成しました。 参考になりましたら幸いです。 # 変数 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 # Module cd $OMEKA_PATH/modules ## 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 sudo chown -R daemon:daemon $OMEKA_PATH/files sudo chown -R daemon:daemon $OMEKA_PATH/modules sudo chown -R daemon:daemon $OMEKA_PATH/themes

【Omeka S モジュール開発】FixCjkSearch: Omeka Sの日本語による全文検索の不具合修正

【Omeka S モジュール開発】FixCjkSearch: Omeka Sの日本語による全文検索の不具合修正

Omeka Sの標準機能では、日本語による全文検索がうまくいきません。以下の記事で、不具合の内容を説明しています。 https://nakamura196.hatenablog.com/entry/2022/03/07/083004 上記記事で、いくつかの対応策を示しましたが、それらの対応策を包含したモジュールを作成しました。 https://github.com/nakamura196/Omeka-S-module-FixCjkSearch 根本的な解決はできていないのですが、Omeka Sで日本語資料を扱う際のお役に立てば幸いです。

【Omeka S モジュール紹介】Folksonomy:ソーシャルタギング

【Omeka S モジュール紹介】Folksonomy:ソーシャルタギング

概要 Omeka Sでソーシャルタギングを実現するためのモジュールとして、Folksonomyがあります。 https://omeka.org/s/modules/Folksonomy/ 本記事では、本モジュールの使い方について説明します。 インストール 他の一般的なモジュールと同様、標準的な方法でインストールできます。 設定 インストール後、以下のような設定画面が表示されます。特に、「Allow public to tag」を有効にすることで、訪問者によるタギングが可能になります。また、「Require approbation for public tags」を有効にすることで、管理者による承認のフローを導入することができます。 訪問者 アイテムの詳細画面に以下のようなタグの登録フォームが表示されます。 複数のタグを入力する場合、カンマで区切って入力します。 「terms of use」とライセンスに同意して、「Tag it!」を押します。すると、以下のようなアラートが表示されます。承認後に表示されます、と記載されています。 管理者 「Folksonomy」 > 「Taggings」のページから、タギングの一覧を閲覧できます。 「?」マークをクリックすることで、「承認」または「却下」を切り替えることができます。 承認されたタグは公開ページに表示され、却下されたタグは表示されていません。 まとめ Omeka Sでソーシャルタギングなどを行う際の参考になりましたら幸いです。また同様の機能を実装する際の参考にもなりましたら幸いです。

Omeka S 4.0.0 release candidateが公開されました。

Omeka S 4.0.0 release candidateが公開されました。

概要 Omeka S 4.0.0 release candidateが公開されました。 https://forum.omeka.org/t/omeka-s-4-0-0-release-candidate/16272 Amazon Lightsailで試してみました。以下でお試しいただけます。 http://35.172.220.59/omeka-s/ インストール 以下のスクリプトで初期セットアップを行うことができます。 # 変数 OMEKA_PATH=/home/bitnami/htdocs/omeka-s ## ハイフンは含めない DBNAME=omeka_s VERSION=4.0.0-rc ############# 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 2022-12-15時点では上記に加えて、以下の作業が必要でした。 ...

Omeka SのAPIへのアクセス制限

Omeka SのAPIへのアクセス制限

Omeka Sでは、標準でAPIを提供しており、例えば以下のようなURLから、リソースの取得などが可能です。 https://dev.omeka.org/omeka-s-sandbox/api/items 便利な機能である一方、APIを提供したくないケースも考えられます。その場合には、Omeka Sを設定したディレクトリの直下にある.htaccessについて、以下のような記述を追記することで、アクセス制限をかけることができます。 RewriteCond %{REQUEST_URI} ^.*/api RewriteRule ^(.*)$ – [F,L] 具体的には、以下のような形です。 SetEnv APPLICATION_ENV "production" # SetEnv APPLICATION_ENV "development" RewriteEngine On RewriteCond %{REQUEST_URI} ^.*/api RewriteRule ^(.*)$ – [F,L] # The following rule tells Apache that if the requested filename # exists, simply serve it. RewriteCond %{REQUEST_FILENAME} -f RewriteRule !\.(php[0-9]?|phtml|phps)$ - [NC,C] RewriteRule !(?:^|/)\.(?!well-known(?:/.*)?$) - [C] RewriteRule .* - [L] ... Omeka Sのアクセス制限について、参考になりましたら幸いです。

【Omkea S モジュール紹介】Mappingモジュール

【Omkea S モジュール紹介】Mappingモジュール

概要 Omeka Sで地図と連携するためのモジュール「Mapping」の紹介です。 https://omeka.org/s/modules/Mapping/ インストール Omeka Sの一般的な方法で、本モジュールをインストールできます。 位置情報の付与 アイテムの編集画面で、「マッピング」タブから位置情報を付与します。 公開サイトで、地図を用いた検索や表示が可能です。

【Omkea S モジュール紹介】Timelineモジュール

【Omkea S モジュール紹介】Timelineモジュール

概要 Omeka Sでタイムラインを作成するモジュール「Timeline」の紹介です。 https://omeka.org/s/modules/Timeline/ インストール Omeka Sの一般的な方法で、本モジュールをインストールできます。以下、インストール方法の例です。 cd omeka-s/modules wget https://github.com/Daniel-KM/Omeka-s-module-Timeline/releases/download/3.4.16.3/Timeline-3.4.16.3.zip unzip Timeline-3.4.16.3.zip 使い方 本モジュールを使用するには、サイトでページを作成する必要があります。以下の例では、「Timeline」という名前のページを作成しています。 そして画面右部の「新規ブロックを追加」からTimelineを選択します。デフォルトでは、dcterms:dateに格納された値を対象に、年表へのマッピングを行います。 そこで、アイテムのdcterms:dateフィールドに日付の値を入れてみます。 その結果、以下のように、年表を用いたアイテムの検索が可能になります。 まとめ 年表を用いたアイテムの可視化の参考になりましたら幸いです。

【Omeka S モジュール紹介】IIIF Searchモジュール

【Omeka S モジュール紹介】IIIF Searchモジュール

概要 IIIF Search は、全文検索のためのIIIF Content Search APIを追加する Omeka S 用モジュールです。 特に、日本語テキストを扱うための改修を加えた以下のモジュールを対象に、その使用方法を紹介します。 https://github.com/nakamura196/Omeka-S-module-IiifSearch インストール githubからソースコードをcloneします。omeka-sは適宜読み替えてください。 cd omeka-s/modules git clone https://github.com/nakamura196/Omeka-S-module-IiifSearch.git IiifSearch githubからインストールする場合には、上記のように、フォルダ名を対象モジュール名に変更する必要がある点に注意が必要です。 インストール後、検索クエリとして使用する文字列の下限を設定するフォームが表示されます。日本語テキストを扱い場合には、1などに設定しておくことをお勧めします。 ALTO形式のxmlファイルの作成 OCR結果を記述するためのフォーマットの一つであるALTO形式のXMLファイルを作成する必要があります。 https://www.loc.gov/standards/alto/techcenter/elementSet/index.html ALTO形式のXMLファイルの作成にあたっては、以下の記事などが参考になります。 例えば、以下の画像ファイルを対して、 以下のようなxmlファイルが生成できます。 <?xml version="1.0" encoding="utf-8"?> <alto xmlns="http://www.loc.gov/standards/alto/ns-v4#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:schemaLocation="http://www.loc.gov/standards/alto/ns-v3# http://www.loc.gov/standards/alto/alto.xsd"> <Description> <MeasurementUnit>pixel</MeasurementUnit> <sourceImageInformation> <fileName>alto_test.png</fileName> </sourceImageInformation> <OCRProcessing ID="IdOcr"> <ocrProcessingStep> <processingSoftware> <softwareName>tesseract 4.0.0-beta.1</softwareName> </processingSoftware> </ocrProcessingStep> </OCRProcessing> </Description> <Layout> <Page ID="page_1" PHYSICAL_IMG_NR="1" HEIGHT="841" WIDTH="595"> <PrintSpace HEIGHT="841" WIDTH="595" VPOS="0" HPOS="0"> ... <ComposedBlock ID="block_1_4" HEIGHT="23" WIDTH="446" VPOS="205" HPOS="59"> <TextBlock ID="par_1_4" HEIGHT="23" WIDTH="446" VPOS="205" HPOS="59" LANG="jpn"> <TextLine ID="line_1_4" HEIGHT="23" WIDTH="446" VPOS="205" HPOS="59"> <String ID="word_1_11" CONTENT="Google" HEIGHT="20" WIDTH="70" VPOS="208" HPOS="59" WC="0.89"/> <String ID="word_1_12" CONTENT="Colab" HEIGHT="16" WIDTH="58" VPOS="208" HPOS="135" WC="0.93"/> <String ID="word_1_13" CONTENT="で" HEIGHT="841" WIDTH="595" VPOS="0" HPOS="0" WC="0.93"/> <String ID="word_1_14" CONTENT="Tesseract" HEIGHT="16" WIDTH="117" VPOS="208" HPOS="195" WC="0.91"/> <String ID="word_1_15" CONTENT="を" HEIGHT="19" WIDTH="18" VPOS="206" HPOS="314" WC="0.93"/> <String ID="word_1_16" CONTENT="動か" HEIGHT="19" WIDTH="41" VPOS="206" HPOS="335" WC="0.93"/> <String ID="word_1_17" CONTENT="す" HEIGHT="19" WIDTH="19" VPOS="206" HPOS="378" WC="0.93"/> <String ID="word_1_18" CONTENT="(日" HEIGHT="21" WIDTH="25" VPOS="205" HPOS="413" WC="0.96"/> <String ID="word_1_19" CONTENT="本" HEIGHT="20" WIDTH="20" VPOS="206" HPOS="442" WC="0.93"/> <String ID="word_1_20" CONTENT="語" HEIGHT="20" WIDTH="41" VPOS="206" HPOS="464" WC="0.92"/> <String ID="word_1_21" CONTENT="対" HEIGHT="841" WIDTH="595" VPOS="0" HPOS="0" WC="0.93"/> </TextLine> </TextBlock> </ComposedBlock> ... </PrintSpace> </Page> </Layout> </alto> 画像とxmlファイルをOmekaにアップロードする 以下のように、画像とxmlファイルをアップロードします。注意点として、画像とxmlのファイル名(拡張子を除く)を揃えて必要があります。(以下の例では、alto_test) ...

【Omeka S モジュール改修】IIIF Searchモジュール

【Omeka S モジュール改修】IIIF Searchモジュール

概要 IIIF Search は、全文検索のための IIIF Search Api を追加する Omeka S 用モジュールです。 https://github.com/symac/Omeka-S-module-IiifSearch 今回は上記のモジュールの改修を行いました。pull requestを送付済みですが、以下のリポジトリで改修したモジュールをご利用いただけます。 https://github.com/nakamura196/Omeka-S-module-IiifSearch 具体的にな改修内容としては、クエリ文字列の下限が1文字に設定されていましたが、これを設定フォームで変更できるようにしました。デフォルトでは3文字に設定されており、漢字1文字などでの検索ができなかったため、本改修を行いました。 改修内容 以下の4つのファイルを修正しました。 config/module.ini src/Form/ConfigForm.php Module.php src/View/Helper/IiifSearch.php config/module.ini https://github.com/nakamura196/Omeka-S-module-IiifSearch/commit/d2707361d9aa038c3f7da2db559051386f15e222#diff-a3f073087bb51946398c23263f05539c4d57e12b198f9ba0a0887b0a2e9f710b configurableをtrueに変更しました。これにより、モジュールインストール後に、以下のような設定画面が表示されます。 src/Form/ConfigForm.php https://github.com/nakamura196/Omeka-S-module-IiifSearch/commit/d2707361d9aa038c3f7da2db559051386f15e222#diff-8535197317d24c4a15681f0ba9fa1e762040d2e3984f5d1981471092a4946f74 上記画面の設定画面での表示内容は、src/Form/ConfigForm.phpを編集することで実現できます。 iiifsearch_minimum_query_lengthを設定値を追加しています。 Module.php https://github.com/nakamura196/Omeka-S-module-IiifSearch/commit/d2707361d9aa038c3f7da2db559051386f15e222#diff-074f64cd19bc13bc527290951a58a65cb54f2f35a43ce5bf95e5dbb20b4d297d 上記の画面に関する設定は、Module.phpを修正することで実現します。 具体的には、getConfigFormやhandleConfigFormフォームを追加しています。 また、モジュールのインストール時およびアンインストール時の処理を設定するinstallおよびuninstall関数を追加して、iiifsearch_minimum_query_lengthの初期値の設定および削除を行なっています。 src/View/Helper/IiifSearch.php https://github.com/nakamura196/Omeka-S-module-IiifSearch/commit/d2707361d9aa038c3f7da2db559051386f15e222#diff-130dd3b86192225df59328df92c2bed1f2b2de8ba3f561946e2dcfcb5da7d8b8 最後に、src/View/Helper/IiifSearch.phpを変更します。minimumQueryLengthが3で設定されていた箇所について、$this->view->setting('iiifsearch_minimum_query_length')で設定値を読み取り、minimumQueryLengthの値としています。これにより、例えば日本語を扱う場合には、設定画面でminimumQueryLengthを1に設定することにより、1文字からの検索が可能になります。 まとめ 本モジュールを利用する際の、特に日本語を対象としたテキストに対する検索を行う際の参考になりましたら幸いです。また、Omeka Sのモジュール開発の参考にもなりましたら幸いです。

【Omeka S モジュール紹介】PDFファイルに対してOCRを行うモジュール「Extract Ocr」

【Omeka S モジュール紹介】PDFファイルに対してOCRを行うモジュール「Extract Ocr」

概要 PDFファイルに対してOCRを行うOmeka Sのモジュール「Extract Ocr」を紹介します。 インストール 以下のページを参考にします。 https://omeka.org/s/modules/ExtractOcr/ 本モジュールは、pdftohtmlというコマンドラインツールが必要です。 以下、omeka-sの部分は、適宜変更してください。 AWS Lightsailを用いた環境では、以下によってインストールできました。 sudo apt install poppler-utils さらに、omeka-s/config/local.config.phpを編集する必要があります。base_uriの部分は、導入した環境に応じて変更してください。例:https://omekas.aws.ldas.jp/sandbox/files 'file_store' => [ 'local' => [ 'base_path' => null, // Or the full path on the server if needed. 'base_uri' => 'https://example.org/files', ], ], 上記の設定後、モジュールをダウンロード、インストールします。 cd omeka-s/modules git clone https://github.com/symac/Omeka-S-module-ExtractOcr.git ExtractOcr AWS Lightsailの場合、インストール時に以下のエラーが発生しました。 以下のコマンドにより、omeka-s/filesにtempファイルを作成しました。 cd omeka-s/files sudo mkdir temp sudo chown daemon:daemon temp 上記の設定後、無事にインストールできました。 ファイルのアップロード アイテムの新規登録を行い、メディアとしてPDFファイルをアップロードします。 ...

Mroonga search モジュールのインストール(※うまくいきませんでした。)

Mroonga search モジュールのインストール(※うまくいきませんでした。)

概要 以下の記事で紹介しているMroonga search モジュールのインスールについて、AWSのLightsailで試みました。 https://nakamura196.hatenablog.com/entry/2022/03/07/083004 結果、うまくインストールできませんでしたが、備忘録のために記事化します。 Omeka Sの立ち上げ 以下の記事の通り、Omeka Sを立ち上げました。 Mroongaのインストール 以下のページを参考に、インストールを行いました。 https://mroonga.org/docs/install/debian.html sudo apt update sudo apt install -y -V apt-transport-https sudo apt install -y -V wget wget https://packages.groonga.org/debian/groonga-apt-source-latest-bullseye.deb sudo apt install -y -V ./groonga-apt-source-latest-bullseye.deb sudo apt update sudo apt install -y -V mariadb-server-10.5-mroonga 上記を実行後、mysql(mariadb)に入ります。 mysql -uroot -p パスワードは、以下のコマンド確認できます。 cat /home/bitnami/bitnami_application_password その後、以下を実行して、Mroongaを有効にします。 MariaDB [(none)]> INSTALL PLUGIN Mroonga SONAME 'ha_mroonga.so'; SHOW VARIABLES LIKE 'mroonga_version'; 以下のように表示されます。 Omeka Sモジュールのインストール 以下の通り、モジュールを展開します。 ...

【Omeka S モジュール開発】Sitemapsへの機能追加

【Omeka S モジュール開発】Sitemapsへの機能追加

以下の記事で、Omeka Sにサイト毎の動的なサイトマップ XML ファイルを追加する「Sitemaps」モジュールを紹介しました。 上記のモジュールについて、簡単な機能追加を行いました。具体的には、pagesおよびitemsetsをサイトマップXMLに含めるか否かを選択できるオプションを追加しました。 以下が、フォークしたリポジトリです。 https://github.com/nakamura196/omeka-s-module-Sitemaps 改修内容は以下でご確認いただけます。 https://github.com/nakamura196/omeka-s-module-Sitemaps/commit/03325f79e4e5b83c4ff7867fd37ed210fdf8eab2 本モジュール改修の参考になりましたら幸いです。

【Omeka S モジュール紹介】Sitemaps

【Omeka S モジュール紹介】Sitemaps

概要 本モジュールは、Omeka Sにサイト毎の動的なサイトマップ XML ファイルを追加します。 https://omeka.org/s/modules/Sitemaps/ インストール Omeka Sの基本的な方法でインストールできます。 設定 まず、サイトマップを追加したいサイトを選択します。 そして以下のように、Site Admin > 設定と遷移します。 設定画面の下部に、以下のように動的なサイトマップを生成を有効するためのオプションがあります。 上記を有効にすると、以下のように、サイトマップが生成されます。 https://omekas.aws.ldas.jp/sandbox/s/demo/sitemap.xml まとめ Omeka Sへのサイトマップ導入にあたって、参考になりましたら幸いです。

【Omeka S モジュール紹介】Data Type RDF

【Omeka S モジュール紹介】Data Type RDF

概要 Data Type RDFは、Omeka Sにデータ型 (html、xml、ブール値) を追加するモジュールです。 以下の、Numeric Data Typesと使い方は同様です。 https://nakamura196.hatenablog.com/entry/2021/08/01/070701 以下、使い方について紹介します。 使い方 インストール 他のOmekaモジュールと同じようにインストールします。 リソーステンプレートの編集 任意のリソーステンプレートを作成します。 次に、特定のプロパティのデータタイプにおいて、Data Type RDFの値を選択します。ここでは、本モジュールで追加された3つのタイプすべてを追加します。 その結果、以下のように、データタイプが指定されます。 アイテムの編集 アイテムの編集画面に移動して、先に作成したリソーステンプレートを選択します。 すると、先に指定したプロパティ(ここでは、decterms:description)に対して、入力フォームとして、「Html」「Xml」「Boolean」の3つが登場します。 それぞれ異なる入力フォームが用意され、入力方法が簡素化されます。 また以下のように、これらのデータタイプに応じて、表示方法も変更されます。 APIでの出力例 APIによるJSON-LDの出力例は以下です。@typeにURIが指定されていることが確認できます。 EasyRdfのconverterを用いて、RDF/XMLに変換した結果は以下です。(Xmlについては、datatypeが付与されない結果となりました。) まとめ Omeka Sにデータ型 (html、xml、ブール値) を追加するモジュール「Data Type RDF」の紹介でした。参考になりましたら幸いです。

Omeka SにICA RiC-Oの語彙を登録する

Omeka SにICA RiC-Oの語彙を登録する

概要 Omeka SにICA Ric-Oの語彙登録を行いましたので、その備忘録です。 https://www.ica.org/standards/RiC/RiC-O_v0-2.html 方法 Omeka Sの語彙登録の画面において、以下のように情報を入力します。 結果、106のクラス、485のプロパティ、が登録されました。 以下、プロパティ一覧の画面例ですが、各プロパティのコメント等もご確認いただけます。 まとめ ICA RiC-O、および、Omeka Sの活用について、参考になりましたら幸いです。

Omeka SのREST APIとやりとりするためのPythonパッケージ

Omeka SのREST APIとやりとりするためのPythonパッケージ

概要 Omeka SのREST APIをPythonから操作可能なパッケージが開発されています。 https://github.com/wragge/omeka_s_tools さらに、上記のリポジトリをベースとして、いくつかの機能追加を行なったリポジトリを作成しています。 https://github.com/nakamura196/omeka_s_tools2 本稿では、このリポジトリについて紹介します。 使い方 以下のページを参考にしてください。 https://nakamura196.github.io/omeka_s_tools2/ 本リポジトリはnbdevを用いて開発されており、パッケージの開発とドキュメンテーションを並行して行うことができ、便利な仕組みだと感じました。 追加開発した機能 IIIF画像URLの登録機能 Omeka SではIIIF画像URLの登録機能がありますが、本モジュールではこの登録機能が未実装でした。以下のように、IIIF画像URLの登録を行うメソッドを追加しました。 https://nakamura196.github.io/omeka_s_tools2/api.html#omekaapiclient.add_iiif_to_item アイテムセットの追加機能 本モジュールではアイテムセットの登録機能が未実装でした。以下のように、アイテムセットの登録を行うメソッドを追加しました。 https://nakamura196.github.io/omeka_s_tools2/api.html#adding-item-sets まとめ 今後追加開発していく機能については、いずれ本家のリポジトリに統合できればと考えています。 また今回開発した機能の使用例について、別の記事で紹介したいと思います。 具体的には、IIIFマニフェストファイルを入力データとして、そこに含まれる画像データを本モジュールを用いてOmeka Sに機械的に登録し、さらにScriptoを用いることで、それらの画像データに対する翻刻環境を作成する、といったことが可能になります。

【Omeka S モジュール紹介】Custom Vocab

【Omeka S モジュール紹介】Custom Vocab

概要 Omeka Sのモジュールの一つであるCustom Vocabを紹介します。 https://omeka.org/s/modules/CustomVocab 以下、公式サイトの説明文の私訳です。 カスタム語彙モジュールを使用すると、制御された語彙を作成し、それをリソーステンプレートの特定のプロパティに追加できます。アイテムにそのテンプレートを使用すると、テキスト入力ボックスではなく、制御された語彙のオプションに限定されたドロップダウンでプロパティが読み込まれます。 たとえば、キャンパス内のさまざまなコレクションに対応する機関固有の場所のリスト、または所蔵に関連する人物または場所の管理されたリストを作成することができます。これにより、タイプミスや名前のバリエーションを減らすことができ、より多くのフィールドのメタデータ参照を提供できるようになります。 使い方 カスタム語彙を作成する モジュールをインストールしてアクティブ化したら、左側のナビゲーションの[モジュール]の下にある[カスタム語彙]セクションに移動します。 ウィンドウの右上隅にある[Add a New Vocab]ボタンをクリックします。 Add Custom Vocab ページには、Label、Language、Vocab Type、Terms/Items/URI inputの4 つのフィールドがあります。 Label : リソース テンプレートに追加するときに検索に使用する語彙の名前。 言語(オプション): ISO 639-1言語コードを使用した語彙の言語。 制御された語彙用語を、入力された用語のリスト、既存の項目のリスト、またはラベル付きまたはラベルなしの外部URIのリストに設定できます。 用語: 平文の用語のリスト、1行に1つの単語またはフレーズ。これにより、プロパティがテキストとして設定されます。 アイテム: Omeka Sインストールのアイテムセットのドロップダウン。これらのいずれかを選択すると、そのアイテムセットのアイテムが入力されたカスタムボキャブが作成されます。使用すると、プロパティはテキストではなくOmeka リソースとして入力されます。 URIs : ラベル付きまたはラベルなしのURIのリスト。1行に1つのURI。ラベルを含めるには、URIの後にスペースとラベルを追加します (例: “https://youromekainstall.org/item/1119 Canada”)。使用すると、プロパティは外部リソースへのリンクとして入力されます。 「送信」をクリックして変更を保存します。 カスタム語彙の管理 少なくとも1つの語彙を作成すると、カスタム語彙モジュールタブに既存の語彙の表が表示されます。このテーブルには、ラベル、編集、削除、および情報の表示用のボタン、語彙の所有者または作成者が表示されます。 カスタム語彙を編集するときに、ラベル、言語、または用語を変更できます。 カスタム語彙の使用 カスタム語彙は、リソーステンプレートを通じて適用されます。 リソーステンプレートに移動し、新しいテンプレートを追加するか、既存のテンプレートを編集します。テンプレートを編集したら: カスタム語彙を適用するプロパティを追加します。 プロパティを編集します。 右側に開くドロワーで、[その他のオプション] セクションに移動し、[データタイプ] ドロップダウンを見つけます。 ドロップダウンをスクロールして、使用するカスタム語彙を選択します。 ドロワーの下部にある設定変更をクリックします。 必ず変更を保存してください。 リソーステンプレートのタイトルをクリックして詳細を表示すると、Custom Vocabがデータタイプテーブルの見出しに表示されます。 このリソーステンプレートがアイテムまたはアイテムセットで使用される場合、指定されたプロパティは常に、カスタムボキャブラリの値を含むドロップダウンメニューとしてロードされます。 この画像では、以前に変更されたリソーステンプレートが新しいアイテム用に読み込まれています。Spatial Coverageに「select below」メッセージと、プロパティ入力がドロップダウンメニューであることを示す矢印があることを確認します。 ...

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

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

Amazon LightsailでOmeka Classicの初期設定を行うscriptを作成しました。 以下の記事の「Omeka Classic版」です。 Amazon Lightsailを用いてOmeka Classicを使用する際の参考になりましたら幸いです。 # 変数 OMEKA_PATH=/home/bitnami/htdocs/omeka ## ハイフンは含めないこと DBNAME=omeka VERSION=3.0.3 ############# set -e mkdir -p $OMEKA_PATH # Omekaのダウンロード wget https://github.com/omeka/Omeka/releases/download/v$VERSION/omeka-$VERSION.zip unzip -q omeka-$VERSION.zip mv omeka-$VERSION/* $OMEKA_PATH # .htaccessの移動 mv omeka-$VERSION/.htaccess $OMEKA_PATH # 不要なフォルダの削除 rm -rf omeka-$VERSION rm omeka-$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/db.ini [database] host = localhost username = root password = $(cat bitnami_application_password) dbname = $DBNAME prefix = "omeka_" charset = "utf8" EOF sudo chown -R daemon:daemon $OMEKA_PATH/files sudo apt install imagemagick -y