Hello team
I was trying to connect with a REST API using CData REST API connector and I was following [REST Connector Configuration | Stardog Documentation Latest] (REST Connector Configuration | Stardog Documentation Latest) Example 9.
In my scenario, I wanted to pass a search keyword to the REST API.
So in my RSD file I added a pseudo column named keywords
<input name="keywords" required="true" />
and tried the below query
select * from <virtual://stardog>
where
{
?s <http://api.stardog.com/virtual_graphs#keywords> "test";
<http://api.stardog.com/virtual_graphs#title> ?title ;
}
This works well. I was able to get the response as RDF graph.
But when I tried to replace "test" with a variable ?keyword
.
select * from <virtual://stardog>
where
{
BIND("test" as ?keyword)
?s <http://api.stardog.com/virtual_graphs#keywords> ?keyword
<http://api.stardog.com/virtual_graphs#title> ?title ;
}
Query throws an error
The attribute keywords is required by Records.rsd
.
In the RSD file I removed required
attribute for keywords
<input name="keywords" />
Then I got the error
The value of the attribute could not be accessed: The attribute does not exist.
Even tried using <api:check attr="_input.keywords">
, then I see multiple HTTP calls to server and the Stardog Studio shows empty results.
Stardog version 8.1.0
CDATA REST Connector version 22.0.8322
Any help is appreciated.