Hi,
after the upgrade to 3.16.0-SNAPSHOT some queries that worked with
3.0.1 do not return results anymore.
I tried to narrow it down to a test case:
private final String data =
"<https://localhost:4443/admin/acl/public-keys/09d7f482-6bc8-4bef-887f-6d63bc4ebc2a/#this>
<http://www.w3.org/ns/auth/cert#modulus>
\"a0a15887e44bab6c36862c54771324604d55bda36d2c015cbad2dc6528b5c33e01103cfbeb9c8b8a22e7d74c66fc950f0f82616412fc8c5028e9384651d4f40c7c1d40c9b861191894537d719a5098c1eea5521d2273613cdd91563205fa3e25f99ecacc04824b07449087499a6a53a81a6b1d838406a97a0f7d691257fd4cd10662afbdebdbddacb9631a255930470e866949b5e8684b38d82141263f5c6c029f716a026c31f139b3f1164cfc1865283256f75cad0ee23318ca2323bc37704124f4d17f77763314c2ed92a71b2df5a960be83acb83285e1eda6bfb5af6f3f1342487ef961cc96b3680f544626f88c611fbcb2e03c06b261b838f72ecac59831\"^^<http://www.w3.org/2001/XMLSchema#hexBinary>
.";
private final Model model = ModelFactory.createDefaultModel();
private final String queryString = "PREFIX cert:
<http://www.w3.org/ns/auth/cert#>\n" +
"\n" +
"SELECT *\n" +
"WHERE\n" +
" { ?key cert:modulus
\"a0a15887e44bab6c36862c54771324604d55bda36d2c015cbad2dc6528b5c33e01103cfbeb9c8b8a22e7d74c66fc950f0f82616412fc8c5028e9384651d4f40c7c1d40c9b861191894537d719a5098c1eea5521d2273613cdd91563205fa3e25f99ecacc04824b07449087499a6a53a81a6b1d838406a97a0f7d691257fd4cd10662afbdebdbddacb9631a255930470e866949b5e8684b38d82141263f5c6c029f716a026c31f139b3f1164cfc1865283256f75cad0ee23318ca2323bc37704124f4d17f77763314c2ed92a71b2df5a960be83acb83285e1eda6bfb5af6f3f1342487ef961cc96b3680f544626f88c611fbcb2e03c06b261b838f72ecac59831\"^^<http://www.w3.org/2001/XMLSchema#hexBinary>
.\n" +
" }";
@Test
public void testXsdHexBinary()
{
RDFDataMgr.read(model, new
ByteArrayInputStream(data.getBytes(StandardCharsets.UTF_8)), null,
Lang.NTRIPLES);
Query query = QueryFactory.create(queryString);
try (QueryExecution qex = QueryExecutionFactory.create(query, model))
{
ResultSet resultSet = qex.execSelect();
assertTrue(resultSet.hasNext());
}
}
The test fails as there is no result.
What baffles me is that if I save the data and the query into files
and run sparql --data=test.nt --query=test.rq, I get the expected
result:
---------------------------------------------------------------------------------------------
| key
|
=============================================================================================
|
<https://localhost:4443/admin/acl/public-keys/09d7f482-6bc8-4bef-887f-6d63bc4ebc2a/#this>
|
---------------------------------------------------------------------------------------------
test.nt:
<https://localhost:4443/admin/acl/public-keys/09d7f482-6bc8-4bef-887f-6d63bc4ebc2a/#this>
<http://www.w3.org/ns/auth/cert#modulus>
"a0a15887e44bab6c36862c54771324604d55bda36d2c015cbad2dc6528b5c33e01103cfbeb9c8b8a22e7d74c66fc950f0f82616412fc8c5028e9384651d4f40c7c1d40c9b861191894537d719a5098c1eea5521d2273613cdd91563205fa3e25f99ecacc04824b07449087499a6a53a81a6b1d838406a97a0f7d691257fd4cd10662afbdebdbddacb9631a255930470e866949b5e8684b38d82141263f5c6c029f716a026c31f139b3f1164cfc1865283256f75cad0ee23318ca2323bc37704124f4d17f77763314c2ed92a71b2df5a960be83acb83285e1eda6bfb5af6f3f1342487ef961cc96b3680f544626f88c611fbcb2e03c06b261b838f72ecac59831"^^<http://www.w3.org/2001/XMLSchema#hexBinary>
.
test.rq:
PREFIX cert: <http://www.w3.org/ns/auth/cert#>
SELECT *
WHERE
{ ?key cert:modulus
"a0a15887e44bab6c36862c54771324604d55bda36d2c015cbad2dc6528b5c33e01103cfbeb9c8b8a22e7d74c66fc950f0f82616412fc8c5028e9384651d4f40c7c1d40c9b861191894537d719a5098c1eea5521d2273613cdd91563205fa3e25f99ecacc04824b07449087499a6a53a81a6b1d838406a97a0f7d691257fd4cd10662afbdebdbddacb9631a255930470e866949b5e8684b38d82141263f5c6c029f716a026c31f139b3f1164cfc1865283256f75cad0ee23318ca2323bc37704124f4d17f77763314c2ed92a71b2df5a960be83acb83285e1eda6bfb5af6f3f1342487ef961cc96b3680f544626f88c611fbcb2e03c06b261b838f72ecac59831"^^<http://www.w3.org/2001/XMLSchema#hexBinary>
.
}
What is the explanation here?
Thanks.