ArgDB User Guide

ArgDB can be used in one of two ways: you can either communicate with a public-facing database created on the server hosted here at the university, or you can deploy ArgDB installation on a server of your own. This guide will take you through both processes.

Communicating with the UoD server

We host a public-facing database here at the university, which allows you to store AIF for use in your own applications, or just to contribute to a collaborative database of argumentation.

Communication is via a RESTful API, using the following base URL:

The following commands can then be appended to this URL (e.g. The return format is stated next to the description of the command

Database Information (JSON)

GET /public_db

Insert Argument (Plain-text ID number)

POST /public_db

Retrieve Argument (Argument Interchange Format)

GET /public_db/{argument_id}

(where {argument_id} is the ID of an argument stored in the database)

Deploying your own instance

ArgDB is available for download (coming soon!), meaning you can deploy your own instance.

At present, the software requires both MySQL and Apache CouchDB regardless of your intended deployment size. However, work is underway on a version that provide the option of an internal storage solution, allowing small-scale deployments to take place without requiring external software.

The following guide assumes that you have set up both MySQL and CouchDB as per the instructions on the relative websites. It also assumes you have set up a MySQL user with SPECIAL permissions (i.e. permission to CREATE and DROP database schemas).


(Note: at present, we only provide an installation script for Debian-based Linux systems. However, being Java-based, ArgDB can run on most popular operating systems, including Microsoft Windows)

  1. Upload the ‘argdb’ folder to a folder on your server
  2. In a terminal window, navigate into this folder
  3. Run the following command:

    sudo chmod 777

  4. Run:

    sudo ./

ArgDB should now be installed. To test, open up a web browser and visit:


If the installation has been successful, you will see a page with a link leading to a configuration screen. Click this link.


On the configuration screen, enter your database connection parameters and ArgDB is ready to use.

The following sections of this guide all require you to be on the page:


Creating a Database

Databases are created from the main page of ArgDB. You have two parameters: a name and a password.

Name – this is required, and will be used to identify the database. It cannot contain spaces

Password – this is optional and used to provide a basic level of authentication for applications that POST to the database

Deleting a Database

To delete a database, click “[Delete]” next to its name in the database listing.

Viewing Database Information

To view information about a database (in JSON format), click its name in the database listing. This includes information about:

  • The schemes stored in the database
  • The names of analysts who have contributed to the database
  • The number of arguments stored in the database

Code Libraries

Code libraries to allow easy communication with ArgDB are currently under development.

If you have any problems with ArgDB, either communicating with our server or deploying your own instance, please contact Chris, Simon or Mark.