How texttechnologylab/uce works
UCE is a configurable web explorer for UIMA-annotated corpora. Its main workflow is to import annotated documents, persist structured corpus data, then let users search and explore documents and annotations through the portal; optional services add semantic search and RAG. The README documents the importer-to-database flow and optional services. Some runtime wiring and several README-described capabilities are not shown in the sampled source, so those relationships are marked unverified rather than inferred as direct calls.
Main entry points: RAGService.java RAG service · Importer.java Corpus importer · search.js Search interface · SearchApi.java Search API
Components 17
Corpus ingestion
- Corpus importer
uce.portal/uce.corpus-importer/src/main/java/org/texttechnologylab/uce/corpusimporter/Importer.java - PostgreSQL corpus
Web exploration
- Web application
uce.portal/uce.web/src/main/java/org/texttechnologylab/uce/web/App.java - Search interface
uce.portal/resources/templates/js/search.js - Document reader
uce.portal/resources/templates/js/documentReader.js - Corpus visualizations
uce.portal/resources/templates/js/graphViz.js - Search API
uce.portal/uce.web/src/main/java/org/texttechnologylab/uce/web/routes/SearchApi.java - RAG chat UI
uce.portal/resources/templates/js/ragbot.js
Analysis and search
- Layered search
uce.portal/uce.search/src/main/java/org/texttechnologylab/uce/search/LayeredSearch.java - DUUI analysis
uce.portal/uce.analysis/src/main/java/org/texttechnologylab/uce/analysis/DUUIPipeline.java - Analysis results
uce.portal/uce.analysis/src/main/java/org/texttechnologylab/uce/analysis/modules/CohMetrixInfo.java
Optional services
- RDF semantic search
uce.portal/uce.common/src/main/java/org/texttechnologylab/uce/common/services/JenaSparqlService.java - RAG API
uce.portal/uce.web/src/main/java/org/texttechnologylab/uce/web/routes/RAGApi.java - RAG service
uce.portal/uce.common/src/main/java/org/texttechnologylab/uce/common/services/RAGService.java - Python ML service
rag/src/webserver.py
Other components
- Corpus user
- UIMA documents
Connections 16
- UIMA documents → Corpus importer: imports
README.md - Corpus importer → PostgreSQL corpus: stores documents
README.md - Corpus user → Web application: opens portal
- Corpus user → Search interface: searches corpus
- Search interface → Search API: submits query
- Search API → Layered search: runs search
- Layered search → PostgreSQL corpus: queries corpus
- Corpus user → Document reader: reads documents
- Corpus user → Corpus visualizations: explores corpus
- DUUI analysis → Analysis results: produces scores
uce.portal/uce.analysis/src/main/java/org/texttechnologylab/uce/analysis/DUUIPipeline.java - RDF semantic search → PostgreSQL corpus: enriches search
- Corpus user → RAG chat UI: asks questions
- RAG chat UI → RAG API: sends chat
- RAG API → RAG service: dispatches chat
uce.portal/uce.web/src/main/java/org/texttechnologylab/uce/web/routes/RAGApi.java - RAG service → Python ML service: requests model work
- RAG service → PostgreSQL corpus: retrieves corpus context