Sign inSign up

umids/into-the-graph

By umids

•Updated over 6 years ago

Visualize and browse the content of your RDF triplestore using HCLS statistics

Image
0

3.5K

umids/into-the-graph repository overview

⁠Lightweight RDF linked data browser

Browse a RDF triplestore by providing the SPARQL endpoint URL. The browser supports graphs, includes a YASGUI editor, and provides insights using precomputed HCLS descriptive statistics⁠.

Into-the-graph is built with ReactJS⁠ and Material-UI⁠ to serve and explore RDF data from any SPARQL endpoint (better performance using RDF4J server⁠).

This RDF linked data browser features:

  • A YASGUI⁠ SPARQL endpoint.
  • A Comunica widget⁠ to query Linked Data Fragments with SPARQL and GraphQL.
  • A web-based UI to browse the triplestore statements easily.
  • Insights about the content of the triplestore and its different graphs, using precomputed HCLS descriptives statistics⁠.

HCLS descriptive statistics⁠ for a graph can simply be computed and inserted running a docker run command. Follow those instructions⁠ to run it.

This service has been developed and used as part of the Data2Services⁠ framework.

Data2Services⁠ provides tools and guideline to easily integrate multiple structured data sources (CSV, RDB, XML) to a RDF knowledge graph, complying with a defined data model.

Checkout the documentation at d2s.semanticscience.org⁠

⁠Development

⁠Install dependencies
yarn install

# Add package to dev
yarn add my-package --dev
⁠Start the development server
yarn dev

⁠Docker

⁠Use the DockerHub build

You can use the prebuilt image available on DockerHub⁠.

# Pull
docker pull umids/into-the-graph

# Run
docker run --rm -it -p 8082:80 umids/into-the-graph
⁠Do a local build

Or build it locally, various parameters can be changed before build in settings.json⁠.

# Build
docker build -t into-the-graph .

# Run
docker run --rm -it -p 8082:80 into-the-graph

The following parameters can be changed in settings.json⁠:

  • sparql_endpoint: the SPARQL endpoint to browse

  • comunica_url: Comunica widget URL that will be displayed as an iFrame in the Comunica page

  • default_describe_uri: default URI used in the link to the Describe page in the navbar

  • prefixes: dictionary of prefixes and the corresponding namespaces used to resolve URIs in the web UI

  • search_query: the SPARQL query used when doing a search (allow to define SPARQL query using custom search indexes)

    • The SPARQL query should return ?searchUri and ?searchLabel as results of the search
    • Use $TEXT_TO_SEARCH to define the emplacement for the search text in the query
    • e.g. query using GraphDB full-text search⁠:
    PREFIX luc: <http://www.ontotext.com/owlim/lucene#>
    SELECT ?searchUri ?searchLabel {
      ?searchUri luc:labelIndex "*$TEXT_TO_SEARCH*" .
      ?searchUri luc:labelIndex ?searchLabel .
    }
    

    Note: in settings.json the query needs to be on one line.

TODO: pass settings.json⁠ at runtime

# Something like
docker run -v $(pwd)/settings.json:/usr/share/nginx/html/settings.json --rm -it -p 8082:80 into-the-graph
⁠Restart script

Convenience script to git pull, docker build and restart docker.

./restart_docker.sh

⁠Publish using Expo (experimental)

This feature is just a test,only try it if you know what you are doing!

Install expo-cli

npm install -g expo-cli

See GitHub repository⁠ and documentation to build standalone app⁠.

Using bycedric/expo-cli⁠ Docker image. On Docker: use yarn start to build using serve

First you need to have your app built in the web-build folder.

# To remove:
docker run --tty --interactive \
    --workdir /srv \
    --volume $HOME/into-the-graph:/srv \
    --env EXPO_CLI_USERNAME=vemonet \
    --env EXPO_CLI_PASSWORD=password \
    bycedric/expo-cli publish

Don't forget to change the path to the git repository ($HOME at the moment).

Tag summary

Content type

Image

Digest

Size

819.5 MB

Last updated

over 6 years ago

docker pull umids/into-the-graph