Почему пустой узел не отображается на странице ресурсов в виде ссылки? И не отображается на визуальном графике? - PullRequest
1 голос
/ 06 марта 2020

Ontotext GraphDB 9.1.1, Free Edition Centos7 3.10.0-1062.9.1.el7.x86_64

Один из моих графиков, который содержит пустые узлы, подобные этому:

@prefix : <urn:ex:> .
:John :weight [ :value "5" ;
                :unit  "kg"  ] .

Когда Я ищу Джона в Обзор / Обзор графиков для графика по умолчанию, отображаются тройки и тема: у Джона есть объект с именем _: node3.

Однако, объект отображается в виде текста, а не ссылки на ресурс, такой как: John.

И я нажимаю Визуальный график для: Джон, ничего не отображается. Я пробовал Расширенная конфигурация графика , также не удалось.

Я нашел какое-то решение, которое использует CONCAT для объединения объектов, но это не достаточно изящно.

Я ожидаю, что пустые узлы может отображаться в Обзор и Визуальный график .

Возможно ли это независимо от версии GraphDB?

Спасибо!

1 Ответ

0 голосов
/ 06 марта 2020

Пустой узел - это узел, который не имеет IRI в качестве идентификатора. Вот почему визуальный график показывает только IRI. В идеале вам следует избегать использования пустых узлов, поскольку это будет противоречить тому факту, что: Джон - это IRI, а вы используете пустой узел для определения его свойств. Вот обходной путь (я не уверен, что вы нашли этот):

prefix : <urn:ex:>
CONSTRUCT { 
    :John :weight ?value
} WHERE {
    :John :weight ?bnode.
    ?bnode :value ?nameLiteral;
       :unit "kg" .
    BIND( IRI(CONCAT("http://test", ?nameLiteral)) as ?value)
}
...