The BaseX server makes all features of the database and the XQuery processor available to multiple users. It is lightweight and has a small memory footprint, and its HTTP services turn it into a platform for web applications.
Client/Server
The server offers central storage for millions of XML documents and binary files. Clients are available for Java, C#, Python, PHP and many other languages.
Transactions
The lock manager allows concurrent read operations and ensures ACID-safe write transactions.
User Management
Assign global and database-specific permissions to users. Authentication is salted, and passwords can be stored as PBKDF2 hashes.
Logging
All server activities, including queries, updates and HTTP requests, are logged with their runtime.
Jobs
Run queries asynchronously, schedule them with intervals or the cron syntax, and monitor or stop them at runtime.
RESTXQ
Build complete web applications and APIs in XQuery: Annotated functions are bound to URL paths, HTTP methods and content types. Applications can be deployed as ZIP archives.
WebSockets
Bidirectional communication between clients and server enables real-time web applications written in XQuery.
DBA
The redesigned, browser-based Database Administration interface lets you manage databases, users, jobs and logs and run queries on the server.
REST
Access databases, run queries and execute commands via HTTP. Results can be returned as XML, JSON and other formats.
WebDAV
Mount databases as network drives and store, edit and organize resources with any WebDAV-enabled file manager or editor.
All web services are available both as a standalone application and as a WAR archive, which can be deployed on any Jakarta EE servlet container.