В мире RDF то, о чем вы говорите, называется reification .
Один из способов преобразования RDF остается с чистой «тройной» моделью, идентифицируя каждое утверждениеи каждый элемент каждого утверждения, что-то вроде -
_:b1 rdf:type rdf:Statement ;
rdf:subject :moon ;
rdf:predicate :consistsOf ;
rdf:object :greenCheese .
Другой путь - переход к квад-модели, обычно с использованием «именованных графов» (которые поддерживаются SPARQL). Именованный граф может состоять из одной тройки и часто выражается как { Subject Predicate Object Graph }
, что-то вроде -
{ :moon :consistsOf :greenCheese _:b1 }
- или как { Graph { Subject Predicate Object } }
что-то вроде -
{ _:b1 { :moon :consistsOf :greenCheese } }
Теперь вы можете сказать, что с любым из них _:b1
утверждал Джо 1958-12-24, отрицал Нил 1969-07-21 и т. Д.
Существуют различные способысбора графов с одним утверждением в графы с несколькими утверждениями - например, описание графа X как составленного из графов M, N, O и графа Y, составленного из графов X, P, Q - таким образом, что вы можетеописать (включая предоставление происхождения) одно утверждение, набор утверждений и т. д., в зависимости от ситуации.