Chapter 13. Integration

eXist provides many APIs, each of which allows you to integrate or interact with eXist in a different manner. eXist provides more than one API in the hope that at least one of them is already supported in the system or application the developer or user wishes to integrate with eXist.

eXist provides two classes of API:

Local API

These are intended for when a developer wishes to embed eXist as a library within his own application running on the JVM.

Remote API

These are intended for when eXist is run as a server and a user or application wishes to make requests to eXist. All of the remote APIs are developed as layers atop HTTP. There is nothing to stop you from using a remote API from the same machine that eXist is running on.

We have found that the majority of eXist users are interested in the remote class of API, as they either wish to use eXist as a database server and/or a web application server, so we will focus on the remote APIs first.

Choosing an API

As you are about to see, eXist offers many options for integration with existing systems and programming languages. Choosing the right one can be confusing, so we have produced flowchart in Figure 13-1 to help you with your decision.

Flowchart to help you choose an API for integration
Figure 13-1. Flowchart to help you choose an API for integration

The last choice in this flowchart—battle-worn or state-of-the-art?—may need some clarification. As way of explanation: ...

Get eXist now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.