CDATA REST Connector - passing search keyword using pseudo column

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.

Hi,

Is there a reason that you made it a pseudo column? It seems to me that you would be fine doing something like in example 5, which (in my testing) I was able to do the BIND successfully