Utdrag från min dokumentation på Github för RDF::Base;
PF (Paraframe) Började ta form ca 1999 och driver fortfarande www.paranormal.se
RB (RDFbase, tidigare Ritbase) Började ta form ca 1998. Då skrev jag en överblick om RDF med mera.
Efter ett par år gick jag över till att implementera en mer pragmatisk version av RDF anpassad för de specifika behoven hos Avisita. Det betyder bland annat att RB enbart hanterar lokala noder (utan URI) och att en rad andra anpassningar gjorts för att förenkla implementation och användning.
När jag började fanns det inte några andra RDF-databaser och inte heller frågespråk så som SPARQL. Men RB har en rad andra egenskaper som gör den unik och lättanvänd.
RDF::Base överblick
Varje nod är även ett perl-objekt med sina egna metoder som bestäms av klassheiarkin som definieras i databasen. Detta ger varje nod ett antal dynamiska properties. Dessa är alltså arcs som inte existerar i databasen. Ändringar av noder triggar metoder i motsvarande klasser som kan användas för att uppdatera relaterad data.
Arcs kan också ha egna properites. Reified statements.
Literals kan också ha egna properies. Används bland annat för språk-taggning och prioritering.
Regler kan beskrivas med syllogismer som automatiskt kommer att tillämpas när data förändras.
Databasen har inbyggd versionshantering. Arcs kan vara new, proposed, active, old. Alla sökningar görs med given kontext som bland annat kan vara att ta fram data så som den såg ut vid ett givet datum.
Alla ändringar skickas som notiser till andra servrar som använder samma databas, så att alla servrar har aktuell data-cache.