class SimpleOntologyValues {

    public static Annotation mobiAnnotation(OWLAnnotation owlAnno) {
        // TODO: ??? Fix this.
        if (owlAnno == null) {
            return null;
        }

        AnnotationProperty property = mobiAnnotationProperty(owlAnno.getProperty());
        OWLAnnotationValue value = owlAnno.getValue();
        if (value instanceof OWLLiteral) {
            OWLLiteral literal = (OWLLiteral) value;
            Literal simpleLiteral = mobiLiteral(literal);
            return new SimpleAnnotation(property, simpleLiteral);
        } else if (value instanceof org.semanticweb.owlapi.model.IRI) {
            org.semanticweb.owlapi.model.IRI iri = (org.semanticweb.owlapi.model.IRI) value;
            IRI simpleIri = mobiIRI(iri);
            return new SimpleAnnotation(property, simpleIri);
        } else if (value instanceof OWLAnonymousIndividual) {
            OWLAnonymousIndividual individual = (OWLAnonymousIndividual) value;
            Individual simpleIndividual = mobiIndividual(individual);
            return new SimpleAnnotation(property, simpleIndividual);
        } else {
            throw new OWLRuntimeException("Invalid annotation value");
        }
    }

    public  SimpleOntologyValues();

}