📄 testontclass.java
字号:
/*****************************************************************************
* Source code information
* -----------------------
* Original author Ian Dickinson, HP Labs Bristol
* Author email ian.dickinson@hp.com
* Package Jena2
* Web site http://jena.sourceforge.net
* Created 07-Dec-2004
* Filename $RCSfile: TestOntClass.java,v $
* Revision $Revision: 1.8 $
* Release status $State: Exp $
*
* Last modified on $Date: 2007/01/02 11:51:55 $
* by $Author: andy_seaborne $
*
* (c) Copyright 2002, 2003, 2004, 2005, 2006, 2007 Hewlett-Packard Development Company, LP
* (see footer for full conditions)
*****************************************************************************/
// Package
///////////////
package com.hp.hpl.jena.ontology.impl.test;
// Imports
///////////////
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.rdf.model.test.ModelTestBase;
import com.hp.hpl.jena.reasoner.test.TestUtil;
import com.hp.hpl.jena.vocabulary.*;
/**
* <p>
* Misc. tests for OntClass, over and above those in
* {@link TestClassExpression}
* </p>
*
* @author Ian Dickinson, HP Labs (<a href="mailto:Ian.Dickinson@hp.com">email</a>)
* @version CVS $Id: TestOntClass.java,v 1.8 2007/01/02 11:51:55 andy_seaborne Exp $
*/
public class TestOntClass
extends ModelTestBase
{
// Constants
//////////////////////////////////
// Static variables
//////////////////////////////////
private static final String NS = "http://example.com/test#";
// Instance variables
//////////////////////////////////
// Constructors
//////////////////////////////////
public TestOntClass( String name ) {
super( name );
}
// External signature methods
//////////////////////////////////
public void testSuperClassNE() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );
OntClass a = m.createClass( NS + "A" );
assertNull( a.getSuperClass() );
assertFalse( a.hasSuperClass() );
}
public void testSubClassNE() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );
OntClass a = m.createClass( NS + "A" );
assertNull( a.getSubClass() );
assertFalse( a.hasSubClass() );
}
public void testCreateIndividual() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );
OntClass a = m.createClass( NS + "A" );
Individual i = a.createIndividual( NS + "i" );
assertTrue( i.hasRDFType(a) );
Individual j = a.createIndividual();
assertTrue( j.hasRDFType(a) );
}
public void testIsHierarchyRoot0() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot1() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM_RULE_INF );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot2() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM_RDFS_INF );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot3() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM_TRANS_INF );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot4() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_DL_MEM );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot5() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_LITE_MEM );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot6() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.DAML_MEM );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot7() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.DAML_MEM_RULE_INF );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot8() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.RDFS_MEM );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testIsHierarchyRoot9() {
OntModel m = ModelFactory.createOntologyModel( OntModelSpec.RDFS_MEM_RDFS_INF );
OntClass a = m.createClass( NS + "A" );
OntClass b = m.createClass( NS + "B" );
a.addSubClass( b );
assertTrue( a.isHierarchyRoot() );
assertFalse( b.isHierarchyRoot() );
}
public void testListSubClasses0() {
// no inference
OntModel m = createABCDEFModel( OntModelSpec.OWL_MEM );
OntClass a = m.getOntClass( NS + "A" );
OntClass b = m.getOntClass( NS + "B" );
OntClass c = m.getOntClass( NS + "C" );
OntClass d = m.getOntClass( NS + "D" );
OntClass e = m.getOntClass( NS + "E" );
OntClass f = m.getOntClass( NS + "F" );
TestUtil.assertIteratorValues( this, a.listSubClasses(), new Object[] {b,c} );
TestUtil.assertIteratorValues( this, a.listSubClasses( false ), new Object[] {b,c} );
TestUtil.assertIteratorValues( this, a.listSubClasses( true ), new Object[] {b,c} );
TestUtil.assertIteratorValues( this, b.listSubClasses( true ), new Object[] {d,e} );
}
public void testListSubClasses1() {
// rule inference
OntModel m = createABCDEFModel( OntModelSpec.OWL_MEM_RULE_INF );
OntClass a = m.getOntClass( NS + "A" );
OntClass b = m.getOntClass( NS + "B" );
OntClass c = m.getOntClass( NS + "C" );
OntClass d = m.getOntClass( NS + "D" );
OntClass e = m.getOntClass( NS + "E" );
OntClass f = m.getOntClass( NS + "F" );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -