【Omeka S モジュール紹介】Custom Ontology:独自語彙を追加する

概要

Custom Ontologyは、LOVschema.orgW3Cといった標準的なオントロジーが利用できないときに、独自の語彙を追加することができるモジュールです。内部プロパティを管理したり、新しいデータを作成している研究者にとって便利です。本記事では、このモジュールの具体的な使用方法について説明します。なお、文末に本モジュールのREADME.mdファイルの和訳も合わせて掲載します。

 

github.com

 

なお、標準的な既存の語彙(オントロジー)を登録する場合には、以下の記事を参考にしてください。

 

nakamura196.hatenablog.com

 

 

 

使用方法

モジュールのインストール後、以下のメニューから編集画面にアクセスできます。

 

f:id:nakamura196:20210725103550p:plain

 

設定

ここでは、接頭語「ex」、名前空間URIを「https://diyhistory.org/nakamura196/ns/ex/」とします。

この名前空間URIは自由に設定できますが、今回のように推奨された形式(Omeka url + /ns/{prefix}/)で与えると、以下のURLでウェブページが利用可能となるといった利点があります。こちらの機能については後述します。

Omeka url + /ns/{prefix}?format=html

 

語彙の情報入力 

以下の画面のように、語彙の作成に必要な情報を入力します。

 

f:id:nakamura196:20210725144608p:plain

 

続けて、クラスとプロパティを追加することもできますが、一旦ここまでの状態で作成することができます。画面右上の送信ボタンを押すと、語彙が作成されます。

作成された語彙は「語彙の一覧」ページから確認できます。

 

f:id:nakamura196:20210725145018p:plain

 

本ページの操作方法については、Omeka Sのコア機能の語彙操作に関する以下の記事を参考にしてください。

 

nakamura196.hatenablog.com

 

なお、語彙の作成後に後述するクラスやプロパティを追加する場合、ここで入力した情報をスキップすることができます。

 

クラスの入力 

ここでは独自の人物クラス「ex:Person」とイベントクラス「ex:Event」を作成します。下図のように、「Create specific classes」のフォームに値を入力します。各クラスについて一行毎に記述し、「prefix:クラス名,ラベル,コメント」の形で記述します。また「クラス名」の先頭は大文字にする必要があります(ex:person などはアラートが表示されます)。

 

f:id:nakamura196:20210725145402p:plain

プロパティの入力 

ここでは独自のプロパティ「ex:name」を作成します。作成方法は「クラス」の時と同様です。違いとしては、「prefix:」に続くプロパティ名は小文字で始まる必要があります(ex:Name などはアラートが表示されます)。

 

f:id:nakamura196:20210725150006p:plain

 

API

作成した語彙は、上述した通り、Omeka Sのコア機能である語彙の一覧などから確認することができ、また他の語彙と同様に各機能から利用することができます。

それに加えて、本モジュールで推奨された形式(Omeka url + /ns/{prefix}/)で語彙を作成すると、サイトページとして語彙に関する情報を公開することができます。今回の例では、以下のURLから語彙に関する情報にアクセスできます。

https://diyhistory.org/nakamura196/ns/ex?format=html

 

また以下のように、クエリ文字列を付けずに名前空間URIにアクセスすると、Turtleファイルをダウンロードすることができます。

https://diyhistory.org/nakamura196/ns/ex

 

本Turtleを他の人やシステムと共有することにより、独自に作成した語彙の情報を共有することができます。Linked Dataの原則の一つである以下を満たす設計となっています。

When someone looks up a URI, provide useful information, using the standards (RDF, SPARQL)

https://www.w3.org/DesignIssues/LinkedData.html

 

まとめ

以上、Custom Ontologyの使用方法について説明しました。作成した語彙はOmeka Sの標準機能を利用して更新や削除が可能です。これらについては、以下の記事を参考にしてください。

 

nakamura196.hatenablog.com

 

本モジュールを使用する前に、まずは既存の語彙(オントロジー)で使用できるものがないかを検討することを常にお勧めします。一方、内部プロパティを管理したり、新しいデータを作成している研究者にとって、本モジュールおよび本記事がお役に立てば幸いです。

 

README.mdの和訳

カスタムオントロジー(Omeka Sのモジュール)

カスタムオントロジーは、LOVschema.orgW3Cといった標準的なオントロジーが利用できないときに、リソースを記述するための独自のクラスやプロパティを作成することができるモジュールです。内部プロパティを管理したり、新しいデータを作成している研究者にとって便利です。プロパティとクラスは、他のオントロジーと同様に、OmekaSの標準APIを介して利用できます。

このモジュールは、Omeka Classic既存の機能を置き換えたものです。リソースクラスやリソーステンプレートに相当するアイテムタイプ編集と作成、およびプロパティに相当する新しい要素の作成が許可されていましたOmeka Sでは、データを共有し、セマンティックWebの標準に従うために、この機能は移植されませんでした。

データを共有し、それらを意味的にリンクすることを容易とするため、まず既存のオントロジーを検索して使用することを常にお勧めします。プロパティがあなただけに知られていて、どこにも記述されていない場合、それらを一致させたり、他のプロパティと関係を築いたりするのは困難です。This module avoids to create a specific rdf vocabularies, turtle or n3 files too, so anybody can use Omeka S like wished, with any documents or resources.

 

インストール

(他のモジュールとおおよそ共通のため省略)

 

使用方法

メニューCustom Ontologyをクリックするだけで、指示に従ってオントロジー、リソースクラス、プロパティを作成できます。

フォームに入力したら、Submitボタンから直接インポートします。

以前にインポートしたオントロジーに新しいクラスとプロパティを追加することはできますが、フォームから既存のものを更新することはできません。それでも、コアの管理ページ(admin/vocabulary)で、他のボキャブラリと同様に、Turtleファイルを使用してボキャブラリを後でアップグレードできます

カスタムオントロジーが提案されたとおり(Omeka url + /ns/prefix)に名前が付けられると、they will be publicly listed at https://example.org/ns and available as turtle, (a common simplified Notation3 format), at their namespace uri, and as a web page at https://example.org/ns/{prefix}?format=html.