この拡張機能は、 Wikimedia Commonsでメディアファイル(画像、ビデオ、PDFS ...)を編集(構造化されたデータ)を希望するOpenRefineユーザーにいくつかの役立つ機能を提供します。 Wikimedia CommonsのOpenRefineに関する詳細、ドキュメント、How-TOSについては、 https://commons.wikimedia.org/wiki/commons :openrefineを参照してください。
この拡張機能に含まれる機能:
1つ以上のWikimedia Commonsカテゴリ(カテゴリの深さを含む)からファイル名をロードして、OpenRefineプロジェクトを開始します
各ファイル名のCommonsカテゴリおよび/またはM-IDで列を追加する
プロジェクトを開始すると、ファイル名は既に調整されます
いくつかの専用グレルコマンドを使用すると、wikitextの基本的な処理と抽出を可能にします: extractFromTemplate
とvalue.extractCategories
(この拡張機能の0.1.1リリースおよびその後)既存のWikimedia Commonsファイルのファイルサムネイルプレビューの基本的なサポート。サムネイルは、一部の(すべてではない)ファイルタイプ/拡張機能に対して表示されます。現在、JPEG、GIF、PNG、DJVU、PDF、SVG、WebM、OGVファイルのサムネイルサポートがあります。
OpenRefine 3.6.xおよびOpenRefineの後のバージョンで動作します。 OpenRefine 3.5.x以前と互換性がありません。 (OpenRefineは、バージョン3.6からWikimedia Commonsの編集をサポートしています。これは以前のバージョンでは不可能です。)
この拡張機能は、2022年10月に最初にリリースされました。ウィキメディアプロジェクト助成金によって資金提供されています。
この拡張機能の最新リリースの.zipファイルをダウンロードします。このファイルを解凍し、解凍されたフォルダーをOpenRefine Extensionsフォルダーに配置します。 OpenRefineのユーザーマニュアルに拡張機能のインストールの詳細をご覧ください。
この拡張機能が正しくインストールされると、OpenRefineで新しいプロジェクトを開始すると、追加のオプション「Wikimedia Commons」が表示されます。
この拡張機能をインストールした後、「Wikimedia Commons」オプションをクリックして、OpenRefineで新しいプロジェクトを開始します。 1つ以上のWikimedia Commonsカテゴリを追加するように求められます。
カテゴリを入力する必要はありません:プレフィックス。
各カテゴリの後に入力フィールドの数値を入力または選択することにより、カテゴリの深さを指定できます。深さ0
は、現在のカテゴリレベルのファイルのみを意味します。深さ1
、1つのサブカテゴリレベルダウンなどからファイルを取得します。
次に、プロジェクトプレビュー画面( Configure parsing options
)では、各ファイルのM-ID(一意のMediainfo識別子)および/またはCommonsカテゴリの列を含めることもできます。
プロジェクトが開始されると、ファイル名は既に調整されます。
新しいプロジェクトに大きなカテゴリ(数千のファイル)をロードすると、OpenRefineはゆっくりと開始され、メモリ警告が表示されます。これは既知の問題です。少し待ってください。プロジェクトは最終的に開始されます。 Commons Extensionは、450,000を超えるファイルのプロジェクトでテストされています。
Wikimedia Commons Extensionは、Wikimedia CommonsファイルのWikitextから特定の情報を抽出するのに役立つ2つの専用グレルコマンドも有効にします。 (一般的な洗練された表現言語であるグレルは、多くの柔軟なデータ操作においてOpenRefineで使用される専用のスクリプト言語です。GrelをOpenRefineで使用する一般的なリファレンスについては、https://docs.openrefine.org/manual/grelfunctionsを参照してください。)
まず、プロジェクトのコモンズファイルのリストからWikitextを取得します。調整されたファイル名の列の列メニューで、 Edit column
> Add column from reconciled values...
を選択し、結果のダイアログウィンドウでWikitext
を選択します。
Wikitextを使用したこの新しい列から、以下に説明するように値とカテゴリを抽出できるようになりました。 Edit column
> Add column based on this column...
[列]メニューに。次のダイアログウィンドウでは、さまざまな特定のグレルコマンドを使用できます。
extractFromTemplate
次の構文を使用します。
extractFromTemplate(value, "BHL", "source")[0]
BHL
テンプレートの名前(縮れブラケットなし)に置き換え、値を抽出するパラメーターにsource
。このグレル構文は、上記のパラメーターの最初の(そして通常の唯一の)値、例: https://www.flickr.com/photos/biodivlibrary/10329116385
を返します。
value.extractCategories
を抽出します次の構文を使用します。
value.extractCategories().join('#')
このグレル構文は、 #
文字で区切られたWikitextに記載されているすべてのカテゴリを返します。このカテゴリは、必要に応じて結果のセルをさらに分割するために使用できます。
走る
mvn package
これにより、 target
フォルダーにzipファイルが作成され、OpenRefineでインストールできます。
テストするたびに対応するディレクトリの拡張機能を解凍する必要がないようにするには、別のセットアップを使用することもできます。OpenRefineのExtensionsフォルダーからこのリポジトリのローカルコピーにシンボリックリンクを作成するだけです。このセットアップを使用すると、拡張機能を変更するときにmvn package
を実行する必要はありませんが、Javaファイルに変更を加えている場合はmvn compile
でコンパイルし、ファイルに変更を加えた場合はOpenRefineを再起動します。
master
ブランチにいることを確認してくださいgit pull
pom.xml
を開き、バージョンを<version>0.1.0</version>
などの目的のバージョン番号に設定します
これらの変更をマスターにコミットしてプッシュします
git tag -a v0.1.0 -m "Version 0.1.0"
で対応するgitタグを追加します(Githubデスクトップで作業する場合、このプロセスに従い、説明Version 0.1.0
でv0.1.0
タグを手動で追加できます)
タグをgithub: git push --tags
(github desktopで、もう一度押します)にプッシュします
https://github.com/openrefine/commonsextension/releases/newのGithubで新しいリリースを作成し、リリースタイトル(「Commons Extension 0.1.0」など)とこのリリースの機能の説明を提供します。
pom.xml
を開き、バージョンを予想される次のバージョン番号に設定し、次に-SNAPSHOT
を使用します。たとえば、0.1.0をリリースしたばかりの場合、 <version>0.1.1-SNAPSHOT</version>
を設定できます。
それらの変更をコミットしてプッシュします。