😎

IIIF Presentation Validatorのローカル環境で利用方法

2023/01/25に公開

概要

IIIF Presentation Validatorは、その名の通り、IIIFプレゼンテーションAPIの検証を行うためのツールです。

https://presentation-validator.iiif.io/

以下の記事で、その使い方を説明しています。

https://zenn.dev/nakamura196/articles/64c9f7c8c10bc1

今回、以下の記事で紹介するIIIF Presentation API v3に対応したマニフェストファイルの作成にあたり、ローカル環境での検証が必要になりました。

https://zenn.dev/nakamura196/articles/59fe1c9e76de65

そこで、本ツールのローカル環境へのインストールを行いましたので、その備忘録です。

インストールの方法

以下に説明がありますが、Step oneを実行するとうまくいきませんでした。(こちらのIssueも上がっていました。)

https://github.com/IIIF/presentation-validator#local-installation

そこで少し方法を変えて、以下のように実行することで、ローカル環境でうまく実行できました。

git clone https://github.com/IIIF/presentation-validator.git
cd presentation-validator
pip install -r requirements.txt
python iiif-presentation-validator.py

上記により、localhost:8080 で本ツールが起動します。

ローカル環境のマニフェストファイルの検証方法

(よりよい方法があるかもしれませんが...)

検証したいマニフェストファイルを格納したディレクトリで、ローカルサーバを起動します。例えば、以下のように実行します。

python -m http.server

これにより、localhost:8000 でローカルサーバが起動しますので、http://localhost:8000/manifest.jsonといったURLでマニフェストファイルにアクセスできます。

このURLを以下のようにツールに登録することで、マニフェストファイルの検証が可能です。

エラー等が生じた場合には、マニフェストファイルを編集して、再度上記の「Go!」ボタンをクリックすることで、再度検証することができます。

その他

以下のようなURLにアクセスすることによっても検証を行うことができます。この場合、検証結果はjsonで返却されます。

http://localhost:8080/validate?version=3.0&url=http://localhost:8000/manifest.json

{
  "okay": 1,
  "warnings": [
    
  ],
  "error": "",
  "errorList": [
    {
      "title": "Resolve Error",
      "detail": "The manifest id (https://dl.ndl.go.jp/api/iiif/2585098/R0000003/full/full/0/default.jpg) should be the same as the URL it is published at (http://localhost:8000/manifest.json).",
      "description": "",
      "path": "/id",
      "context": "{ 'id': '...'}"
    }
  ],
  "url": "http://localhost:8000/manifest.json"
}

まとめ

IIIFマニフェストファイルを検証する際の参考になりましたら幸いです。

Discussion