4

json-ld 標準の例の一部をここにコピーします。

{
  "@context": {
    "foaf": "http://xmlns.com/foaf/0.1/",
    "picture": { "@id": "foaf:depiction", "@type": "@id" }
  },
  "picture": "http://twitter.com/account/profile_image/markuslanthaler"
}

なぜ で を使用する必要があるのか​​、わかりませ@id@context。そのはず:

{
  "@context": {
    "foaf": "http://xmlns.com/foaf/0.1/",
    "picture": {
      "@type": [ "@id", "foaf:depiction" ]
    }
  },
  "picture": "http://twitter.com/account/profile_image/markuslanthaler"
}

説明はありますか?

何年か後

アッパーは、より再利用可能な形式で次のことを意味すると思います。

{
  "http://xmlns.com/foaf/0.1/depiction": "http://twitter.com/account/profile_image/markuslanthaler"
}

平らになった形を確認してから、徐々に圧縮していく方がずっと分かりやすいです。つまり、@idはプロパティの IRI であり、@typeは値の型です。これは here@idであり、混乱する可能性がありますが、IRI を値として期待していることを意味しています。

4

1 に答える 1

5

@idタームを拡張する方法を JSON-LD プロセッサに指示します。@vocabを使用する場合、または用語がコンパクトな IRI の形式である場合は省略できます。

@typeJSON-LD ドキュメントの場合、本文内で使用されるその用語のプレーン文字列値を処理する方法をプロセッサに指示します。XSDデータ@id型や@vocab. 最後の 2 つは非常に似ていますが、1 つはドキュメント ベースに対して評価され、もう 1 つは語彙用語として評価されます。

コンテキスト内の用語定義の値がオブジェクトではなく文字列である場合、それは単に@id. コンテキストをRDFS / OWLボキャブラリと考えないでください。一種のプレフィックス メカニズムと考えてください。

于 2014-06-20T05:06:49.700 に答える