相撲絵の場合:ジャパンサーチとWeb AnnotationSumo Ukiyo-e: Web Annotation for Japan Search
ジャパンサーチ(JPS)のアイテム記述に独自のメモを加えたいこともあるでしょう。Web Annotationを用いて外部情報を加える例として、相撲絵のメモ注釈RDFを作成しました。JPSとの統合クエリで、情報を組み合わせることができます。またJPSのマイノートからのWeb Annotation生成も可能です。
This page introduces annotations on 相撲絵 (Sumo Ukiyo-e) items in Japan Search (JPS) with Web Annotation, as examples to add information from outside. Those information can be merged via federated query. Also, you can generate Web Annotation from JPS Notes.
External metadata description with Web Annotationによる外部メタデータ記述
JPSのアイテムについてメモや注釈を加えるときに、JPSのURIを主語にして直接記述するのはあまり得策ではありません。異なるデータを組み合わせると、JPSの記述や他の人のメモと区別が難しく、誰がいつ作成したメモなのか分からなくなってしまうからです。
このような場合は、Web Annotationを用いると、自作コメントをJPSの記述や他の人のメモと明確に区別して扱うことができます。
It would not be wise to describe your memo with JPS URI as its subject, since it makes difficult to distinguish your memo from those by other people, or JPS description itself.
Web Annotation allows to describe your memo expricitly separating from those by others.
{ "@context": "http://www.w3.org/ns/anno.jsonld", "target
": "https://jpsearch.go.jp/data/dignl-1313392", "bodyVale
": "第11代横綱不知火光右衛門の一人立化粧まわし姿", "creator": "http://purl.org/net/who/kanzaki#masahide", "created": "2019-05-04", "id": "https://www.kanzaki.com/works/ld/jpsearch/annot-sumo#anno1", "type": "Annotation" }
テキスト注釈だけでなく、タグや他のメタデータを加えることもできます。この場合はbodyVale
ではなくbody
を用いて注釈内容を構造化し、メタデータの種類をpurpose
で示します。
You can add tags or other metadata. In this case, use body
instead of bodyVale
, and specify the kind of your metadata by purpose
.
"target": "https://jpsearch.go.jp/data/dignl-1313392", "body
": { "value
": "相撲絵", "purpose
": "tagging" }, ...
タグなどの値をURIで表現するためには、value
ではなくsource
を用いてデータ値をURIにします。絵に誰が描かれているかも記述するならばpurpose
の値を"identifying"とし、複数のメタデータ記述のために、body
の値を配列にします。
If the value of the tag is URI rather than a textual string, use source
instead of value
. In order to describe who is depicted in the picture, set the value of purpose
to "identifying", and make body
an array.
"target": "https://jpsearch.go.jp/data/dignl-1313392", "body": [{ "source
": "http://ja.dbpedia.org/resource/相撲絵", "purpose
": "tagging" },{ "source": "http://ja.dbpedia.org/resource/不知火光右衛門", "purpose
": "identifying
" }], ...
複数ターゲットのWeb AnnotationMultiple targets in Web Annotation
複数のJPSアイテムに同じタグを与えてグループ化するという使い方もあるでしょう。この場合は、target
を複数記述することで、一つの注釈でタグのグループを表現できます。
Sometimes you might want to give the same tag to multiple JPS items so as to group them. In this case, one annotation with single tagging body
and an array of target
s will work.
"target
": [ "https://jpsearch.go.jp/data/dignl-1313392", "https://jpsearch.go.jp/data/dignl-1303914", "https://jpsearch.go.jp/data/cobas-50008" ], "body": { "value
": "相撲絵", "purpose
": "tagging" }, ...
JPSマイノートをJPS Notes as Web Annotationに
マイノートのお気に入りリストは、タイトル(ノート名)を持つノートにJPSアイテムを♥マークで登録していく仕組みです。このタイトルをタグとみなせば、ちょうどこのタグのグループと考えることができます。
A Favorite List of JPS Note is a function to check items into a note with a title (note name) by ♥ icon. Taking this title as a tag, a note can be considered a tag group of items.
マイノートはJSONとしてエクスポートできるので、そのノートJSONをWeb AnnotationのJSON-LDに変換する機能も用意しています(各アイテムに注釈を加えている場合や、あとで編集したい場合などは、アイテム毎にAnnotationを分けることも可能です)。
You can export notes as JSON, and convert the JSON to Web Annotation JSON-LD (If you add annotation to each item, or want to edit later, then it is also possible to make Web Annotation for each item).
次のブックマークレットNote2Annotで、ノートをエクスポートしなくてもこのツールをJPSページから実行できます(JPSページにノート選択・送信フォームを追加します)。また、JPSギャラリーもマイノートと同じデータ構造を用いているので、JSONを取得して「マイノートのJSON」に貼り付ければ、同様にWeb Annotationに変換できます。ギャラリーのIDもしくはURIを与えてWeb Annotationに変換するツールも用意しています。
The next bookmarklet Note2Annot will triger this tool from JPS Notes page, without exporting the data to a local file. Also, JPS Gallery's JSON data can also be converted to Web Annotation with this tool, since it uses the same data structure as JPS Note. A conversion tool from Gallery ID or URI available, too.
Web Annotationと and RDF
例3のtagging
の記述をRDFグラフとして図示するとFig.2のようになります。これはFig.3のようなプロパティグラフ的多項関係と考えることもできるでしょう(:hasPurpose
、:hasSource
をそれぞれjps:relationType
、jps:value
と読み替えると、JPSの構造化記述とも似ています)。
The tagging
part in >example 3 represents RDF in Fig.2. This can be thought as a sort of propety graph like N-ary relationship shown in Fig.3 (similar to sturctured property of JPS if replace :hasPurpose
and :hasSource
with jps:relationType
and jps:value
respectively.)
JSON-LDによる記述全体をRDFに変換すると、次のTurtleが得られます。
From the JSON-LD, you will get Turtle bellow.
なお、JPSアイテムについてのメモを活用するには自身のエンドポイントが必要、というわけではありません。メモをJSON-LD(あるいはTurtle)ファイルとしてローカルに保存し、ARQなどのツールでそのファイルに対してクエリを実行できます。そこにJSPとの統合クエリを組み込んでもきちんと機能します。
Note it is not necessary to build your own SPARQL endpoint in order to execute federated query with JSP. Save your JSON-LD (or Turtle) as a local file, and query against it with a command line tools such as ARQ. The query can include federation with JPS.