Как применить массив к @type в jsonld?

Учитывая контекст с псевдонимом type следующим образом:

{
  "@context" : {
      "type" : "@type"
  }
}

Как массив может быть применен к данным, например, с использованием

"@container" : "@set"

?


person dr0i    schedule 18.10.2018    source источник


Ответы (1)


В JSON-LD 1.0 это невозможно, так как определение @type зафиксировано в спецификации. Вы можете создавать псевдонимы (например, тип), но вы не можете изменить поведение.

В предстоящем JSON-LD 1.1 эта проблема была решена, и вы можете сделать именно так, как было предложено — добавить @container: @set в определение, и алгоритм сжатия добавит типы в массив.

Соответствующая проблема в рабочей группе 1.1: https://github.com/w3c/json-ld-syntax/issues/34

person Rob Sanderson    schedule 22.10.2018
comment
Недавно я реализовал эту спецификацию для библиотеки Java github.com/jsonld-java. /jsonld-java#2018-11-03. - person dr0i; 05.11.2018