|Location||Room 3 (Classroom B)|
|Date||May 2, 2022|
|Time||9:00 AM to 12:00 PM|
Knowledge Graphs are most commonly presented as a flexible alternative to data warehouses or data lakes. Granted, semantic technology offers superior expressiveness and analytic potential but a great effort remains to actually construct the graphs from disparate sources, such as tabular data, XML, relational databases or APIs. This reduces the role of Knowledge Graphs to the equivalent of an OLAP engine, no matter how flexible.
On the other hand, sophisticated software solutions exist dedicated to building Knowledge Graphs from the ground up. Unfortunately, they are sometimes described as “silos” albeit backed by a RDF. still lacking the openness towards interoperability promised by Linked Data. Closed ecosystems, complicated user interfaces and difficult access to the graph itself prevents their usefulness in creating user-facing software fulfilling complex business requirements and data integrations.
In parallel to the evolution of Knowledge Graphs, the software industry in general has been developing many technologies and techniques helping teams deliver the correct solutions their customers need. Modeling approaches, such as Domain-Driven Design tactical patterns and Event Storming, help analyse and understand the business domain. Various implementations arise to put these rich models to life, including event-driven architecture, CQRS, Web APIs, and microservices, to name a few buzzwords. Sadly, with the even increasing number of technologies, frameworks, APIs, etc, data becomes more and more disconnected and isolated. The effect is quite the opposite from the openness and connectivity promised by Knowledge Graphs. This does not mean, however, that there isn’t a great deal of potential in the industry outside semantic technologies, yet it is often overlooked or dismissed.
Less code, more graph, and one hundred percent Open Source! Everyone is most welcome to contribute to all software used throughout the tutorial.
- Using semantic technologies as a cross-cutting concern for all software layers, including:
- data modeling
- data storage and access
- client access control
- building user interfaces
- Unifying code by using graph everywhere as the data representation
- Publishing fine-grained Linked Data APIs from Knowledge Graphs
- Applying industry best practices for architecture and modeling, judiciously