}
else if( kb.isDatatype( term ) ) {
types.add( RDFS.Datatype.asNode() );
}
else if( kb.isObjectProperty( term ) ) {
Role role = kb.getRole( term );
types.add( OWL.ObjectProperty.asNode() );
if( role.isFunctional() )
types.add( OWL.FunctionalProperty.asNode() );
if( role.isInverseFunctional() )
types.add( OWL.InverseFunctionalProperty.asNode() );
if( role.isTransitive() )
types.add( OWL.TransitiveProperty.asNode() );
if( role.isSymmetric() )
types.add( OWL.SymmetricProperty.asNode() );
if( role.isAsymmetric() )
types.add( OWL2.AsymmetricProperty.asNode() );
if( role.isReflexive() )
types.add( OWL2.ReflexiveProperty.asNode() );
if( role.isIrreflexive() )
types.add( OWL2.IrreflexiveProperty.asNode() );
}
else if( kb.isDatatypeProperty( term ) ) {
Role role = kb.getRole( term );
types.add( OWL.DatatypeProperty.asNode() );
if( role.isFunctional() )
types.add( OWL.FunctionalProperty.asNode() );
if( role.isInverseFunctional() )
types.add( OWL.InverseFunctionalProperty.asNode() );
}
else if( kb.isAnnotationProperty( term ) ) {
types.add( OWL.AnnotationProperty.asNode() );
}