SPARQL 查询中的空白节点实用程序是什么?

What is the blank nodes utility in SPARQL queries?

我不明白这个 SPARQL 查询有什么区别:

SELECT ?first ?last ?workTel
WHERE {
  ?s ab:firstName ?first ;
     ab:lastName ?last .
  OPTIONAL
  {?s ab:workTel ?workTel . }
}

还有这个:

SELECT ?first ?last ?workTel
WHERE {
  [] ab:firstName ?first ;
     ab:lastName ?last .
  OPTIONAL
  {[] ab:workTel ?workTel . }
}

他们给了我两个不同的结果,那么空白节点是如何工作的以及 ?s 变量在这里的效用是什么。 感谢您的回复。

[]是每次使用“新空白节点”的语法。

在该示例中,每个 [] 是一个不同的空白节点。查询与两个不同的变量非常相似。

SELECT ?first ?last ?workTel
WHERE {
  ?VAR_1 ab:firstName ?first ;
         ab:lastName ?last .
  OPTIONAL
  {?VAR_2 ab:workTel ?workTel . }
}

查询的两个部分之间没有形成连接。