Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

A publicly-accessible SPARQL endpoint may 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.

...

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 additional details are  are the same as for the main repository.

Info

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

    (the parent of the repository home-directory

    ,

    ${REPO_HOME})

    create a directory

    "sparqler", and set an environmental variable ${SPARQLER_HOME}.  

    named sparqlerFor example, if

    the repository home

    your eagle-i home directory is /opt/eaglei

    /repo, then the sparqler home would be

    , you should be creating /opt/eaglei/sparqler.

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

    Code Block
    languagebash
    titledefine environment variable for sparqler home directory
    SPARQLER_HOME=/opt/eaglei/sparqler
    .
  3. Copy the

    file

    file ${REPO_HOME}/webapps/sparqler.war

    to

     to Tomcat's webapps directory

    Code Block
    languagebash
    titlecopy sparqler.war
    hms-mbp:eaglei user$ cp ${REPO_HOME}/webapps/sparqler.war /opt/tomcat7/webapps
  4. Add an additional system property

    to

    to catalina.properties:

...

  1. Code Block
    languagebash
    titlecatalina.properties
  1. org.eaglei.sparqler.home=/opt/eaglei/sparqler

...

  1. Run the

    script

    script ${REPO_HOME}/etc/prepare-install.sh

    with

     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):

    Code Block
    languagebash
    titlerun prepare-install.sh
    hms-mbp:eaglei user$
    No Format
    
     bash ${REPO_HOME}/etc/prepare-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD ${REPO_HOME} sparqler-users.derby
    
  2. Create and edit

    Copy the repository configuration file

    (

    to ${SPARQLER_HOME}.

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

    Code Block
    languagebash
    title$\{SPARQLER_HOME\}/configuration.properties
    ) - it should be identical to the main repository's config-file, with the following two exceptions - we set:
    No Format
    
    eaglei.repository.sesame.dir=${sys:org.eaglei.sparqler.home}/sesame
    eaglei.repository.log.dir=${sys:org.eaglei.sparqler.home}/logs
  4. Add two properties to your eagle-i-apps.properties file to define the source and target repositories: 

    Code Block
    languagebash
    title$\{EAGLEI_HOME\}/conf/eagle-i-apps.properties
    eaglei.sparqler.source.URL=https://localhost:8443/
    eaglei.sparqler.target.URL=https://localhost:8443/sparqler/
  5. Add credentials to the eagle-i-apps-credentials.properties file for access to the source and target repositories: 

    Code Block
    languagebash
    title
  6. Start up Tomcat
  7. $\{EAGLEI_HOME\}/.config/eagle-i-apps-credentials.properties
    # 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
  8. Start up tomcat
  9. Run the script

    Run the script 

    ${REPO_HOME}/etc/finish-install.sh, using the same sparqler-admin username and password that you set up in step

    1

    5, above, when you ran the "prepare-install.sh": 

    Code Block
    languagebash
    titlerun finish-install.sh
    hms-mbp:eaglei user$
    No Format
    
     bash ${REPO_HOME}/etc/finish-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD https://localhost:8443/sparqler
    

Synchronization

The sparqler repository keeps itself up-to-date with its source-repository by running a nightly synchronization process.  This is run automatically so long as the sparlqer and its source-repository are running - no intervention is required.

However, if for some reason the synchronization fails (look in sparqler/logs/repository.log), you can run the synchronizer manually by invoking the script ${REPO_HOME}/etc/synchronize-sparqler.sh as follows:

...

  1. /

...

  1. sparqler

...