Why use eXist-db?
Day 10 Session 02 slot 01
We start with the question When to use XML?:
Answer: When you work with hierarchical data where sequence is important.
What is eXist-db?
- XML native database (https://exist-db.org/)
- XML Schema for validation
- Easily supports hierarchical relations via XQuery/XPath
- Documented in it self
- XForms -> reusable web components
- Full stack app platform
Features
- The Lucene Full-Text Indexing is robust and
performant.
- It includes configurable analyzers and parameters,
- and additional functions for working with Lucene document fields.
- Lucene indexing of binary files (conentent extraction), e.g. pdf
- eXide editing, app development, package management (xar archives) and repository installation (hot deploy) of these packages
- svn/git extension, working copy/repo in db etc
- web log extension atomic, publish atom feeds
- new authentication and access restriction model, allowing openid, oauth, ldap etc
- A vibrant community
eXist-db hard facts
- Almost 20 years since inception
- Around 40 stable releases
-
600K lines of code
- Estimated 250+ person years of effort, and around 16M EUR development cost
Packaged together as one experience
- Combining the powers of XML, XQuery with full text extensions, XForms, Atom publishing protocol (add more W3C standards) and XAR package management bring you a new level of convenience.
- Using the eXist-db XML database and eXide (eXist-db integrated development environment) for web application development you have this packaged together as one experience.
Apps (a selection)
I already showed you a few already. Usually the answer is there is an app for that, since eXist-db is probably the most feature rich XML database in the world. :)
- TEI publisher
- Building a sharing community around it too, EEditiones
- Geospatial index
- Function documentation
- Charting
- Sparql + xml-serialized RDF index app
- TEI graphing app
- OCR app
- NER + Stanford CoreNLP
- And more
[I show some old slides for images here.]