Overview

A publicly-accessible SPARQL endpoint needs to be installed.  It takes the form of an additional repository which contains everything in the main repository which is public (i.e. not email-addresses, phone-numbers, etc.; not un-published resources).  It is affectionately known as the "sparqler" associated with this main repository.  It is synchronized with its main repository on a regular basis - typically every night.

Installation

The installation of a sparqler follows very much the same procedure as for the main repository, with one or two changes because it doesn't live at the same location.  The quick-start installation procedure is as follows - additional details are the same as for the main repository.

These instructions assume that a repository has already been installed and that ${REPO_HOME} has been defined as an environment variable.

  1. In the existing eagle-i home directory, create a directory named sparqlerFor example, if your eagle-i home directory is /opt/eaglei, you should be creating /opt/eaglei/sparqler.

    hms-mbp:eaglei user$ mkdir /sparqler
  2. Create an environment variable for the sparqler home directory, ${SPARQLER_HOME}. For example:

    SPARQLER_HOME=/opt/eaglei/sparqler
  3. Copy the file ${REPO_HOME}/webapps/sparqler.war to Tomcat's webapps directory. 

    hms-mbp:eaglei user$ cp ${REPO_HOME}/webapps/sparqler.war /opt/tomcat7/webapps
  4. Add an additional system property to catalina.properties:

    org.eaglei.sparqler.home=/opt/eaglei/sparqler
  5. Run the script ${REPO_HOME}/etc/prepare-install.sh with an additional argument: "sparqler-users.derby" (note that the username and password for the user you create here - who administers the sparqler - these should be different from the main repository's admin-user credentials):

    hms-mbp:eaglei user$ bash ${REPO_HOME}/etc/prepare-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD ${REPO_HOME} sparqler-users.derby
  6. Copy the repository configuration file to ${SPARQLER_HOME}.

    hms-mbp:eaglei user$ cp ${REPO_HOME}/configuration.properties ${SPARQLER_HOME}/configuration.properties
  7. Edit the newly created SPARQLER configuration file by changing the following two properties:

    eaglei.repository.sesame.dir=${sys:org.eaglei.sparqler.home}/sesame
    eaglei.repository.log.dir=${sys:org.eaglei.sparqler.home}/logs
  8. Add two properties to your eagle-i-apps.properties file to define the source and target repositories: 

    eaglei.sparqler.source.URL=https://localhost:8443/
    eaglei.sparqler.target.URL=https://localhost:8443/sparqler/
  9. Add credentials to the eagle-i-apps-credentials.properties file for access to the source and target repositories: 

    # The credentials for the source repository
    eaglei.sparqler.source.user=myRepositoryUser
    eaglei.sparqler.source.password=myRepositoryPassword
     
    # The credentials used by the prepare-install.sh above
    eaglei.sparqler.target.user=mySparqlerUser
    eaglei.sparqler.target.password=mySparqlerPassword
  10. Start up tomcat
  11. Run the script ${REPO_HOME}/etc/finish-install.sh, using the same sparqler-admin username and password that you set up in step 5, above, when you ran the "prepare-install.sh": 

    hms-mbp:eaglei user$ bash ${REPO_HOME}/etc/finish-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD https://localhost:8443/sparqler