SPARQL扩展函数,在哪里添加到SPARQL语法?

SPARQL扩展函数,在哪里添加到SPARQL语法?,sparql,grammar,jena,arq,Sparql,Grammar,Jena,Arq,我想知道当我使用ApacheJena arq创建sparql扩展函数时,它是在哪里添加到语法sparql的,用于属性函数和过滤器函数。语法没有改变 一个新的表达式函数有一个URI,它作为 BIND(my:function(?x,?y) AS ?newValue) 或在过滤器、选择表达式等中 使用FunctionRegistry.get().put(..)注册或使用自动加载 属性函数是三重模式中的属性: ?S my:propertyFunction ?O . 使用PropertyFunctio

我想知道当我使用ApacheJena arq创建sparql扩展函数时,它是在哪里添加到语法sparql的,用于属性函数和过滤器函数。

语法没有改变

一个新的表达式函数有一个URI,它作为

BIND(my:function(?x,?y) AS ?newValue)
或在过滤器、选择表达式等中

使用
FunctionRegistry.get().put(..)
注册或使用
自动加载

属性函数是三重模式中的属性:

?S my:propertyFunction ?O .

使用
PropertyFunctionRegistry.get().put(..)

语法SPARQL中的primaryExpression是什么?extesion函数不是sparql吗?完整的引号是“PrimaryExpression语法规则可以是对由IRI命名的扩展函数的调用。”而由IRI命名的是规则:
[128]iriOrFunction::=IRI ArgList?
,这就是我在回答中使用的。