Пустой узел в RDF
Я только начал изучать RDF, и мой вопрос: какова цель пустого узла?
Пример:
ex:John foaf:knows _:p1
_:p1 foaf:birthDate 04-21
Это означает, что Джон знает кого-то, кто родился 04-21.
Но я не могу понять цель.
3 ответа
Для вашего простого примера причиной пустого узла будет то, что вы ничего больше не знаете об этом человеке, родившемся 04-21, за исключением того, что Джон знает его или ее. У вас недостаточно знаний, чтобы дать ему / ей правильный URI и просто добавить два известных утверждения.
Представьте, что вы знаете человека (назовем его Дерек), у которого трое детей. Вы видели одного из детей, а он мальчик. Ты можешь сказать:
ex:derek ex:hasChild _:b1 .
_:b1 a ex:Boy .
Это значит, что у Дерека есть мальчик. Вы можете сказать это своему другу Хадиму. Теперь твой друг встречает Дерека и одного из его детей. Ребенок мальчик. Поэтому Хадим может сказать:
ex:derek ex:hasChild _:b2 .
_:b2 a ex:Boy .
Это значит, что у Дерека есть мальчик. Это подтверждает и эквивалентно вашему заявлению. Однако, если бы вы дали идентификатор мальчику, которого вы видели, это было бы:
ex:derek ex:hasChild ex:theBoyIHaveSeen .
ex:theBoyIHaveSeen a ex:Boy .
Тогда ваш друг Хадим скажет:
ex:derek ex:hasChild ex:theBoyYourFriendHasSeen .
ex:theBoyYourFriendHasSeen a ex:Boy .
Это не подтверждает то, что вы говорите, поскольку вы не знаете, является ли мальчик, которого вы видели, таким же. Тем не менее, вы сможете согласиться с тем фактом, что у Дерека есть мальчик. Итак, с помощью URI вы действительно выражаете что-то другое.
Пустой узел - это узел, который не имеет URI в качестве идентификатора. Возникает простой вопрос, почему мы не предоставляем / не используем URI для этого узла, простая причина в том, что детализация узла (URI) не имеет особой связи / важности для нашего документа /rdf. Если сведения о конкретном узле прямо или косвенно связаны с нашим контентом, мы должны предоставить / использовать URI для него.