Semantic Enterprise Application Architecture, Beispiel
Datenspeicher
- RDF Triples
Ontologie
- Natürliche Person
- Juristische Person
- Adresse
- Firmen ID MWST Nummer
- Steuersatz
- Versicherungsvertrag (Historisierung)
- Organigramm (Historisierung)
Business-Regeln
- PLZ -> Gemeinde -> Strasse -> prüfen
- Email regex -> prüfen
- Email senden, falls sich der Steuersatz erhöht.
Interaktions-Schnittstelle
- Eingabe (Mensch oder Maschine): Neue Person erfassen, Personen Info ändern
- Ausgabe (Mensch oder Maschine): Personenliste ausgeben, Daten aktualisiern
- Abfrage (Mensch oder Maschine): Personenliste ausgeben
Anforderungen
Historisierung
tri temporale Datenhaltung- valid time The time when the fact is true in the modelled reality.
- decision time The time when an event was decided to happen in the modelled reality.
- transaction time The time when the fact is stored in the database.
Szenarien
Historisierung
Reproduzierbare Datenbankabfragen- decision time / transaction time:
Am 15.1.2018 09:00 Uhr erhalte ich per Telefon die Information, dass die Adresse einer Person falsch geschrieben ist.
Ich ändere diese Adresse am gleichen Tag um 10:00 Uhr.- valid time: Gültig seit der Geburt dieser Person: 1.1.1970
- decision time: Event bei der Geburt dieser Person: 1.1.1970
- transaction time 15.1.2018 10:00
- decision time / transaction time:
Am 15.1.2018 09:00 Uhr erhalte ich per Telefon die Information, dass die Person seit 1.12.2017 an einem neuen Ort unter einen neuen Adresse wohnt.
Ich ändere diese Adresse am gleichen Tag um 10:00 Uhr.- valid time: 1.12.2017
- decision time: 1.12.2017
- transaction time 15.1.2018 10:00
- Anforderung: Ein SPARQL Query liefert immer das gleiche Resultat, falls ich ein Zeitstempel für die Abfrage angebe.
Frage ich nach der Anzahl Personen in der Datenbank am 1.1.2018 um 0:00 Uhr, so erhalte ich immer das gleiche Resultat. - Anforderung: Korrigiere ich einen Rechtschreibefehler in einem Namen einer Person am 1.1.2018.
So erhalte ich die Fehlerhafte Schreibweise des Namens, falls ich dem SPARQL Querry den Zeitstempel 31.12.2017 mitgebe.
Lösungskonzept
Historisierung
tri temporale Datenhaltung- valid time The time when the fact is true in the modelled reality.
--> "Valid From" und "Valid To" Triple. Vertrag --> Vertragsversion - decision time The time when an event was decided to happen
in the modelled reality.
--> "Decision time" Triple. Vertrag --> Vertragsversion - transaction time The time when the fact is stored in the database.
--> MarkLogic: Point-in-time Queries (Link)
Bild 2: Classification of an event with respect to the three time dimensions. (Link)