Giter Club home page Giter Club logo

persemid-usecase's Introduction

Introduction

This is a proof-of-concept implementation (PoC) for a use case devised in the PerSemID-project at BFH, http://persemid.bfh.ch. It demonstrates a hypothetical workflow for exchanging information related to the enrollment for master studies at a university.

This application consists of three distinct views: one for the student, one for the university at which he's got his bachelor's degree and one for the university at which he tries to enroll for master studies. In real life, of course, these would be completly separated applications running at the respective parties, here they are only united for the ease of use of the PoC.

The main technologies demonstrated in this PoC are the exchange of data relevant to the process for enrollment in master studies using RDF as well as authentication and authorisation between the related parties using WebID.

Installation

Prerequisites:

Additionaly, for the installation of the required JavaScript-modules with npm (see below), the following utilities including their dependencies will be needed:

  • python (2.7 should be sufficient, 3.x should work)
  • make
  • g++

Refer to the respective manuals and best practises for your operating system for the installation of the above dependencies.

Ensure that the executables "node" and "npm" are in your path and can be started without any issues.

In case of troubles starting Fuseki, ensure that the two environment variables FUSEKI_HOME and FUSEKI_BASE point to the right directory.

Fuseki Configuration

  1. Start the Fuseki-server and access it by pointing your browser to http://localhost:3030 (replace localhost if needed by the host on which you have installed Fuseki and the other components). Note: if you are accessing Fuseki over the network, you may have to set the permissions in it's "shiro.ini" to be able to perform the following operations.

  2. In the Fuseki webinterface, go to the "manage datasets"-tab and click "add new dataset".

  3. Enter "persemid" as name for the new dataset, choose the other options according to your needs.

  4. Change to the "dataset"-tab and choose the "edit"-tab in the new view

  5. Enter "http://student.example.org" in the "graph:"-field and paste the contents of the file default-data/student.ttl into the textarea below, click "save".

  6. Enter "http://hbsc.example.org" in the "graph:"-field and paste the contents of the file default-data/hbsc.ttl into the textarea below, click "save".

  7. Enter "http://hmsc.example.org" in the "graph:"-field and paste the contents of the file default-data/hmsc.ttl into the textarea below, click "save".

  8. Click on the "list current graphs" button to the left of the textarea and ensure that you see the three freshly created graphs and some amount of triples in them, otherwise repeat the according steps above.

You have now successfully prepared Fuseki for the PerSemID-PoC.

Install and start the PerSemID-PoC

  1. Create the directories used to store user files:
   /tmp/psidimas/student
   /tmp/psidimas/hbsc
   /tmp/psidimas/hmsc
  1. Change into the directory containing the project-checkout

  2. Run the command "npm install" - this may take a while

  3. If no errors occured turing the install, the PerSemID-PoC can now be started using the command "npm start" at any time

Congratulations! You should now have successfully installed the PerSemID-PoC and can try it out by accessing it at http://localhost:8443 (or the host you're using for the installation)!

persemid-usecase's People

Contributors

mainini avatar

Watchers

James Cloos avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.