Exploring the PSOA RuleML Space of Core Atoms
Author: Harold Boley
RuleML Technical Memo
The orthogonal 3D design space of eight kinds of PSOA RuleML core atoms is explored with "relationships" (for tables) and "framepoints" (for graphs) as landmarks. This multi-paradigm space is illustrated by a roundtrip transitioning between eight sample atoms describing a wedding. Possible transitions include proceeding from "relationships" to "relationpoints", utilized for objectification, and from "framepoints" to "pairpoints", enabling slot disambiguation.
Data can exist in various forms, including as atomic items (atoms) stored in Relational Databases or in Graph Databases. While the theoretical underpinning and practical methodology for IT data modeling as well as AI knowledge representation has often been founded on relations (also see Herbrand Bases), there is increasing interest in graphs (cf. Graph-Relational Data, Ontologies, and Rules). This motivates our study of a generalized theoretical underpinning and practical methodology accommodating relations, graphs, and other foundational structures (e.g., via generalized Herbrand Bases).
The design space of PSOA RuleML formulas is founded on an enriched system (metamodel) of atoms, each applying a predicate, optionally with an Object IDentifier (OID), to arguments. Two paradigmatic kinds of atoms can be distinguished as complementary 'landmarks' in a space created by three orthogonal dimensions of features:
- Relationships, used for building named tables, apply an oidless predicate as the table name to an -- ordered -- sequence (row) constituting an argument tuple, where the tuple's interpretation is dependent on the predicate (making the atom perspectival)
- Framepoints, used for building node-typed directed labeled graphs, apply a predicate that types an OID (node) to an -- unordered -- multiset (bag) of slotted arguments (labeled outgoing arcs/edges), where the slots' interpretation is independent from the predicate (making the atom perspeneutral)
Focused on these landmarks, extended versions of the metamodel are visualized as 'metatables' in PSOA RuleML#Introduction and as a 'metacube' in PSOA RuleML Bridges Graph and Relational Databases.
The PSOA RuleML metamodel characterizes the kinds of atoms allowed as PSOA RuleML's data (facts), queries, and as/in its rule conclusions and conditions. The current document only considers facts and queries, while the above-linked documents also consider rules.
2 From the Landmarks to the Core
Let us systematically explore the 2-dimensional subspace around each landmark, which, when stacked and interconnected, constitute the 3-dimensional space of the eight kinds of core atoms:
- Relationships can transition (while staying perspectival)
- from oidless to oidful (oidless → oidful), arriving at "relationpoints", or
- from single-tuple to slotted (single-tuple → slotted), arriving at "pairships", or
- both (in any order), arriving at "pairpoints" in two steps
- Framepoints can transition (while staying perspeneutral)
- from oidful to oidless (oidful → oidless), arriving at "frameships", or
- from slotted to single-tuple (slotted → single-tuple), arriving at "shelfpoints", or
- both (in any order), arriving at "shelfships" in two steps
Moreover, transitions through the 3rd (perspectivity) dimension are possible, e.g. starting at the landmarks, thus interconnecting the two subspaces:
- Relationships can transition from perspectival to perspeneutral (perspectival → perspeneutral), arriving at "shelfships" in one step
- Framepoints can transition from perspeneutral to perspectival (perspeneutral → perspectival), arriving at "pairpoints" in one step
Combining these observations, each non-landmark core atom is reached from one of the landmark atoms in one step and from the other landmark atom in two steps, while the landmarks themselves are reached from each other in three steps.
Besides the above-linked metamodel visualizations, it is possible to visualize each kind of atom and each particular atom using generalized graphs in Grailog as introduced in PSOAMetamodelGrailogWedding.pdf
3 The Wedding Roundtrip
The roundtrip shown below is a variation and expansion of the metamodel path concatenated with its inverse from PSOA RuleML Bridges Graph and Relational Databases, where the eight kinds of core atoms are illustrated by wedding sample atoms similar to those in PSOAMetamodelGrailogWedding.pdf (visualized on slides 4 and 6) and the "%"-comments provide the systematic name pxd (x = v,n; d = 1-4), an optional landMARK tag, and the "common name":
Wedding(Mary John) % pv1 (MARK): "relationships" (dependent tuple implicit in argument sequence) oidless → oidful w#Wedding(Mary John) % pv2: "relationpoints" single-tuple → slotted w#Wedding(bride+>Mary groom+>John) % pv4: "pairpoints" oidful → oidless Wedding(bride+>Mary groom+>John) % pv3: "pairships" perspectival → perspeneutral Wedding(bride->Mary groom->John) % pn3: "frameships" oidless → oidful w#Wedding(bride->Mary groom->John) % pn4 (MARK): "framepoints" (independent slots) slotted → single-tuple w#Wedding(-[Mary John]) % pn2: "shelfpoints" oidful → oidless Wedding(-[Mary John]) % pn1: "shelfships" perspeneutral → perspectival Wedding(+[Mary John]) % pv1 (MARK): "relationships" (dependent tuple shown explicitly)
- The roundtrip, as read top-down, can be inverted, i.e. read bottom-up, by inverting the orientation of the transition arrows from "→" to "←"
- The start/finish atoms can be changed from "relationships" to "framepoints" or to any other kind of atom
- The transition perspectival → perspeneutral is set off by blank lines with optional surrounding transitions oidful ⇄ oidless for an optional side trip to visit all kinds of core atoms
- The transition perspeneutral → perspectival on the inverted trip without the side trip permits to directly proceed from "framepoints" to "pairpoints"
- Common names of the form "...ships" refer to oidless atoms while those of the form "...points" refer to oidful atoms; the four 'word stems' "..." can be "relation" or its "pair" variety or "frame" or its "shelf" variety
- While the landmark pv1 highlights relationships, pv2's (relationpoints') added OID (w) enables coreference (e.g., a location slot in the same or a conjoined atom could further describe w); similarly, while the landmark pn4 highlights frame(point)s, pv4's (pairpoints') slot dependency enables disambiguation (see below); moreover, pv1's tuple may yield to pv3's (pairships') slots
- Each particular atom can be regarded as a ground (variable-free) fact and/or as a ground query
The roundtrip experience can be deepened in three ways:
- Use the RuleML-online PSOAMetaViz to dynamically visualize the transitions in the metamodel
- Zoom into the above-linked slides 4 and 6 to learn moving between the visited symbolic atoms and their visualization in Grailog
- Use the GitHub-downloadable PSOATransRun to familiarize yourself with the operational PSOA RuleML semantics in an interactive fashion:
- Assert any atom as a ground fact
- Pose ground atoms and non-ground atoms (variable-containing patterns) as queries against this fact
4 The Non-Landmark Core
Major uses of the non-landmark kinds of atoms are expanded on in the following:
- Perspectival subspace
- Relationpoints, e.g. resulting from relationships via the objectification transition oidless → oidful built into PSOATransRun, can be used for referring to a tuple by an OID
- Pairships, e.g. resulting from relationships via the transition single-tuple → slotted, can be used for slot-based rather than positional access to arguments; this has also been available, e.g., in (OO) RuleML, POSL, and -- as (predicate) "terms with named arguments" -- in RIF-BLD
- Pairpoints, e.g. combining the two above transitions or resulting from framepoints via the transition perspeneutral → perspectival, can be used for predicate-based slot (e.g., groom of a Wedding vs. a Derby) disambiguation (see PSOA RuleML Bridges Graph and Relational Databases#Metamodel_Paths); e.g., the framepoint w#Wedding(bride->Mary groom->John) normalizes (here, slotributes) to And(w#Wedding w#Top(bride->Mary) w#Top(groom->John)), trivializing -- for the resulting single-slot framepoints -- the specific predicate Wedding to the taxonomy-root predicate Top, while the pairpoint w#Wedding(bride+>Mary groom+>John) slotributes to And(w#Wedding w#Wedding(bride+>Mary) w#Wedding (groom+>John)), reproducing -- for the resulting single-slot pairpoints -- the predicate Wedding as the disambiguating perspective
- Perspeneutral subspace
- Frameships, e.g. resulting from framepoints via the transition oidful → oidless, can be used for oidless predicate applications to independent slots
- Shelfpoints, e.g. resulting from framepoints via the transition slotted → single-tuple, can be used for positional access to an OID-associated array-like argument sequence
- Shelfships, e.g. combining the two above transitions or resulting from relationships via the transition perspectival → perspeneutral, can be used for oidless predicate applications to an independent tuple
Within the PSOA RuleML design space of eight core atoms, let us recap these four:
- The landmark of "relationships" is usually objectified, via the transition oidless → oidful, to "relationpoints"
- The landmark of "framepoints" can be usefully supplemented, via the transition perspeneutral → perspectival, by "pairpoints"
The complete PSOA RuleML space of atoms, beyond the core discussed in the current document, is elaborated along with rules in PSOAPerspectivalKnowledge, using Rich TA descriptions for a running example. By integrating multiple paradigms, PSOA RuleML allows users to develop knowledge bases across subspaces while staying in one language. PSOA RuleML use cases include "Port Clearance Rules", an educational contribution to a Decision Management Community Challenge, "Medical Devices Rules", formalizing the Regulation (EU) 2017/745, and "Air Traffic Control KB", built on top of a Federal Aviation Administration dataset.