0

I want to know when i creating sparql extension functions with apache jena arq, where is it added to the grammar sparql, for the property function and filter function.

1 Answers1

2

The grammar does not change.

A new expression function has a URI and it's invoked as

BIND(my:function(?x,?y) AS ?newValue)

or in FILTER, in SELECT expressions etc.

Register with FunctionRegistry.get().put(....) or use <java:...> for auto-loading.

A property function is a property in a triple pattern:

?S my:propertyFunction ?O .

Register with PropertyFunctionRegistry.get().put(....)

AndyS
  • 16,345
  • 17
  • 21
  • what is about primaryExpression in grammar SPARQL? isn't a extesion function sparql? – Hmaida Abdelhedi Dec 27 '15 at 23:39
  • The full quote is "A PrimaryExpression grammar rule can be a call to an extension function named by an IRI." and the naming by IRI is rule: `[128] iriOrFunction ::= iri ArgList?` which is what I used in the answer. – AndyS Dec 29 '15 at 08:56