First of all, thanks for using a freedom respecting software license and contributing to software liberty!
I have not started to use TerminusDB yet, but got excited when I read what it’s about. My use-case is pretty specific though and I wasn’t able to find out if TerminusDB is suitable. I want to use databases to model things that don’t differentiate between schema and concrete data. The Wikipedia article https://en.wikipedia.org/wiki/Metaclass_(Semantic_Web) sounds like that’s what I’d like, especially the feature “punning”.
Now to my question: Is TerminusDB built for handling metaclasses with punning like data? Or would that be a dirty hack resulting in all kinds of troubles, because TerminusDB was built for differentiation between schema and data?
A quick example:
I might want to model animals. A bird is an animal and has 2 wings. Now this sounds like schema, right? But at runtime I’d like to edit the schema and add eagle as a subclass of animal. It should then automatically also have the property 2 wings. One might think I’d just add eagle as an instance of the class bird, but I’d also like to use “eagle” as a class for example when I want to add “golden eagle”. Hence my desire to unify schema and data by punning and with metaclasses, if that’s the right terminology.
I did find this post about “Iterative Schema Development Possible?” Iterative Schema Development Possible? and read it.
Another question I have is where can I find documentation about WOQL semantic web metaclasses and punning? I don’t even know how the syntax would look
Thanks in advance for reading and replies!