@Test public void testCornerCase() throws ContentTransformationException { URI application = URI.create("http://localhost:8080/ldp4j-server-tckf/ldp4j/"); URI endpoint = application.resolve("api/basic_container/"); URI alternative = URI.create("http://www.ldp4j.org/ldp4j-server-tckf/ldp4j/api/basic_container/"); String rawEntity = loadResource("/data/public-uri-clash.ttl"); TripleResolver safeResolver= TripleResolver. builder(). withApplication(application). withEndpoint(endpoint). withAlternative(alternative). withEntity(rawEntity,this.mediaType). build(); int count=0; for(TripleResolution resolution:safeResolver.tripleResolutions()) { System.out.printf( "[%03d] %s%n - Subject: %s%n - Object.: %s%n", ++count, resolution.triple(), resolution.subjectResolution(), resolution.objectResolution()); } }
@Test public void testRoundtrip() throws ContentTransformationException { URI application = URI.create("http://www.example.org/target/"); URI endpoint = application.resolve("resource/"); URI alternative = URI.create("http://www.ldp4j.org/target/resource/"); String rawEntity = loadResource("/data/example_without_base.ttl"); TripleResolver safeResolver= TripleResolver. builder(). withApplication(application). withEndpoint(endpoint). withAlternative(alternative). withEntity(rawEntity,this.mediaType). build(); int count=0; for(TripleResolution resolution:safeResolver.tripleResolutions()) { System.out.printf( "[%03d] %s%n - Subject: %s%n - Object.: %s%n", ++count, resolution.triple(), resolution.subjectResolution(), resolution.objectResolution()); } }
private DataSet surrogateUnmarshall(String entity, URI endpoint) throws ContentTransformationException { TripleResolver tripleResolver= TripleResolver. builder(). withApplication(this.applicationBase). withEndpoint(endpoint). withAlternative(createAlternative(endpoint)). withEntity(entity, this.mediaType). build(); DataSet dataSet=DataSets.createDataSet(NamingScheme.getDefault().name(endpoint)); ValueAdapter adapter=new ValueAdapter(resourceResolver,dataSet); for(TripleResolution tripleResolution:tripleResolver.tripleResolutions()) { Triple triple=tripleResolution.triple(); Individual<?,?> individual=adapter.getIndividual(triple.getSubject(),tripleResolution.subjectResolution()); individual. addValue( triple.getPredicate().getIdentity(), adapter.getValue(triple.getObject(),tripleResolution.objectResolution())); } return dataSet; }