Apache UIMA permet aux applications d'être décomposées en composants. UIMA offre en outre la possibilité d'encapsuler des composants en tant que services réseau et peut évoluer vers des volumes très importants en répliquant des pipelines de traitement sur un cluster de nœuds en réseau.