labelingsystem-server

Labeling System RESTful Server Application

https://github.com/mainzed/labelingsystem-server

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.0%) to scientific vocabulary

Keywords

api labelingsystem server
Last synced: 6 months ago · JSON representation ·

Repository

Labeling System RESTful Server Application

Basic Info
Statistics
  • Stars: 3
  • Watchers: 2
  • Forks: 1
  • Open Issues: 9
  • Releases: 1
Topics
api labelingsystem server
Created over 9 years ago · Last pushed over 3 years ago
Metadata Files
Readme License Citation

README.md

Labeling System Server

build version java maven output docs license

The Labeling System offers experts the possibility to create concepts with context-bound validity, to concretize, to group in containers (vocabularies) and to share them with the research community. The LS provides user-friendly web tools that allow semantic linking of terms into the Linked Open Data Cloud. Once vocabularies are published, the LS serves as a distributed repository of concepts (concept-gazetteer), which provides citable addresses on the Web (URI). Each generated concept is explicit assigned to its creator. This assured authorship yield in a clear responsibility for data maintenance.

The Labeling System consists of two components: the server and the client wep-app. The datamodel used in the backend is represented in an ontology using linked data vocabularies. This repository represents the server component of the Labeling System.

Server Components

war-files

api.war

RESTful API for Labeling System applications.

API Documentation (Version 1): APIdoc

item.war

RESTful API to provide cool URIs for Labeling System items.

databases

RDF4J triplestore and SQlite databases

web server

nginx and Tomcat

Setup

required

  • Java 8
  • Tomcat
  • RDF4J 2.0 (server, workbench (opt.))
  • Labeling System war-files

recommended

  • CentOS (Linux release 7.2.1511 (Core))
  • nginx (nginx/1.6.3) (Port 80)
  • Tomcat (Version 8.5.4) (Port 8080)
  • Java (openjdk version "1.8.0101") (OpenJDK Runtime Environment (build 1.8.0101-b13)) (OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode))
  • RDF4J (server and workbench 2.0)
  • SQlite support

folder structure

  • recommended
    • [...] = /opt
    • [tomcat] = /opt/tomcat

required foldes and files with r/w rights for Tomcat

  • /[...]/db/
  • /[tomcat]/webapps/share/
  • /[tomcat]/webapps/dump/
  • /[tomcat]/webapps/ROOT/

required files

  • /[tomcat]/webapps/api.war
  • /[tomcat]/webapps/item.war
  • /[tomcat]/webapps/rdf4j-server.war
  • /[tomcat]/webapps/rdf4j-workbench.war (optional)
  • /[...]/db/ls.sqlite (db with r/w rights for Tomcat)

How to set-up the server?

  • install CentOS
  • install nginx
  • install OpenJDK
  • install Tomcat
  • configure nginx (Port 80) and Tomcat (Port 8080)
  • create folders and set r/w rights for Tomcat role
  • copy dump script to /opt folder (if data is not in opt folder, change paths in shell script)
  • start dump cron job
  • get hashed admin and demo password via /auth/hash and write it to sqlite database
  • copy SQLite and Person database into db folder and set full r/w rights (chmod 777)
  • deploy war files for triplestore (rdf4j-server.war, rdf4j-workbench.war)
  • create labelingsystem and datahub repository in RDF4J
  • modify default triples
  • fill labelingsystem repository with default triples
  • configure application in their WAR packages using config[XXX].properties
  • deploy war files for ls backend (api.war, item.war)
  • configure frontend app and set host for API
  • deploy Labeling System frontend app
  • deploy Label Explorer

Development Hints

The code was developed in NetBeans IDE 8.1, using Java EE 7 Web, JDK 1.8 and Maven 4.0.

Credits

Developers:

  • Florian Thiery M.Sc.
    • Institut für Raumbezogene Informations- und Messtechnik (i3mainz)
    • Römisch-Germanisches Zentralmuseum, Leibniz-Forschungsinstitut für Archäologie (RGZM)
    • Mainzer Zentrum für Digitalität in den Geistes- und Kulturwissenschaften (mainzed)

Owner

  • Name: mainzed
  • Login: mainzed
  • Kind: organization
  • Location: Mainz, Germany

Mainz Centre for Digitality in the Humanities and Cultural Studies

Citation (CITATION.cff)

cff-version: 1.1.0
message: If you use this software, please cite it as below.
authors:
  - family-names: Thiery
    given-names: Florian
    orcid: https://orcid.org/0000-0002-3246-3531
title: "Labeling System Server Application"
version: 0.1
doi: 10.5281/zenodo.2540711
date-released: 2019-01-15

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: almost 2 years ago

All Time
  • Total issues: 0
  • Total pull requests: 12
  • Average time to close issues: N/A
  • Average time to close pull requests: 7 months
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.08
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 12
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • dependabot[bot] (12)
Top Labels
Issue Labels
Pull Request Labels
dependencies (12) java (7)

Dependencies

api/pom.xml maven
  • javax:javaee-web-api 6.0 provided
  • com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider 2.3.0
  • com.github.jsonld-java:jsonld-java 0.8.3
  • com.github.jsonld-java:jsonld-java-jena 0.4.1
  • com.google.code.gson:gson 1.7.1
  • com.googlecode.json-simple:json-simple 1.1
  • com.jamesmurty.utils:java-xmlbuilder 0.6
  • com.sun.jersey.contribs:jersey-multipart 1.19.1
  • com.sun.jersey:jersey-bundle 1.19.1
  • com.sun.jersey:jersey-json 1.19.1
  • com.sun.jersey:jersey-servlet 1.19.1
  • commons-io:commons-io 2.7
  • info.debatty:java-string-similarity RELEASE
  • javax.ws.rs:javax.ws.rs-api 2.0-m01
  • jdom:jdom 1.1
  • link.labeling.retcat:retcat 1.0-SNAPSHOT
  • org.apache.commons:commons-compress 1.19
  • org.apache.commons:commons-io 1.3.2
  • org.apache.httpcomponents:httpclient 4.5.2
  • org.apache.jena:jena-arq 2.11.1
  • org.eclipse.rdf4j:rdf4j-queryresultio-sparqljson 2.0
  • org.eclipse.rdf4j:rdf4j-queryresultio-sparqlxml 2.0
  • org.eclipse.rdf4j:rdf4j-queryresultio-text 2.0
  • org.eclipse.rdf4j:rdf4j-runtime 2.4.0
  • org.hashids:hashids 1.0.1
  • org.jboss.resteasy:resteasy-jaxrs 3.0.9.Final
  • org.jdom:jdom 1.1
  • org.jsoup:jsoup 1.8.3
  • org.linkedgeodesy.jenaext:jena-ext 1.0-SNAPSHOT
  • org.linkedgeodesy.rdf4jext:rdf4jext 1.0-SNAPSHOT
  • org.openrdf.sesame:sesame-queryresultio-sparqljson 2.7.14
  • org.openrdf.sesame:sesame-queryresultio-sparqlxml 2.7.14
  • org.openrdf.sesame:sesame-queryresultio-text 2.7.14
  • org.openrdf.sesame:sesame-runtime 2.7.14
  • org.slf4j:jcl-over-slf4j 1.7.21
  • org.xerial:sqlite-jdbc 3.8.11.2
  • com.sun.jersey:jersey-client 1.19.1 test
  • junit:junit 4.8.2 test
  • org.glassfish.extras:glassfish-embedded-web 3.1.1 test
item/pom.xml maven
  • com.google.code.gson:gson 1.7.1
  • com.googlecode.json-simple:json-simple 1.1.1
  • com.jamesmurty.utils:java-xmlbuilder 0.6
  • com.sun.jersey:jersey-json 1.17.1
  • com.sun.jersey:jersey-servlet 1.17.1
  • jdom:jdom 1.1
  • org.apache.jena:jena-arq 2.11.0
  • org.jdom:jdom 1.1
  • com.sun.jersey:jersey-client 1.17.1 test
  • junit:junit 4.8.2 test
  • org.glassfish.extras:glassfish-embedded-web 3.1.1 test
.github/workflows/maven.yml actions
  • JamesIves/github-pages-deploy-action releases/v3 composite
  • actions/checkout v1 composite
  • actions/setup-java v1 composite
Dockerfile docker
  • builder latest build
  • yyz1989/rdf4j 2.5.1 build