📄 testontdocumentmanager.java
字号:
assertTrue( mgr.getProcessImports() );
mgr.setProcessImports( false );
assertFalse( mgr.getProcessImports() );
mgr.reset();
assertTrue( mgr.getProcessImports() );
mgr.setMetadataSearchPath( "file:foo.xml", true );
assertEquals( "file:foo.xml", mgr.getMetadataSearchPath() );
mgr.reset();
assertEquals( "file:foo.xml", mgr.getMetadataSearchPath() );
assertTrue( mgr.getCacheModels() );
mgr.setCacheModels(false );
assertFalse( mgr.getCacheModels() );
mgr.reset();
assertTrue( mgr.getCacheModels() );
assertTrue( mgr.useDeclaredPrefixes() );
mgr.setUseDeclaredPrefixes( false );
assertFalse( mgr.useDeclaredPrefixes() );
mgr.reset();
assertTrue( mgr.useDeclaredPrefixes() );
}
public void testDoAltMapping() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertEquals( "file:vocabularies/owl.owl", odm.doAltURLMapping( "http://www.w3.org/2002/07/owl" ));
assertEquals( "http://example.com/nocache", odm.doAltURLMapping( "http://example.com/nocache" ));
}
public void testGetLanguage() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertEquals( ProfileRegistry.OWL_LANG, odm.getLanguage( "http://www.w3.org/2002/07/owl" ));
assertNull( odm.getLanguage( "http://example.com/notthere" ));
}
public void testGetPrefixForURI() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertEquals( "owl", odm.getPrefixForURI( "http://www.w3.org/2002/07/owl#" ));
assertNull( odm.getPrefixForURI( "http://example.com/notthere" ));
}
public void testGetURIForPrefix() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertEquals( "http://www.w3.org/2002/07/owl#", odm.getURIForPrefix( "owl" ));
assertNull( odm.getURIForPrefix( "http://example.com/notthere" ));
}
public void testAddModel0() {
OntDocumentManager odm = OntDocumentManager.getInstance();
Model m = ModelFactory.createDefaultModel();
String uri = "http://example.com/test#m";
assertNull( odm.getModel( uri ));
odm.addModel( uri, m );
assertSame( m, odm.getModel(uri));
}
public void testAddModel1() {
OntDocumentManager odm = OntDocumentManager.getInstance();
Model m0 = ModelFactory.createDefaultModel();
Model m1 = ModelFactory.createDefaultModel();
String uri = "http://example.com/test#m";
assertNull( odm.getModel( uri ));
odm.addModel( uri, m0 );
// add duplicate with no replace
odm.addModel( uri, m1 );
assertSame( m0, odm.getModel(uri));
// add duplicate with replace
odm.addModel( uri, m1, true );
assertSame( m1, odm.getModel(uri));
}
public void testClearCache() {
OntDocumentManager odm = OntDocumentManager.getInstance();
Model m = ModelFactory.createDefaultModel();
String uri = "http://example.com/test#m";
assertNull( odm.getModel( uri ));
odm.addModel( uri, m );
odm.clearCache();
assertSame( null, odm.getModel(uri));
}
public void testForget() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertEquals( "file:vocabularies/owl.owl", odm.doAltURLMapping( "http://www.w3.org/2002/07/owl" ) );
assertEquals( "http://www.w3.org/2002/07/owl#", odm.getLanguage( "http://www.w3.org/2002/07/owl"));
OntModel m = ModelFactory.createOntologyModel();
odm.addModel( "http://www.w3.org/2002/07/owl#", m );
assertNotNull( odm.getModel( "http://www.w3.org/2002/07/owl#" ));
odm.forget( "http://www.w3.org/2002/07/owl#" );
odm.forget( "http://www.w3.org/2002/07/owl" );
assertEquals( "http://www.w3.org/2002/07/owl", odm.doAltURLMapping( "http://www.w3.org/2002/07/owl" ) );
assertNull( odm.getLanguage( "http://www.w3.org/2002/07/owl"));
assertNull( odm.getModel( "http://www.w3.org/2002/07/owl#" ));
}
public void testGetOntology() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
OntModel m = odm.getOntology( "http://www.w3.org/2002/07/owl", OntModelSpec.OWL_MEM );
assertNotNull( m );
assertSame( odm, m.getDocumentManager() );
OntModel m1 = odm.getOntology( "http://www.w3.org/2002/07/owl", OntModelSpec.OWL_MEM );
assertSame( m, m1 );
}
public void testProcessImports() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertTrue( odm.getProcessImports() );
odm.setProcessImports( false );
assertFalse( odm.getProcessImports() );
}
public void testCacheModels() {
OntDocumentManager odm = new OntDocumentManager( "file:etc/ont-policy-test.rdf" );
assertTrue( odm.getCacheModels() );
odm.setCacheModels( false );
assertFalse( odm.getCacheModels() );
}
public void testManualAssociation() {
OntDocumentManager odm = new OntDocumentManager( (String) null );
odm.addPrefixMapping( "http://www.w3.org/2002/07/owl#", "owl" );
assertEquals( "prefix for owl not correct", "owl", odm.getPrefixForURI( "http://www.w3.org/2002/07/owl#" ));
assertEquals( "URI for owl not correct", "http://www.w3.org/2002/07/owl#", odm.getURIForPrefix( "owl" ));
odm.addAltEntry( "http://www.w3.org/2002/07/owl", "file:foo.bar" );
assertEquals( "Failed to retrieve cache location", "file:foo.bar", odm.doAltURLMapping( "http://www.w3.org/2002/07/owl" ) );
odm.addLanguageEntry( "http://www.w3.org/2002/07/owl", "http://www.w3.org/2002/07/owl" );
assertEquals( "Failed to retrieve language", "http://www.w3.org/2002/07/owl", odm.getLanguage( "http://www.w3.org/2002/07/owl" ) );
}
public void testIgnoreImport() {
OntDocumentManager odm = new OntDocumentManager();
TestUtil.assertIteratorLength( odm.listIgnoredImports(), 0 );
odm.addIgnoreImport( "file:testing/ontology/testImport3/c.owl" );
TestUtil.assertIteratorLength( odm.listIgnoredImports(), 1 );
assertTrue( odm.ignoringImport( "file:testing/ontology/testImport3/c.owl"));
assertFalse( odm.ignoringImport( "file:testing/ontology/foo.owl"));
OntModelSpec spec = new OntModelSpec( null, odm, null, ProfileRegistry.OWL_LANG );
OntModel m = ModelFactory.createOntologyModel( spec, null );
assertNotNull( "Ontology model should not be null", m );
m.read( "file:testing/ontology/testImport3/a.owl" );
assertEquals( "Marker count not correct", 2, countMarkers( m ));
odm.removeIgnoreImport( "file:testing/ontology/testImport3/c.owl" );
TestUtil.assertIteratorLength( odm.listIgnoredImports(), 0 );
assertFalse( odm.ignoringImport( "file:testing/ontology/testImport3/c.owl"));
}
/** Simple case: a imports b, b imports c, remove c */
public void testUnloadImport1() {
OntModel m = ModelFactory.createOntologyModel();
m.read( "file:testing/ontology/testImport3/a.owl" );
assertEquals( "Marker count not correct", 3, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
m.getDocumentManager().unloadImport( m, "file:testing/ontology/testImport3/c.owl" );
assertEquals( "Marker count not correct", 2, countMarkers( m ) );
assertFalse( "c should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
}
/** case 2: a imports b, b imports c, remove b */
public void testUnloadImport2() {
OntModel m = ModelFactory.createOntologyModel();
m.read( "file:testing/ontology/testImport3/a.owl" );
assertEquals( "Marker count not correct", 3, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
assertTrue( "b should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/b.owl" ) );
m.getDocumentManager().unloadImport( m, "file:testing/ontology/testImport3/b.owl" );
assertEquals( "Marker count not correct", 1, countMarkers( m ) );
assertFalse( "c should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
assertFalse( "b should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/b.owl" ) );
}
/** case 3: a imports b, b imports c, a imports d, d imports c, remove b */
public void testUnloadImport3() {
OntModel m = ModelFactory.createOntologyModel();
m.read( "file:testing/ontology/testImport6/a.owl" );
assertEquals( "Marker count not correct", 4, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/c.owl" ) );
assertTrue( "b should be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/b.owl" ) );
assertTrue( "d should be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/d.owl" ) );
m.getDocumentManager().unloadImport( m, "file:testing/ontology/testImport6/b.owl" );
assertEquals( "Marker count not correct", 3, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/c.owl" ) );
assertTrue( "d should be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/d.owl" ) );
assertFalse( "b should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport6/b.owl" ) );
}
public void testDynamicImports1() {
OntModel m = ModelFactory.createOntologyModel();
Resource a = m.getResource( "file:testing/ontology/testImport3/a.owl" );
Resource b = m.getResource( "file:testing/ontology/testImport3/b.owl" );
m.add( a, m.getProfile().IMPORTS(), b );
// not dymamically imported by default
assertEquals( "Marker count not correct", 0, countMarkers( m ) );
assertFalse( "c should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
assertFalse( "b should not be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/b.owl" ) );
}
public void testDynamicImports2() {
OntModel m = ModelFactory.createOntologyModel();
Resource a = m.getResource( "file:testing/ontology/testImport3/a.owl" );
Resource b = m.getResource( "file:testing/ontology/testImport3/b.owl" );
m.setDynamicImports( true );
m.add( a, m.getProfile().IMPORTS(), b );
// dymamically imported
assertEquals( "Marker count not correct", 2, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
assertTrue( "b should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/b.owl" ) );
}
public void testDynamicImports3() {
OntModel m = ModelFactory.createOntologyModel();
m.read( "file:testing/ontology/testImport3/a.owl" );
assertEquals( "Marker count not correct", 3, countMarkers( m ) );
assertTrue( "c should be imported", m.hasLoadedImport( "file:testing/ontology/testImport3/c.owl" ) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -