https://github.com/doga/qworum-application-template-with-semantic-data
A Qworum application template that uses RDF data. (Remember to launch the live demo linked below in a separate window. Creating a desktop shortcut is recommended for Qworum applications.)
https://github.com/doga/qworum-application-template-with-semantic-data
ipaas paas qworum rdf saas-api saas-boilerplate semantic-web static-website template-project web-application
Last synced: about 1 month ago
JSON representation
A Qworum application template that uses RDF data. (Remember to launch the live demo linked below in a separate window. Creating a desktop shortcut is recommended for Qworum applications.)
- Host: GitHub
- URL: https://github.com/doga/qworum-application-template-with-semantic-data
- Owner: doga
- License: apache-2.0
- Created: 2024-03-25T12:57:42.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-03T10:51:27.000Z (about 1 year ago)
- Last Synced: 2024-05-03T14:56:06.603Z (about 1 year ago)
- Topics: ipaas, paas, qworum, rdf, saas-api, saas-boilerplate, semantic-web, static-website, template-project, web-application
- Homepage: https://semantic.template.qworum.net
- Size: 49.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# Basic template for Qworum-based web applications
This is a template for a website that uses [Qworum](https://qworum.net)'s advanced web browser capabilities.
This template is:
- _Versioned_. Qworum applications are structured as versioned Qworum APIs, which ensures that other applications that depend on this one will not break after an update.
- _Internationalised_. Qworum API endpoints have language-independent paths which redirect to localised pages.
- _Semantic_, meaning that it uses [RDF](https://www.w3.org/TR/rdf-primer/) for representing data.In order to make the programmatic handling of RDF easy, this project uses the ORM-like [OSM](https://github.com/doga/object-semantic-mapping) framework on top of RDF.
This project has a [companion project](https://github.com/doga/qworum-application-template) that uses JSON instead of RDF.
## The application structure
### Qworum API
This web application is implemented as a Qworum API❖ that has 2 endpoints❖❖:
- The `home` endpoint, which is the main application (meaning that this is an endpoint that is not expected to return a result).
- The `view-product` endpoint, called by `home`.### Directory structure
- `rdf-store` contains the application's RDF data. In a real-world application this could be replaced by a [SPARQL](https://www.w3.org/TR/sparql11-overview/) API endpoint.
- Directories of the form `v{number}` each contain a different version of the application's API. They contain the first phases of the API endpoints (`home`, `view-product` etc), which are charged with redirecting the user to localised phases.
- Directories with 2-letter names such as `en` contain the localised phases that the end-user actually sees.
- RDF can also be used internally by applications. This is shown by the `settings.ttl` file which defines the API version that will run by default and the localisations that are available.## Demo
A [demo video](https://www.youtube.com/watch?v=woNsdX8RMfk) is available on Youtube.
## License
This software is released under the terms of the [Apache 2.0 license](https://www.apache.org/licenses/LICENSE-2.0).
## Notes
❖ Best practice is to use the term "[Qworum class](https://qworum.net/en/specification/v1/#class)" instead of "Qworum API". This is because Qworum uses the [OOP](https://en.wikipedia.org/wiki/Object-oriented_programming) programming paradigm for structuring applications. This README document uses the API terminology, as it should be familiar to first-time Qworum programmers.
❖❖ Best practice is to use the term "method" instead of "endpoint".
∎