protected <T extends OWLEntity> EntityNameInfo generateName(Class<T> type, String shortName, IRI baseURI) throws AutoIDException, URISyntaxException, OWLEntityCreationException {
if (baseURI == null){
if (useDefaultBaseIRI() || mngr.getActiveOntology().getOntologyID().isAnonymous()){
baseURI = getDefaultBaseIRI();
}
else{
baseURI = mngr.getActiveOntology().getOntologyID().getOntologyIRI();
}
}
IRI iri;
String id = null;
if (isFragmentAutoGenerated()){
do{
id = getAutoIDGenerator().getNextID(type);
iri = createIRI(id, baseURI);
} while (isIRIAlreadyUsed(iri));
}
else {
iri = createIRI(shortName, baseURI);
if (isIRIAlreadyUsed(type, iri)){
throw new OWLEntityCreationException("Entity already exists: " + iri);
}
if (isGenerateIDLabel()){
id = getAutoIDGenerator().getNextID(type);
}
}
return new EntityNameInfo(iri, id, shortName);
}