Mari pertimbangkan dokumen JSON-LD sederhana tanpa konteks:
[
{
"@id": "http://stackoverflow.com/#users",
"http://rdfs.org/sioc/ns#name": "SO Users",
"http://xmlns.com/foaf/0.1/member":
{
"@id": "http://example.com/me#me"
}
},
{
"@id": "http://example.com/me#me",
"http://xmlns.com/foaf/0.1/givenName": "Tomasz"
}
]
Saya ingin menambahkan satu @context ke dokumen ini untuk mendapatkan sesuatu seperti di bawah ini:
{
"@context": { /* what here? */ },
"@graph": [
{
"@id": "http://stackoverflow.com/#users",
"Name": "SO Users",
"Members": [ "http://example.com/me#me" ]
},
{
"@id": "http://example.com/me#me",
"Name": "Tomasz"
}]
}
Masalahnya di sini adalah properti foaf:givenName dan sioc:name keduanya dipetakan ke kunci Nama di json. Tidak akan menjadi masalah ketika menulis dokumen ini secara manual, karena @context yang disarangkan dapat digunakan untuk mengganti properti.
Namun apakah mungkin dengan operasi Compact seperti yang ditentukan oleh spesifikasi JSON-LD? Atau merupakan satu-satunya pilihan untuk memetakan setiap predikat ke properti yang tidak ambigu (dalam hal ini dapat berupa Nama dan Nama yang Diberikan)