No description, website, or topics provided.
Java JavaScript CSS HTML Other
Pull request Compare This branch is 2 commits ahead, 2 commits behind develop.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
doc
fagi-gis-common
fagi-gis-service
fagi-gis
samples
.gitattributes
.gitignore
README.md
upload.sh

README.md

FAGI-gis is a tool developed, mainly, to facilitate the fusion of interlinked RDF entities containing spatial data. It is designed to retrieve data through SPARQL endpoints. This allows for FAGI-gis to operate on already existing and publicly available datasets without the need for any special formatting or input. It also supports the fusion and handling of other, non-spatial metadata related to these entities. A detailed user guide for FAGI-gis is also provided for further reference.

The user provides the tool with two source datasets and a list of linked entities between them, either in file format or through an available SPARQL endpoint. The tool analyzes the datasets, discovering how geometric information is stored along with their accompanied metadata. Knowing the data structure, FAGI-gis offers the user various options and recommendations for fusing each entity pair into a new, fused, richer entity.

FAGI-gis consists of two components, namely, fagi-gis-cli and fagi-gis-service. The first offers a command line interface for basic fusion functionality and the latter provides a full fledged interactive user interface for advanced previewing and fusion actions on geometric data and their metadata.

On Linux, FAGI-gis comes as part of the GeoKnow Generator and the latest stable version can be installed through the ldstack repository. After, setting up the generator' s repository, a simple

sudo apt-get install fagi-gis-common fagi-gis fagi-gis-service

will install the tool on your local machine.

On Windows, there is an installer that comes with all the required components. The installer offers to create three shortcuts on the Desktop and it is strongly recommended to accept them for ease of use.

  1. A shortcut for starting tomcat7 (Currently requires to be Run As Administrator)
  2. A shortcut to start the provide Virtuoso triple store (Currently requires to be Run As Administrator)
  3. A shortcut to the FAGI-gis web interface

Upon installation, FAGI-gis will be available at "http://localhost:port/fagi-gis-service".

The main interface consists of a menu bar and a map preview. The user supplies his data sources and is presented with several options to control the fusion process. Geometric information is previewed on the map at all stages.

Manually Building FAGI-gis

Following is the set of dependency requirements. Mainly, FAGI-gis requires a Virtuoso Quad Store to handle the information in RDF format and a Postgres/Postgis installation for the geospatial data.


Dependencies

  • FAGI-gis is compatible with virtuoso-opensource-7.1 and 7.2, Postgresql-9.3 and tested in Linux x64 Mac OS X 10.6+ and Windows 7.
  • The latest Virtuoso is provided in binary form for Windows and needs to be compiled from source on Linux and Moac OS X. Both can be found on the Virtuoso-opensource github page
  • FAGI-gis uses wordnet for schema matching regarding the metadata fusion, and needs to be installed on your system:
    1. Linux sudo apt-get install wordnet.
    2. Mac OS X requires a custom build of Wordnet which requires an existing X11 installation.
    3. Windows support an older version of Wordnet which can be downloaded from here
  • FAGI-gis requires an existing installation of Apache Tomcat 7 for the web interface.
  • Install PostgreSQL with postgis extension:
    1. Linux sudo apt-get install postgresql-9.3-postgis-2.1 -f.
    2. Windows: download PostgreSQL from here and install it along with the postgis extension.

Building Instructions

Both projects are maintained using MAVEN. fagi-gis-service depends on fagi-gis lib

  • Command line:

    1. Download or checkout the FAGI-gis repo at a path of your choice:
      git clone https://github.com/GeoKnow/FAGI-gis targetDir
    2. Install in local maven repo the following two jars (not provided by maven repository).

      • Download: Virtuoso Jena 2.10.x Provider JAR file and Virtuoso JDBC 4 Driver JAR file that are provided here

      • Run:
        mvn install:install-file -Dfile=/path/to/virt_jena2.jar -DgroupId=virtuoso.jena.driver -DartifactId=virtjena -Dversion=2 -Dpackaging=jar

      • Run:
        mvn install:install-file -Dfile=/path/to/virtjdbc4.jar -DgroupId=virtuoso -DartifactId=vjdbc41 -Dversion=4.1 -Dpackaging=jar
    3. Go to /path/to/targetDir/fagi-gis and build the project by running:
      mvn package
    4. Go to /path/to/targetDir/fagi-gis-service and build the project by running:
      mvn package
  • Netbeans:

    1. Download or checkout the FAGI-gis repo at a path of your choice as above:
      git clone https://github.com/GeoKnow/FAGI-gis targetDir
    2. In Netbeans, File -> Open Project.
      Browse and choose fagi-gis and fagi-gis-service and click OK.
    3. Install the missing jars locally:
      • Download the two jars from the links provided above.
      • Click on the dependencies of the project, find the two missing jars, right click on them and then click "Manually install artifact".
      • Browse to the location of the jars and click OK.
    4. Click "Build Project".

After building the tools

FAGI-gis Web Interface version

  1. Add the produced fagi-gis-service.war (available in FAGI-gis/bin) in your Apache Tomcat 7 webapps directory.
  2. Open your browser at "http://localhost:port/fagi-gis-service" and use the FAGI-gis Interface!

FAGI-gis Command Line version

  1. Open the fusion.conf file and provide the appropriate configuration,
  2. Go to fagi-gis/target from terminal and run:
    java -jar fagi-gis -c /path/to/fusion.conf

Licence


The source code of this repo is published under the Apache License Version 2.0