Internal server error from namespace() SPARQL function with 5.0 Beta

Being unable to find any documentation on the SPARQL Query functions in Table 10 I tried the following via web console which resulted in Internal server error:
select ?s ?t where {?s rdf:type owl:Class. bind( stardog:namespace(?s) as ?t) }
(without the stardog: prefix I got a syntax error for namespace).

I’m not sure what table you’re referring to about Table 10 but the Stardog documentation for functions is located at https://docs.stardog.com/#_sparql_query_functions

It looks like Stardog includes stardog: as a default namespace mapped to tag:stardog:api: but the stardog function namespace should be tag:stardog:api:functions:. You can either change the default namespace or use something else like stardogf for your prefix or include and use the afn namespace instead. The following should work fine.

prefix stardogf: <tag:stardog:api:functions:>

select ?s ?t  where {?s rdf:type owl:Class. bind( stardogf:namespace(?s) as ?t) }

Calling that function without a namespace shouldn’t work as it’s not a SPARQL builtin function.

1 Like

Thanks, yes the different definition of the stardog prefix in the console compared to the table, is what threw me (I should have looked more closely). It’s working fine for me now, but I think others could also run into this: may I suggest that stardogf be pre-declared and used in the table, or use stardog-api in the console?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.