This repository contains developer related background materials for the Linked And Networked DRoneS (LANDRS) project. These include Linked Data Development tutorials, links to toolkits used in the LANDRS frameworks development, and links to existing vocabularies and ontologies that will be leveraged in the project development.
A very general set of background documents on linked data and linked data technologies is available in the Zazuko Github organization repository linked-data-training. These materials provide a reasonable starting point to understand the LANDRS development linked-data technology stack.
Toolkits for developing using RDF, Ontologies and linked-data have been developed for many programming languages. The LANDRS project will focus on Python and Javascript technologies and will leverage the following technologies and frameworks.
- RDFLib
- PySHACL
- pyLDAPI Linked Data API
- grlc builds Web APIs using shared SPARQL queries
- Getting started with RDF in Javascript is a very good resource with examples of how to use existing javascript tools to load RDF in web applications.
- RDFJS The RDFJS Representation Task Force creates specifications for JavaScript RDF library interoperability.
- RDFJS-Base JS library implementations of RDFJS specifications.
- RDF-ext Toolkits using RDF JAVASCRIPT LIBRARIES COMMUNITY GROUP data model recommendation. The community group also has a Github repository where the model specifications are located.
- Who says using RDF is hard? Blogpost with an overview of JS tools for RDF.
API documentation for LANDRS convenience APIs should use the Hydra W3C Community Group recommendation for A Vocabulary for Hypermedia-Driven Web APIs as a first class citizen. Cross-walks can be provided to other API documentation representations such as OpenAPI. In serializing of linked API we will preferably use JSON-LD 1.1 and Turtle.
To facilitate rapid prototyping and development, LANDRS will leverage the following hydra based frameworks to publish the hydra apiDocumentation specification.
- hydra-box for creating Hydra Core based api endpoints
- Alcaeus Promise-based library for consuming Hydra APIs
- hypermedia-app Javascript libraries for hydra based web development.
- Youtube of RESTFest Presentation on Alcaeus
Examples of these technologies in action include.
- Wikibus as a hydra-box demonstrator endpoint for public transportation using linked data technologies.
- Backend for Zurich Municipal Linked Statistical Data
The Apache Jena Project maintains an open source triple store the has recently integrated SHACL and GeoSPARQL support. Note the geosparql-jena extensions have been integrated in the main Jena repository but still provide some useful documentation.
We use Zazuko Trifid as a linked data server and proxy for the Fuseki triple store. Additionally Trifid has the Yasgui SPARQL query editor integrated into it's web interface. Vocabularies and ontologies are developed using Zazuko Ontology Manager.
For on Drone appliance development a similar approach to the Linked Time Series experiment will be explored using the lightweight triple pattern fragments which also uses hydra to expose hypermedia controls for knowledge graph fragments.
- W3C Semantic Sensor Network (SOSA)
- W3C Semantic Sensor Network Extensions (SOSA-EXT)
- Projects using SOSA
- OWL-Time
- OWL-Time Extensions
- WoT Thing Description
- Schema.org
- DCAT version 2
- DCAT Profiles
- GeoSPARQL
- W3C Decentralized Identifiers Primer
- W3C Decentralized Identifiers Core Spec
- RDF Data Cube
- QB4ST: RDF Data Cube extensions for spatio-temporal components
- W3C Web Annotation Ontology
- W3C Web Annotation Working Group
- IIIF Presentation API 2.1.1
- CLARIAH Project using IIIF
- Semantic Trajectory Episodes
- VSSo: a Vehicle Signals and Attribute Ontology
- W3C Automotive Business Group VSSo Draft
- USGS Geographic Information Name Serviec (GNIS-LD)
- Allotrope Foundation Core Ontologies
- Spatial Data on the Web Best Practices
- Data on the Web Best Practices
- OGC API - Features - Part 1: Core
- Second Environmental Linked Features Experiment
- OGC Sensorthings API Documentation
- Science On Schema.org
- Vehicle Information Service Specification
- OGC Testbed-14: Semantically Enabled Aviation Data Models Engineering Report
- The NASA Air Traffic Management Ontology
- Open repository for use by the international aviation community
- FAA Service Semantics
- CSV on the Web: A Primer
- CSV on the Web: A Primer Updated editors draft from 2019 but not pushed to the main W3C site.
- Test-driven development
- User stories
- Web Frameworks
- API specification
- OGC standards for spatial data
- W3C standards for linked-data and web development
- GNIS-LD: Serving and Visualizing the Geographic Names Information System Gazetteer As Linked Data
- GeoSPARQL-Jena: Implementation and Benchmarking of a GeoSPARQL Graphstore
- On modeling linked open statistical data
- W3C Workshop on Data Models for Transportation
- Proper Attribution for Curation and Maintenance of Research Collections: Metadata Recommendations of the RDA/TDWG Working Group
- Shaping Linked Data apps
- Piecing the puzzle: Self-publishing queryable research data on the Web
- Linked Data Shapes, Forms and Footprints -- TBL
- The Semantic Web identity crisis: in search of the trivialities that never were
- Paradigm shifts for the decentralized Web As separate markets for data and apps emerge, Web development needs to adopt a new shape
- Designing a Linked Data developer experience Making decentralized Web app development fun