A TEI publishing application for Syriac texts and manuscripts, built on a ultra-reliable version of the Gaddel framework.
This application provides a digital platform for publishing and exploring Syriac corpus materials encoded in TEI XML. Originally based on the Gaddel framework developed for Syriaca.org, it has been adapted for Syriac manuscript and text collections.
- Multi-lingual Interface - Browse and search in multiple languages
- TEI Processing - Convert TEI XML to JSON for searching, browsing, and display
- TEI Processing - Convert TEI XML to HTML for item pages
- Faceted Search - Filter and browse by author, date, and catalog
- Full-text Search - Search within Syriac texts and translations
- Multi-format Export - HTML, TEI, JSON formats
- SPARQL Integration - RDF triplestore and SPARQL endpoint support
- Python 3.7+ (for TEI processing and testing)
# Clone repository
git clone <repository-url>
cd syriac-corpus-app
# Install Python dependencies
pip install lxml pytest
TEI files must include a unique identifier:
<tei:publicationStmt>
<tei:idno type="URI">unique-identifier</tei:idno>
</tei:publicationStmt>syriac-corpus-app/
├── resources/ # CSS, JS, fonts, images
├── siteGenerator/ # XSL templates and components
├── documentation/ # API and wiki documentation
├── exampleData/ # Sample TEI, JSON, HTML files
├── tei2json.py # TEI to JSON converter
├── index.html # Main entry point
└── *.html # Page templates
repo-config.xml- Configure data paths and unique identifierscontroller.xql- Define URL routing and request handling
See DEV_PROCESS.md for detailed development workflow, testing procedures, and contribution guidelines.
The application extracts the following from TEI files:
- Title and author information
- Work and catalog URIs (Syriaca.org references)
- Composition dates
- Section divisions with Syriac text
- Full-text content for search indexing in any language
See LICENSE for details.