S.F. Page

Programming,Music,etc...

JSON-LD 1.0の日本語訳に取り組む(12)

推敲は相変わらずのペースだが、誤字・脱字や訳し漏れはかなり解消した。 W3Cには一応翻訳が完了したと伝えておいたが、先日返答があり、W3Cのページに掲載したとのことだった。

Japanese Translations of W3C Documents

Translations of JSON-LD

仕様をいくらわかりやすくしようとしても限界はあるので、トピックをブログで考察や解析、解説を書いたほうがよりよくJSON-LDの普及に貢献できるだろう。すでにそういうような記事がいくつかある。

w3g.jp

qiita.com

www.suzukikenichi.com

JSON-LDの重要なコンセプトのひとつとして、プロパティや値などのオブジェクトをIRIで一意に識別できるようにすることにある。IRIによってそのオブジェクトが同じものを指すのかどうかが比較できるのである。たとえば日本語でいう「名前」と英語「name」を同じIRI (http://schema.org/name)で表現することで、言語間でも同じ言葉を指すものとして人も機械も認識できる。

JSON-LDやリンク・データの文献を読むとよく以下のような記述に出くわす。

JSON自体は、記述した文字列に意味を持たせる機能を持っていません。 JSON-LDでは、文字列に意味を持たせることが可能です。

これを読むとコンピュータが意味を解釈するように思えてくるけど、実際はそうではない。先ほども言ったようにJSON-LDが行うのはプロパティ・値・オブジェクトにIRI識別子を与え、同値比較できるようにするだけである。 ただこのようにIRIを付与しておくと、Googleなどの検索エンジンがあるトピックで索引付けを行いた場合、IRIでクエリすることで効率的に処理が行えるし、また会社間でデータ交換をするときに項目をSchema.orgなどの語彙IRIで定義しておけば変換も容易となる。つまりここでいう「意味」とはあるデータのかたまりにつける「ラベル」のことである。この「ラベル」をSchema.orgのような誰でもアクセスできる共通語彙サイトで定義されている用語に紐づけることで、「ラベル」自体の同値比較を誰でもできるようにするのである。「同値である≒意味が同じ」である。

プロパティや値、オブジェクトに対してIRIを付与しておくと、その項目が何を指しているのかを辿ることができるようになる。さらにその項目のプロパティや値にIRIを紐づけておくとさらにその項目の詳細について辿ることができる。 この辿る経路のことを有向グラフと呼んでいる。この有向グラフをJSONで書くための構文がJSON-LDである。これがJSON-LDにおいてのもっとも重要なポイントである。