IIIFマニフェストの調理法
8分のLTのために作った短いスライドです。簡単な導入はIIIF:活用したい機能、拡張の可能性(LT)、応用などはIIIFマニフェストの調理法も参照してください。
基本はカンバス
- 共有カンバス(Shared Canvas)
- カンバス上に画像などを「描く」(motivation:painting)
- 縦横のサイズ(
width
、height
)=アスペクト比を持つ - アスペクト比は画像の縦横比と一致させる → 不正確だと不具合の元
- 多くは1カンバスに1枚の画像だが、複数画像でもカンバスの一部にでも
- テキスト注釈は
otherContent
として外部から与える(v2の場合)
注釈としてのカンバス
- Web Annotationモデル
- カンバス注釈対象(target)、画像、テキスト=注釈内容(body)
- v2のJSON-LD構文では、対象(target)を
on
、内容(body)をresource
プロパティ値として記述する- → v3では
target
、body
- → v3では
- カンバスの一部をターゲットにするときは、領域の座標(
xywh
)をメディアフラグメントを用いて表現する
カンバスの拡張
- v3のカンバス
- 縦横軸に時間軸(
duration
)を追加 - 音声や動画をカンバス上に「描く」。時間軸上で同期させる
- テキスト注釈も直接記述できる(別ファイルに
otherContent
でリンクしなくてよい)
- 縦横軸に時間軸(
マニフェストの役割
- カンバスの並びと構造
sequences
:リソースとしてのカンバスの並び(物理的順序)structures
:構造化目次(論理的順序)- 並べるためのメタデータ(後述)
- 人間向けに表示する説明情報
label
、description
、attribution
以外のテキストは汎用のmetadata
- 機械可読なプロパティではなく、メタデータの項目名と値の組合せ
- 多言語を意識 → v3でますます重視される
- 他のリソースとの関係
seeAlso
:機械可読な構造的メタデータ記述related
:人間向けの目録詳細など情報ページmetadata
でも記述は可能(→v3では廃止との案も?)
rendering
:ビューアなど表示ページ/PDF版などDL用URLservice
:Search APIなどの連携サービス
カンバスの並べ方 (1)
- 表示方向:viewingDirection
- ページ送りの方向を指定する。デフォルトは
left-to-right
- 和書の場合
right-to-left
の指定を忘れずに - 最新版のビューアはほぼ
right-to-left
にも対応
- ページ送りの方向を指定する。デフォルトは
カンバスの並べ方 (2)
- 見開きと連続:viewingHint
paged
とすると、冊子体の見開きページとして表示(1頁目は単独、以下2&3頁目、4&5頁目…と2つのカンバスを並べる)continuous
とすると、カンバスを連続して表示(巻物の場合など)- 指定しなければ
individuals
(各ページ単独)として扱われる
カンバスの並べ方 (3)
マニフェスト設計のヒント
- アクセシブルなマニフェスト
- 単一のビューアに依存しない
- たまにはバリデータも使ってみる
- ラベルだけでも多言語化する
- 機械可読メタデータに
seeAlso
でリンクする
- 単一のビューアに依存しない
- 単独でも利用できるカンバス
@id
のURIからカンバスを取得できるようにし、外部アプリケーションがカンバスを直接利用可能にする- 単独出力するときは
@context
を忘れずに
- 単独出力するときは
- 例えばTEIのページからリンクし翻刻テキストと画像を同時表示など
- Curation APIもマニフェストを辿らずに利用できるように
- カンバスにも意味のあるラベルを
- v3への移行を見据えた設計
- 構文やプロパティ名が大きく変わる(
@id
→id
、sequences
→items
)など、v2と互換性のない変更が導入される- 草案段階のJSON-LD 1.1の機能も取り入れたりする。2018年春のワシントン会議頃の確定を目標
- α版の仕様書は不正確かつ未編集(2.1のまま)部分が多いので鵜呑みにしないこと
- カンバスやマニフェストを固定的に作り込まず、データと出力テンプレートを分離して
- 構文やプロパティ名が大きく変わる(