У меня есть документ JSON-LD.
{
"@id": "VDWW1LL3MZ",
"first_name": "Vincent",
"last_name": "Willems",
"knows":["MartyP"],
"@context": {
"foaf": "http://xmlns.com/foaf/0.1/",
"first_name": "foaf:givenName",
"last_name": "foaf:familyName",
"knows": "foaf:knows",
"MartyP": {
"@id": "http://example.com/martyp",
"first_name": "Marty",
"last_name": "P"
}
}
}
Теперь часть контекста этого документа создается во время выполнения (объект Marty P
), но определение префикса foaf
является статическим и повторяется для каждого документа.
Если у меня есть около 10 определений префиксов, было бы расточительно помещать их в каждый документ. Поэтому я хотел бы сделать что-то вроде
generated document
:
{
"@id": "VDWW1LL3MZ",
"first_name": "Vincent",
"last_name": "Willems",
"knows":["MartyP"],
"@context": {
"@extends": "http://example.com/base_context.jsonld",
"MartyP": {
"@id": "http://example.com/martyp",
"first_name": "Marty",
"last_name": "P"
}
}
}
base_context.jsonld
:
{
"foaf": "http://xmlns.com/foaf/0.1/",
"first_name": "foaf:givenName",
"last_name": "foaf:familyName",
"knows": "foaf:knows"
}
Это возможно?
MartyP
не должен находиться внутри @context. Контекст служит только для преобразования ключей и значений JSON в URI. Вместо этого объектMartyP
должен быть целым внутри массиваknows
. Пожалуйста, поэкспериментируйте с игровой площадкой JSON-LD, чтобы освоить ее. - person Tomasz Pluskiewicz   schedule 07.10.2014