package com.siemens.taggingFramework; import org.junit.Test; import org.openrdf.model.Statement; import org.openrdf.model.impl.ValueFactoryImpl; import org.openrdf.query.GraphQueryResult; import org.openrdf.query.MalformedQueryException; import org.openrdf.query.QueryEvaluationException; import org.openrdf.query.QueryLanguage; import org.openrdf.repository.Repository; import org.openrdf.repository.RepositoryConnection; import org.openrdf.repository.RepositoryException; import org.openrdf.repository.sail.SailRepository; import org.openrdf.sail.memory.MemoryStore; public class DuplicateStatementTest2 { protected static ValueFactoryImpl factory = ValueFactoryImpl.getInstance(); public static final String NS = "http://www.example.com/vocabulary#"; public static final String NS_2 = "http://www.noop.com/"; public static final String ALICE = "Alice"; public static final String HAS_NAME = "hasName"; @Test public void simpleDuplicateEntryTest() throws Exception { Repository repository; repository = new SailRepository(new MemoryStore()); repository.initialize(); RepositoryConnection connection = repository.getConnection(); try { connection.setNamespace("voc", NS); addData(connection, 10); executeDescribe(connection); } finally { connection.close(); } } private void executeDescribe(RepositoryConnection connection) throws QueryEvaluationException, RepositoryException, MalformedQueryException { String query = "DESCRIBE ?alice {"; query += " ?alice <" + NS + HAS_NAME + "> ?name ."; query += " }"; System.out.println(query); GraphQueryResult result = connection.prepareGraphQuery(QueryLanguage.SPARQL, query).evaluate(); try { while (result.hasNext()) { Statement next = result.next(); System.out.println(next.toString()); } } finally { result.close(); } } private void addData(RepositoryConnection connection, int times) throws RepositoryException { for (int i = 0; i < times; i++) { connection.add(factory.createURI(NS_2 + ALICE), factory.createURI(NS + HAS_NAME), factory .createLiteral(ALICE)); } for (int i = 0; i < times; i++) { connection.add(factory.createURI(NS_2 + ALICE), factory.createURI(NS + HAS_NAME), factory .createLiteral("Betty")); } } }