@Test public void testBaseUri() { // verify base has expected effect String relativeConstruct = "CONSTRUCT { <relative1> <relative2> <relative3> } \n" + "WHERE { ?s ?p ?o . } LIMIT 1"; SPARQLQueryDefinition qdef = smgr.newQueryDefinition(relativeConstruct); qdef.setBaseUri("http://marklogic.com/SPARQLQDefTest/"); JsonNode rdf = smgr.executeConstruct(qdef, new JacksonHandle()).get(); String subject = rdf.fieldNames().next(); assertEquals("base uri plus relative subject uri", "http://marklogic.com/SPARQLQDefTest/relative1", subject); String predicate = rdf.get(subject).fieldNames().next(); assertEquals("base uri plus relative predicate uri", "http://marklogic.com/SPARQLQDefTest/relative2", predicate); JsonNode objects = rdf.get(subject).get(predicate); assertEquals(1, objects.size()); assertEquals("base uri plus relative uri", "http://marklogic.com/SPARQLQDefTest/relative3", objects.path(0).path("value").asText()); }
qdef.setBaseUri("http://qa.marklogic.com/functional/tests/one/");
qdef2.setBaseUri(baseuri2); qdefNull.setBaseUri(baseuriNull); qdefEmpty.setBaseUri(baseuriEmpty); String expectedException = "FailedRequestException"; String exception = ""; qdefMB.setBaseUri(baseuriMB);
private SPARQLQueryDefinition prepareQueryDefinition(Query query) { JenaDatabaseClient client = markLogicDatasetGraph.getDatabaseClient(); SPARQLQueryDefinition qdef = client.newQueryDefinition(query.toString()); if (query.getBaseURI() != null) { qdef.setBaseUri(query.getBaseURI()); } else { query.setBaseURI((String) null); } if (markLogicDatasetGraph.getRulesets() != null) { qdef.setRulesets(markLogicDatasetGraph.getRulesets()); } bindVariables(qdef, this.initial, markLogicDatasetGraph); QueryDefinition constrainingQueryDefinition = markLogicDatasetGraph.getConstrainingQueryDefinition(); qdef.setConstrainingQueryDefinition(constrainingQueryDefinition); return qdef; }