An implementation of Semantic Pingback and PuSH for a DSSN
Latest commit f6a7384 Feb 14, 2016 @white-gecko white-gecko Add SVG logo


pronunciation: [ˈɛksodʊs]

This is an implementation of the basic functionalities of a DSSN Provider, as described in Tramp et al. An Architecture of a Distributed Semantic Social Network:

It is written in PHP and utilizes the Zend Framework, the Erfurt Framework and lib-dssn.

If you want to read more about xodx take a look at the wiki. In case you see any bugs or have feature-requests please follow the issue-workflow.


You need a webserver (tested with Apache and nginx but I hope it also runs with lighttd or any other webserver) and a database backend which is supported by Erfurt (Virtuoso and MySQL). Because this software is written in PHP you'll need php (>= 5.3.7) with the bindings for your webserver or fastcgi, PHP-support for your database (php-odbc or php-mysql) and php-curl.

Database Connection

Take the prepared config.ini-dist file, copy it to config.ini and configure it according to your system setup. If you have an OntoWiki runnnig you can copy the database connection section (store.*) into the config.ini of xodx. To import the initial base ontology for Erfurt you have to allow virtuoso to read the xodx directory. You can configure this by adding the directory to DirsAllowed in your virtuoso.ini (on debian systems you can find it at /etc/virtuoso-opensource-6.1/virtuoso.ini, if you are using the debian packages; or /var/lib/virtuoso/db/virtuoso.ini, if you are using the lod2 package or if you have build virtuoso from the source).

Erfurt, lib-dssn and Saft

Run make submodules to clone Erfurt, lib-dssn-php and Saft.

If make failes you can try it manually with git submodule init and git submodule update.


Zend is installed with make zend or alternatively you have to place a copy of the Zend framework library into libraries/Zend/ you can do this by doing the following things (replace ${ZENDVERSION} e.g. with 1.12.0):

tar xzf ZendFramework-${ZENDVERSION}-minimal.tar.gz
mv ZendFramework-${ZENDVERSION}-minimal/library/Zend libraries
rm -rf ZendFramework-${ZENDVERSION}-minimal.tar.gz ZendFramework-${ZENDVERSION}-minimal


In order to get the JavaScript dependencies twitter bootstrap and jquery run:

make resources

in the xodx root directory (should be the same directory where you found this file).

Code Conventions

Currently, this project is developed using OntoWiki's coding standard.


Xodx - An implementation of the basic functionalities of a DSSN Provider

Copyright (C) 2013 Natanael Arndt, Norman Radtke

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA, or see for more details.