labelingsystem-server
Labeling System RESTful Server Application
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
Repository
Labeling System RESTful Server Application
Basic Info
- Host: GitHub
- Owner: mainzed
- License: mit
- Language: Java
- Default Branch: master
- Homepage: https://mainzed.github.io/labelingsystem-server/
- Size: 108 MB
Statistics
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 9
- Releases: 1
Topics
Metadata Files
README.md
Labeling System Server
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
SQLiteandPersondatabase into db folder and set full r/w rights (chmod 777) - deploy war files for triplestore (
rdf4j-server.war,rdf4j-workbench.war) - create
labelingsystemanddatahubrepository in RDF4J - modify
default triples - fill
labelingsystemrepository 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
- Website: https://fedihum.org/@mainzed
- Repositories: 20
- Profile: https://github.com/mainzed
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
- 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
- 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
- JamesIves/github-pages-deploy-action releases/v3 composite
- actions/checkout v1 composite
- actions/setup-java v1 composite
- builder latest build
- yyz1989/rdf4j 2.5.1 build