Ein Graph als Sicht auf die Ontologie
Der Graph ist ein Property Graph: Knoten sind Objekte mit Typ, Kanten sind gerichtete, typisierte Beziehungen, und beide tragen Eigenschaften. An jeder Kante hängen Herkunft, Gültigkeitszeit, Erfassungszeit und Vertrauen. Die Beziehungstypen kommen aus der Ontologie, ARGUS erfindet keine eigenen.
Der Graph ist keine zweite Wahrheit. Die Ontologie bleibt führend, und der Graph ist eine Projektion, die aus ihr gebaut und fortgeschrieben wird. Wo ein Graphspeicher dafür besser geeignet ist, liegt die Projektion dort; ebenso lässt sie sich in einer relationalen Datenbank mit rekursiven Abfragen führen. Abfragen lassen sich in den Standards beschreiben, die dafür entstanden sind: SQL/PGQ als Teil von SQL:2023 und GQL, ISO/IEC 39075.
Kanten haben eine Richtung und ein Verb, das sich lesen lässt: Das Objekt hängt ab von jenem, gehört zu, betrifft. Eine Beziehung, die in beide Richtungen etwas anderes bedeutet, hat zwei Typen und nicht einen mit zwei Lesarten.
Graph im Schnitt
Unten die Ontologie, aus der der Graph gebaut wird. Darüber die Rechteprüfung, die den sichtbaren Teil bestimmt, und oben die Antwort als Pfad mit Beleg.
- Antwort (Pfad mit Beleg): Pfad, Herkunft.
- Sichtbarer Teil (nach Recht und Markierung): Kanten.
- Graph (Projektion): Knoten, Kanten.
- Ontologie (führend): Objekt, Beziehung.
- gebaut aus: fließt von ontologie nach antwort.
Fragen als Pfade
Aus dem Graphen beantwortet ARGUS wenige Arten von Fragen, die jede für sich eine feste Bedeutung haben. Verbindung: Welche Pfade führen von A nach B, der kürzeste und alle bis zu einer Länge? Abhängigkeit: Welche Objekte sind von A aus erreichbar, wenn man bestimmten Beziehungstypen folgt, etwa alles, was an A hängt? Umgebung: Was liegt in k Schritten um A? Engpass: Welche Objekte oder Beziehungen trennen den Graphen, wenn sie ausfallen?
Die Verfahren dahinter sind bekannt: Breitensuche für kürzeste Pfade in Schritten, Dijkstra für gewichtete Kanten, die transitive Hülle für Abhängigkeiten, Zusammenhangskomponenten und Artikulationspunkte für Engpässe. Jede Abfrage hat eine Obergrenze für Tiefe und Rechenzeit, damit sie auch auf einem großen Graphen endet.
Das Vertrauen eines Pfads ist nie größer als das seiner schwächsten Beziehung. ARGUS zeigt das so und weist die schwächste Kante aus, statt es in einer einzigen Zahl zu verbergen. Knoten mit sehr vielen Kanten, die an fast allem hängen, werden bei der Suche nicht ungebremst durchlaufen; die Abfrage nennt, wo sie begrenzt hat.
Jeder Pfad ist prüfbar
Ein Pfad ist eine Folge aus Objekt, Beziehung, Objekt. Zu jeder Beziehung gehört der Beleg: Typ, Quelle und Zeile, Gültigkeitszeit, Erfassungszeit, Vertrauen und wer sie angelegt hat, eine Regel, eine Abbildung oder ein Mensch. Wer einem Pfad nicht traut, folgt ihm Kante für Kante bis zur Rohzeile der Quelle.
Beziehungen, die ARGUS aus Regeln ableitet, etwa weil sich zwei Beziehungen zu einer dritten verketten lassen, sind als abgeleitet gekennzeichnet und nennen die Regel mit Version und die Beziehungen, aus denen sie entstand. Vermutete Beziehungen, die ein Verfahren oder ein Sprachmodell vorschlägt, tragen ausdrücklich den Zustand vermutet. In eine Entscheidungsvorlage gehen sie nur nach einer Bestätigung durch eine berechtigte Person ein.
Die Antwort enthält damit nie mehr, als sich belegen lässt. Eine Verbindung, für die kein belegter Pfad besteht, gibt es für ARGUS nicht, auch wenn sie plausibel scheint.
Ein Pfad mit Belegen
Ein Pfad von einem Ereignis über Objekte zu einem abhängigen Objekt. Jede Linie trägt ihr Verb und ihren Beleg. Eine vermutete Beziehung steht gestrichelt und zählt erst nach Bestätigung.
- Knoten: Ereignis, Objekt, Objekt, Objekt, Objekt.
- Ereignis betrifft Objekt.
- Objekt gehört zu Objekt.
- Objekt hängt ab von Objekt.
- Objekt vermutet Objekt.
- Objekt hängt ab von Objekt.
Der Graph zu einem Stichtag
Weil jede Kante Gültigkeitszeit und Erfassungszeit trägt, lässt sich der Graph für einen Stichtag und für einen Wissensstand berechnen: Welche Pfade gab es am Stichtag s, so wie sie zum Zeitpunkt k bekannt waren? Die Abfrage gibt beide Zeiten an, und die Antwort gilt für genau diese Wahl.
Zwei Stände lassen sich vergleichen. Neue Pfade, weggefallene und solche, die sich verlängert oder verkürzt haben, zeigen, was sich an den Zusammenhängen geändert hat. Wie eine ganze Lage zu einem früheren Zeitpunkt wieder aufgerufen wird, beschreibt die Seite zur Zeitachse.
Nur sichtbare Kanten
Eine Abfrage läuft mit dem Recht und den Markierungen dessen, der fragt. Kanten, die er nicht sehen darf, gibt es für ihn nicht. ARGUS rechnet deshalb auf dem sichtbaren Teil des Graphen und filtert nicht erst die fertige Antwort. Nachträgliches Filtern würde über die Länge eines Pfads oder die Zahl der Treffer verraten, dass etwas Verborgenes besteht.
Das Ergebnis kein Pfad bedeutet darum kein Pfad im Rahmen Ihrer Rechte, und die Antwort sagt das. Ein Pfad trägt die Markierungen aller seiner Kanten. Wer ihn sieht, darf alle seine Glieder lesen.
Eckdaten
- Graph
- Property Graph: typisierte, gerichtete Kanten mit Herkunft, Gültigkeitszeit, Erfassungszeit, Vertrauen
- Verhältnis zur Ontologie
- Projektion; die Ontologie bleibt führend
- Abfragesprachen
- SQL/PGQ (SQL:2023), GQL (ISO/IEC 39075)
- Fragen
- Verbindung, Abhängigkeit, Umgebung, Engpass
- Verfahren
- Breitensuche, Dijkstra, transitive Hülle, Zusammenhangskomponenten, Artikulationspunkte
- Vertrauen
- nie größer als das der schwächsten Kante; die Kante wird genannt
- Beleg
- je Kante bis zur Rohzeile; abgeleitet und vermutet gekennzeichnet
- Rechte
- Rechnung auf dem sichtbaren Teil; kein Pfad heißt kein sichtbarer Pfad
Weiter
- ARGUS · TechnikMeldungenWie ARGUS Meldungen aus Leitstellen, Sensorik und Formularen in Ereignisse mit Zeit, Ort, Quelle und Vertrauen übersetzt und Dubletten erkennt.
- ARGUS · TechnikVerdichtenWie ARGUS Ereignisse nach Ort und Zeit gruppiert, Objekten der Ontologie zuordnet, ihr Vertrauen fortschreibt und daraus eine Lage zu einem Zeitpunkt bildet.
- ARGUS · TechnikVorlageWie ARGUS aus einer Lage eine Entscheidungsvorlage macht, jede Aussage mit Herkunft belegt, sie von KALKÜL prüfen lässt und der zuständigen Stelle vorlegt.
- ARGUS · TechnikZeitachseWie ARGUS eine Lage zu einem Stichtag und zu dem Wissensstand eines Zeitpunkts wiederherstellt, zwei Stände vergleicht und Korrekturen als Nachträge zeigt.
- ARGUS · TechnikMarkierungenWie ARGUS Markierungen an Werte hängt, auf abgeleitete Werte vererbt, bei jedem Lesen prüft und Zugang nur befristet, begründet und im Verlauf erteilt.
- ProduktARGUSEreignisse verdichten, Entscheidungen vorbereiten
Welche Abhängigkeit müssen Sie heute von Hand über drei Systeme verfolgen? Diesen Pfad bauen wir mit Ihnen als Abfrage.