我使用angular来绑定SPARQL查询的结果。
它很好用,直到我尝试使用SPARQL“STRAFTER”或“REPLACE”函数(下面的代码)绑定查询返回的数据,这些函数返回$ scope中的空白数据。但是如果我直接从Fuseki控制面板运行它并将输出设置为json,则相同的查询工作正常。
我使用的是Fuseki Server 1-1.1.2端点(SPARQL 1.1)。
以下是在Fuseki服务器中返回预期数据的查询:
CardIOCreditCardInfo *crediCard = [[CardIOCreditCardInfo alloc] init];
crediCard.cardNumber = @"CARD NUMBER";
imageView.image = [CardIOCreditCardInfo logoForCardType:[crediCard cardType]];
以下是在“$ http.get”调用中使用相同查询的HTML /角度代码,其响应以角度为单位回显为空白:
SELECT (strafter(str(?class),"#") AS ?className) (COUNT(?s) AS ?count )
{ ?s a ?class }
GROUP BY ?class ORDER BY DESC(?count)
为什么会出现这种情况?
答案 0 :(得分:0)
这可能是字符串引用问题,因为"
字符串由"
前面的#
终止。所以试试:
var query = encodeURIComponent('SELECT (strafter(str(?class),"#") AS ?className) (COUNT(?s) AS ?count ) WHERE { ?s a ?class } GROUP BY ?class ORDER BY DESC(?count)');