https://github.com/buda-base/lds-pdi
http://purl.bdrc.io BDRC Linked Data Server
https://github.com/buda-base/lds-pdi
Last synced: 3 months ago
JSON representation
http://purl.bdrc.io BDRC Linked Data Server
- Host: GitHub
- URL: https://github.com/buda-base/lds-pdi
- Owner: buda-base
- License: apache-2.0
- Created: 2018-01-02T16:28:26.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2025-11-17T14:24:41.000Z (7 months ago)
- Last Synced: 2026-01-19T19:43:58.064Z (5 months ago)
- Language: Java
- Homepage:
- Size: 3.39 MB
- Stars: 3
- Watchers: 4
- Forks: 0
- Open Issues: 61
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# LDS-PDI
A.k.a. *Linked Data Server - Public Data Interface*
## Features
The server provides APIs to:
- serve RDF resources in different serializations (ttl, jsonld, etc.)
- serve an RDF vocabulary, providing convenient html pages to describe the classes and properties
- run pre-defined SPARQL queries, passing arguments in URL
- augment the SPARQL results with some facet information
The API and routes provided by the server are described in a separate document: [API.md](API.md).
## Deployment
### Running locally
You can run the server locally with a maven command:
```
mvn spring-boot:run -Dldspdi.configpath=/my/configfile/dir/ -Dspring.profiles.active=local
```
See below for an example for an explanation of the configpath argument). This will make the server accessible on
```
http://localhost:8080
```
### Building a jar
For deployment in a web server environment (Tomcat, Jetty, etc.) you can compile a jar file with:
```
mvn clean package
```
and deploy it in your environment.
## Configuration
### Configuration file
The configuration of the server must be recorded in a property file named `ldspdi.properties` (see next paragraph for its location). A commented template is provided: [ldspdi.properties.template](ldspdi.properties.template), please use it as a documentation and model for the configuration file.
### Configuration directory
The path of the directory containing `ldspdi.properties` must be passed to the server through a system property called `ldspdi.configpath`. You can pass this value when starting your server from the command line, here's an example setting it when running locally:
```
mvn spring-boot:run -Dldspdi.configpath=/my/configfile/dir/ -Dspring.profiles.active=local
```
Note that the [buda-base](https://github.com/buda-base/buda-base) environment sets the config path to `/etc/buda/ldspdi/`, so the only thing you need to do is to copy your configuration file to `/etc/buda/ldspdi/ldspdi.properties`.
### Webhooks (optional)
In order for the SPARQL queries and the ontology synchronize in real time with the git repositories, you can use a webhook mechanism. Typically you can configure github to send a message to `/callbacks/github/owl-schema` and `/callbacks/github/lds-queries`. This is not necessary for the platform to function, and you can call these webhooks manually (in a daily cron for instance) to get updates.
## Copyright and License
All the code and API are Copyright (C) 2017 Buddhist Digital Resource Center and are under the Apache 2.0 Public License.