Linked Data & Solid
This course will dive into creating interoperability across multiple servers and organizations, on multiple levels. We will learn how to carefully reuse domain models where possible, and how to define your own terms where necessary, according to the latest state of the art in Linked Data. Solid applies Linked Data on personal data management: instead of having to store user data on your own servers, you can rely on a storage provider that speaks the Solid specification. Challenges that can be solved with Linked Data arise from the moment multiple apps read and write from the same storage. Techniques will be discussed to provide cross-app interoperability across open, shared, as well as personal knowledge graphs.
Practical information:
Want to register?
- Prerequisites: a higher education in computer science or equivalent experience
- Price: €2160
Online lessons are taught online from 19h till 22h.
Lesson 1 and 12 are taught from 17h30 till 21h at Ghent University, with a sandwich break in the middle.
There is no class on 31 October and on 14 November 2024.
This course teaches you:
- A basic understanding of Linked Data
- A basic understanding of Solid
- A basic understanding of semantic reasoning and streaming
- How to publish Linked Data
- How to set up the Community Solid Server
- How to create queries over Linked Data
- How to design and publish Linked Data vocabularies
- How to generate Linked Data from non-Linked Data using RML.io
- How to create interoperable Linked Data in Flanders and Europe
- How to create a Linked Data architecture using Linked Data Fragments and Linked Data Event Streams
- How to validate Linked Data using SHACL and ShEx
“ People think RDF is a pain because it is complicated. The truth is even worse. RDF is painfully simplistic, but it allows you to work with real-world data and problems that are horribly complicated. While you can avoid RDF, it is harder to avoid complicated data and complicated computer problems ”
Target audience
The course is intended for anyone who has a good familiarity with computer science and who wants to learn more about Linked Data and Solid that they can directly apply in practice. Participants have completed a higher education in computer science or have acquired equivalent experience.
Participants have programming experience with JavaScript/Typescript or a related programming language.
Laptop
A recent laptop with at least 4GB of RAM and the following software installed:
- Node.js, version 16 or higher
- Java, version 9 or higher
- Maven
- Code editor of choice
Programme
1. An introduction to Linked Data
This first lesson gives an introduction of the concept of Linked Data, such as triples, vocabularies, URIs, blank nodes and so on. We explain the different Linked Data-specific serializations, such as Turtle, N-Triples, and JSON-LD. You learn how to create your own Linked Data through our hands-on exercises.
Teachers: Pieter Colpaert & Pieter Heyvaert
Date: 26 September 2024 (on campus)
2. Using RDF in JavaScript and publishing over HTTP
In this class we explain how you use the RDF/JS data model. Next, we present libraries that use this model to create RDF in JavaScript. Finally, we explain how you publish this RDF over HTTP while taking into account caching, HTTP versions, compression, and content negotiation. During the hands-on exercises, you will use the RDF/JS data model directly and publish the RDF that you create with it.
Teachers: Pieter Colpaert & Julián Rojas
Date: 3 October 2024 (online)
3. Reusing global identifiers
We will talk about Linked Data in Flanders with Open Standards for Linked Organizations and beyond. We also touch upon Linked Open Vocabularies and how you can use it. During the hands-on exercises, you learn how to apply content negotiation, reuse existing vocabularies, and how to create your own vocabulary manually.
Teachers: Pieter Colpaert, Julián Rojas & Dwight Van Lancker
Date: 10 October 2024 (online)
4. The Solid specifications and the Community Solid Server
In this class we introduce the specifications used within the Solid ecosystem, how WebIDs are related to OpenID Connect, and how to use Web Access Control and Access Control Policies to provide authorization for data in Solid pods. This is followed by a tutorial on the Community Solid Server. Finally, we briefly introduce the Community Solid Server Association and talk about the Solid Flanders community.
Teachers: Pieter Heyvaert & Esther De Loof
Date: 17 October 2024 (online)
5. Web Querying and Solid App development
We will explain how to query Linked Data (in Solid pods) using Linked Data Fragments, Linked Data Events Stream, SPARQL, GraphQL, and so on. Using this knowledge, we dive into the development of Solid apps. In the hands-on exercises you learn how to bring both the querying and the app development together.
Teachers: Thomas Dupont & Ruben Taelman
Date: 24 October 2024 (online)
6. Validating RDF
We will explain how to query Linked Data (in Solid pods) using Linked Data Fragments, Linked Data Events Stream, SPARQL, GraphQL, and so on. Using this knowledge, we dive into the development of Solid apps. In the hands-on exercises you learn how to bring both the querying and the app development together.
Teachers: David Chaves-Fraga & Dylan Van Assche
Date: 7 November 2024 (online)
7. Usage control and data spaces
We will provide an overview of motivations and general goals of Data Space initiatives. In particular, we will visit in detail the available specifications and technologies that deal with Usage Control policies in the most prominent reference architectures. A real implementation case will be discussed by a guest lecturer from Athumi who will present the handling of authorization and usage policies in Flanders. Finally, we will do a hands-on exercise to define and enforce an example policy within a Solid-based data exchange scenario.
Teachers: Julián Rojas, Laurens Debackere & Pieter Colpaert
Date: 21 November 2024 (online)
8. Knowledge graph generation
In this class we explain how you can generate RDF from non-RDF data sources using RML.io. We elaborate on how to create declarative rules to generate RDF using the RDF Mapping Language and YARRRML. During the hands-on exercises, you use RML.io on existing datasets to generate your own RDF.
Teachers: David Chaves-Fraga & Dylan Van Assche
Date: 28 November 2024 (online)
9. Ontology engineering
In this class we explain how to create ontologies using standards such as RDFS, SKOS and OWL. Specifically, we elaborate on the ontology development process, the ontology life cycle, and the methodologies, tools, and languages for building ontologies. During the hands-on exercises you put these different concepts into practice.
Teachers: Femke Ongenae & Pieter Bonte
Date: 5 December 2024 (online)
10. Stream reasoning
You will learn how to handle dynamic data on the web in the form of data streams. The amount of data streams available on the web is ever-increasing and requires special processing techniques. We will explain how heterogeneous data streams on the web can be tamed using Stream Reasoning and in particular, RDF Stream Processing techniques. During the hands-on exercises, you will learn how to enable continuous query answering over dynamic data on the web.
Teacher: Pieter Bonte
Date: 12 December 2024 (online)
11. Project
In this class we introduce the project that combines everything that you have learned in the previous classes. After summarizing the theory of the course, the remainder of the time you can work on the project and ask questions.
Teachers: Pieter Heyvaert & Pieter Colpaert
Date: 19 December 2024 (online)
12. Summary and project results
In the final class of this course, you present the outcomes of your project to your fellow students. This is followed by a discussion of the different outcomes across all projects.
Teachers: Pieter Colpaert & Pieter Heyvaert
Date: 16 January 2025 (on campus)
Teachers / speakers
Pieter Colpaert
Pieter Colpaert is professor aan de Universiteit Gent en verbonden aan imec – IDLab. Hij doet onderzoek naar kostenefficiënte en onderhoudbare Linked Data Web API's. In 2012 was hij medeoprichter van een non-profitorganisatie om Open Knowledge in België te promoten, en vandaag is hij lid van de raad van bestuur van Open Knowledge Belgium. Hij behaalde zijn doctoraat in 2017 aan de Universiteit Gent met de titel “Publishing Transport Data for maximum reuse” waarin hij schetste hoe web-API's kunnen worden ontworpen om de data-integratie volledig te automatiseren, wat hij toepaste op de routeplanning van het openbaar vervoer. Tijdens zijn doctoraat werkte hij echter ook aan andere verticals binnen het e-gov domein, slimme steden, administratieve vereenvoudiging en Open Data in het algemeen. Tijdens zijn postdoc-periode was hij technologiecoördinator van het programma Smart Flanders. In 2021 werd Pieter benoemd tot professor aan de Universiteit Gent in Knowledge on Web-Scale, waar hij Big Data Science en data-architectuur doceerde.
Pieter Heyvaert
Hello! My name is Pieter Heyvaert (he/him) and I'm a development lead, developer advocate, and diversity & inclusion ambassador at Ghent University - IDLab, imec. I obtained the degree of Doctor of Computer Science Engineering in 2019 from Ghent University, after obtaining the degree of Master of Science in Computer Science Engineering in 2014 at the same university.
My interests are in the scope of the Semantic Web. More specific, my PhD research focused on improving the effectiveness of the creation and execution of knowledge graph generation rules. I contributed to more than 25 publications, including papers at international conferences and articles in international journals. Furthermore, I'm keen on deploying Semantic Web technologies in my own side projects, such as the websites that I develop and the datasets that I publish. Don't hesitate to have a look at my publications and the technologies I help developing if you want to learn more.
Julián Rojas
I'm a data interoperability and Semantic Web researcher at IDLab (which makes me part of both IMEC and Ghent University). My research has focused mainly on the design of cost-efficient system architectures for scalable and interoperable data exchange at Web scale. I've had the opportunity of applying the results of my research mainly on the transportation domain, including public transport, logistics and infrastructure. However I've always aimed at desgining generic solutions that can be also applied and facilitate data exchange in various domains.
Dwight Van Lancker
Linked Data Architect at movias
Esther De Loof
Esther is Business Developer & Operational Director at SolidLab (imec), a cutting-edge center of expertise on bringing personal and smart data spaces alive across all levels of interoperability: legal, organizational, semantic, and technical. Together with athumi (the Flemish Data Utility Company), we foster the adoption of semantic standards for data sharing in impactful real-live use cases in Flanders, Europe and across the globe.
Thomas Dupont
Expertise: software engineering, complex systems, computer architecture
Ruben Taelman
My name is Ruben Taelman. I am a postdoctoral researcher at IDLab, imec, Ghent University with a focus on investigating decentralized Web querying and publication techniques for Linked Data.
My goal is to bring query execution over the Web closer to the end-user, so that people become more empowered in how they can find and use data. To enable this, I focus on the research area of query execution over decentralized environments.
The Web and programming in general have always been a great fascination for me, as can be seen from the different projects I am working on. I am a proponent of openness, which is why I aim to open-source all my projects whenever possible.
To spread my passion for the Web to the broader world, I am a co-lecturer of the Web Development course at Ghent University, where I teach students about topics such as Web Browsers and Web Scripting. These lectures follow the flipped classroom model, where all videos and other materials are available online for free.
Next to my main job as a researcher, I also take up small freelancing tasks during my free time.
David Chaves-Fraga
I am David Chaves-Fraga, assistant professor at Universidade de Santiago de Compostela (USC, Spain). I am also a researcher at the Center for research in Intelligent Technologies (CiTIUS@USC) and research collaborator at the Declarative Languages and Artificial Intelligence Group (DTAI) at KU Leuven, Belgium. I am a former researcher at the Ontology Engineering Group (OEG) at Technical University of Madrid (UPM) where I hold my PhD with my thesis "Knowledge Graph Construction from Heterogeneous Data Sources Exploiting Declarative Mapping Rules" in July 2021. My main research lines are focused on the optimization and evaluation of data integration systems, mainly the construction of Knowledge Graphs from (semi)structured sources using declarative mapping rules.
As I really believe that research is a collaborative task, I'm continuously trying to contribute to my research community. For that reason, I'm currently co-chairing the W3C community group for Knowledge Graph Construction, I organize two workshop series (KGC and Sem4Tra) and several tutorials in semantic web conferences about the same topic. Additionally, I have been the main coordinator of Open Summer of Code in Spain from 2018 to 2021, a formative, international, and innovative program for undergrad and master students.
Dylan Van Assche
My name is Dylan Van Assche, I'm an Industrial Engineer in electronics-ICT and a PhD student & Researcher in Computer Science at IDLab Ghent. My research focuses on Knowledge Graph generation and Linked Open Data to decentralize the Web once again!
Besides my research, I spend my free time programming applications and tools, 3D printing and working on my modelrailroad. I'm also advocating for publishing everything as Open Source since we can always learn from each other by sharing your ideas and tricks.
Expertise: linked data, semantic web, knowledge graph generation
Laurens Debackere
Laurens is a Software Developer with experience in building microservices following the DevOps principles, using modern cloud-native technologies like Docker, Kubernetes and Spring Boot. While obtaining his Bachelor in Computer Science he first learned about the Solid Project, and has since gathered experience with the technology both in server-side contexts as well as in client-side applications. In the context of his thesis he researched ways to adapt the Solid specification to enterprise settings, while retaining the original principles of data governance and interoperability at the heart of the project. Currently, Laurens is active as ICT Solution Architect overseeing a five person development team realizing production-ready Solid use-cases for the Digitaal Vlaanderen and advises the Flemish Data Utility Company on the Solid specification.
Femke Ongenae
I am a professor of Data analytics for Health and Connected care, at the IDLab research group of Ghent University. I am part of the PREDICT (http://predict.idlab.ugent.be/) and KnoWS (https://knows.idlab.ugent.be/) research teams. These teams perform research into hybrid AI (fusing semantic models and machine learning), explainable AI, expressive semantic reasoning and the incorporation of expert knowledge in data analytics. This research is mainly applied to the domains of predictive healthcare and industry 4.0 in order to realize context-aware and personalized decision support systems.
I work at the IDLab research group as a postdoctoral researcher. My main passion is fostering collaboration with societal and industrial partners in interdisciplinary projects to valorize our research toward truly impactful applications. This is realized through a number of (government sponsored) projects, for which I set up and lead the trajectory from proposal, into project management and valorization and dissemination afterwards. My main research and project focus is on the use of Semantic Web technologies, machine learning & IoT for the delivery of personalized & context-aware services, especially within the eHealth domain. I am also particularly interested in methodologies for capturing domain knowledge from experts & using this knowledge to optimize intelligent agents and the way we interact with them.
Pieter Bonte
Professor Pieter Bonte is an assistant professor at KU Leuven, campus Kulak, specialising in the efficient processing of Internet of Things (IoT) data using various branches of Artificial Intelligence (AI). His research primarily focuses on Knowledge Representation and Reasoning, with core expertise in semantic reasoning and knowledge graphs.
Related courses
Summer School on Security and Privacy in the Age of AI
Summerschool - Heverlee - KU Leuven, UGent, VUB, Imec