在 sparql 查询中传递 cts:collection-query 时出错
On passing cts:collection-query inside sparql query getting an error
我正在使用MarkLogic 8
我正在尝试在 SPARQL
中传递 cts
内置函数
我试过 cts:contains
,效果很好。
但是当我尝试使用 cts:collection-query()
时出现错误 XDMP-EFFBOOLVALUE (err:FORG0006)
SPARQL 查询:
PREFIX cts: <http://marklogic.com/cts#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX xs: <http://www.w3.org/2001/XMLSchema>
SELECT ?s ?o
WHERE{
?s skos:prefLabel ?o .
FILTER cts:contains(?o, cts:word-query('agor*'))
FILTER cts:collection-query('thesaurus-work')
} LIMIT 100
完全错误:
[1.0-ml] XDMP-EFFBOOLVALUE: (err:FORG0006) ?s
http://www.w3.org/2004/02/skos/core#prefLabel ?o . FILTER
(cts:contains($o, cts:word-query("agor*"))) FILTER
(cts:collection-query("thesaurus-work")) -- Effective Boolean Value is
undefined for cts:collection-query("thesaurus-work")
我无法理解为什么会出现此错误。
请帮忙!
cts:collection-query() 是一个 returns 布尔值的表达式函数。
cts:collection-query() 是一个构造函数,returns 一个查询而不是用于 FILTER 的布尔值。
要将 SPARQL 查询限制为从与 cts:query 匹配的文档投影的三元组,您可以使用 cts:query 构造一个 sem:store 对象并传递 sem:store 对象在 sem:sparql() 调用中:
http://docs.marklogic.com/sem:store
http://docs.marklogic.com/sem:sparql
希望对您有所帮助,
我正在使用MarkLogic 8
我正在尝试在 SPARQL
cts
内置函数
我试过 cts:contains
,效果很好。
但是当我尝试使用 cts:collection-query()
时出现错误 XDMP-EFFBOOLVALUE (err:FORG0006)
SPARQL 查询:
PREFIX cts: <http://marklogic.com/cts#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX xs: <http://www.w3.org/2001/XMLSchema>
SELECT ?s ?o
WHERE{
?s skos:prefLabel ?o .
FILTER cts:contains(?o, cts:word-query('agor*'))
FILTER cts:collection-query('thesaurus-work')
} LIMIT 100
完全错误:
[1.0-ml] XDMP-EFFBOOLVALUE: (err:FORG0006) ?s http://www.w3.org/2004/02/skos/core#prefLabel ?o . FILTER (cts:contains($o, cts:word-query("agor*"))) FILTER (cts:collection-query("thesaurus-work")) -- Effective Boolean Value is undefined for cts:collection-query("thesaurus-work")
我无法理解为什么会出现此错误。 请帮忙!
cts:collection-query() 是一个 returns 布尔值的表达式函数。
cts:collection-query() 是一个构造函数,returns 一个查询而不是用于 FILTER 的布尔值。
要将 SPARQL 查询限制为从与 cts:query 匹配的文档投影的三元组,您可以使用 cts:query 构造一个 sem:store 对象并传递 sem:store 对象在 sem:sparql() 调用中:
http://docs.marklogic.com/sem:store
http://docs.marklogic.com/sem:sparql
希望对您有所帮助,