In JavaType a type's enclosing type is determined from the FQN based on certain conventions, such as whether a segment of the FQN starts with a capital. By letting a user explicitly specify the enclosing type a more diverse package structure can be adopted.