Has some cool looking useful new functionality: https://uima.apache.org/d/uimaj-3.0.0-alpha02/version_3_users_guide.htm l#uv3.overview.new
Support for arbitrary Java objects, transportable in the CAS New types: FSHashSet Automatic garbage collection of unreferenced Feature Structures better performance And an interesting new select api that interacts with java streaming api: Set<Type> foundTypes = myIndex.select(MyType.class) .coveredBy(myBoundingAnnotation) .nonOverlapping() .map(fs -> fs.getType()) .collect(Collectors.toCollection(TreeSet::new));