Causation & Sequential Action Graphs and the Semantic Web

XML and the problem with the ontologies

Semantic Web Schema

If you look at the diagram of the semantic web, you will see several layers. You can group those layers together. The two bottom layers are about interchangeability and strictly defined objects: the technical layer. Above that you have the two layers that are really semantic. That's also where the meaning of the objects is defined in an ontology which creates the possibility of performing queries on the data: the database layer.

The project is embedded in the technical layer. SVG is XML. But the creation of an ontology is enormously labour-intensive. TOntologies are called verbose because each element of the content has to be defined in detail, not only for its meaning but also for its function. Some ontologies are available, ready to use, for example, for metereology, but almost all of them are in English. For Dutch, you have to make them yourself or translate them. That's work for a whole team versed in metereology and technically skilled in generating ontologies.

But that does not solve the problem. A lot of schemes deal with at least two disciplines. Evaporation has to do not only with thermodynamics but also with biology, as transpiration of vegetation also contributes to it. In the alpha subjects, it gets even more complex. The scheme 'A day in the life of hunter-gatherers' draws information from six different disciplines: anthropology, archaeology, palaeogenetics, linguistics, neurology and demography.

The intention of this project was just to be interdisciplinary. With the resources available, this is impossible. Therefore, resort was made to Prolog. However, this choice is not a limitation. Prolog is also a platform that can be used as a glue between different systems. There is a wide variety in the way in which data is structured and stored. Classic query languages such as SQL, SPARQL, XPATH, etc. can each handle only one such format, whereas Prolog can provide a concise and natural query language for each of these formats. By the way, note that the you can represent the same relationships with Prolog as with the Resource Description Framework of the Semantic Web (Wielemaker,2005).

An example::

RDF: <Alice> <knows> <Bob>.
Prolog: knows(alice, bob).


You can build this Prolog-based semantic database bottom-up as a collection of texts and images. Of course, it does not have the pretence of completeness like GenAI, but it is reliable and GenAI is not. And it is interoperable, which is something you miss with RDF anyway.

Below you can see an example of a Prolog query.

Prolog Query

Below is an excerpt of the Prolog declaration used for that query.

Prolog Declaratie
The SVG and Prolog declaration were generated by parser in Java. This teks file was used to generate them. The Java application uses the Graphiz Dot Language as intermediary to generate the actual EDAG graph.

Learning to work with queries requires thorough training.

Being able to work with prolog queries develops the logical brain.

References

Berners-Lee, Tim, James Hendler, and Ora Lassila. The semantic Web. Scientific American, 284(5):34–43, May 2001, https://surl.li/rdtjuk

Wielemaker, J. (2005). An Optimised Semantic Web Query Language Implementation in Prolog. In: Gabbrielli, M., Gupta, G. (eds) Logic Programming. ICLP 2005. Lecture Notes in Computer Science, vol 3668. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11562931_12

Attribution

Copyright © 2025 Verhoeven. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication on this site is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.