Title: RuleML/Grailog
1From Data to Knowledge throughGrailog
Visualization (Long version http//www.cs.unb.ca/
boley/talks/RuleMLGrailog.pdf)
Harold BoleyFaculty of Computer
ScienceUniversity of New BrunswickFredericton,
NB, Canada
Decision CAMP, 4-6 November 2013 eBay Town Hall,
San Jose, CA Editorial Update 11 November 2013
2Acknowledgements
Thanks for feedback on various versions and parts
of this presentation(the long version has all
parts, hence gapless slide numbers) From Data
to Knowledge through Grailog VisualizationOntolog
y, Rules, and Logic Programming for Reasoning and
Applications (RulesReasoningLP) Ontolog
Mini-Series, 31 October 2013ISO 15926 and
Semantic Technologies 2013 Conference, Sogndal,
Norway, 5-6 September 2013 Grailog 1.0
Graph-Logic Visualization of Ontologies and
Rules The 7th International Web Rule Symposium
(RuleML 2013), University of Washington, Seattle,
WA, 11-13 July 2013 The Grailog Systematics for
Visual-Logic Knowledge Representation with
Generalized Graphs Faculty of Computer Science
Seminar Series, University of New Brunswick,
Fredericton, Canada, 26 September 2012 High
Performance Computing Center Stuttgart (HLRS),
Stuttgart, Germany, 14 August 2012 Grailog
Mapping Generalized Graphs to Computational
LogicSymposium on Natural/Unconventional
Computing and its Philosophical
Significance,AISB/IACAP World Congress - Alan
Turing 2012, 2-6 July 2012, Birmingham, UK The
Grailog User Interface for Knowledge Bases of
Ontologies RulesOMG Technical Meeting,
Ontology PSIG, Cambridge, MA, 21 June
2012 Grailog Knowledge Representation with
Extended Graphs for Extended Logics SAP
Enterprise Semantics Forum, 24 April
2012 Grailog Towards a Knowledge Visualization
Standard BMIR Research Colloquium, Stanford, CA,
4 April 2012 PARC Research Talk, Palo Alto, CA,
29 March 2012 RuleML/Grailog The Rule Metalogic
Visualized with Generalized GraphsPhiloWeb 2011,
Thessaloniki, Greece, 5 October 2011 Grailog
Graph inscribed logic Course about Logical
Foundations of Cognitive Science, TU Vienna,
Austria, 20 October -10 December 2008
3Abstract
- Directed labeled graphs (DLGs) provide a
good starting point for visual data knowledge
representation but cannot straightforwardly
represent nested structures, non-binary
relationships, and relation descriptions. These
advanced features require encoded constructs with
auxiliary nodes and relationships, which also
need to be kept separate from straightforward
constructs. Therefore, various extensions of DLGs
have been proposed for data knowledge
representation, including graph partitionings
(possibly interfaced as complex nodes), n-ary
relationships as directed labeled hyperarcs, and
(hyper)arc labels used as nodes of other
(hyper)arcs. Meanwhile, a lot of AI / Semantic
Web research and development on ontologies
rules has gone into extended logics for knowledge
representation such as object (frame) logics,
description logics, general modal logics, and
higher-order logics. The slides demonstrate how
data knowledge representation with graphs and
logics can be reconciled. They proceed from
simple to extended graphs for logics needed in AI
and the Semantic Web. Along with its visual
introduction, each graph construct is mapped to
its corresponding symbolic logic construct. These
graph-logic extensions constitute a systematics
defined by orthogonal axes, which has led to the
Grailog 1.0 language as part of the Web-rule
industry standard RuleML 1.0 (http//wiki.ruleml.o
rg/index.php/Grailog). While Grailog's DLG
sublanguage corresponds to binary-associative
memories, its hypergraph sublanguage corresponds
to n-ary content-addressable memories, and its
complex-node modules offer various further
opportunities for parallel processing
4Visualization of Data
- Useful in many areas, needed for big data
- Gain knowledge insights from data analytics,
ideally with the entire pipeline visualized - Statistical visualization ? Logical visualization
Sample data visualization (http//wordle.net) Wor
d cloud for frequency of words from BMIR
abstract of this talk
5Visualization of Data Knowledge Graphs Make
Logic Low-Entry-Cost
- From 1-dimensional symbol-logic knowledge
specification to 2-dimensional graph-logic
visualization in a systematic 2D syntax - Supports human in the loop across knowledge
elicitation, specification, validation, and
reasoning - Combinable with graph transformation,
(associative) indexing parallel processing
for efficient implementation of specifications - Move towards model-theoretic semantics
- Unique names, as graph nodes, mapped directly/
injectively to elements of semantic interpretation
6Rule MetaLogic ProvidesFamily of Language
Standards forWeb Data Knowledge Interchange
- Developed on the Webhttp//ruleml.org/metalogic
- Principal (family-uniform) andvariant semantics
- Family-uniform syntaxes forhumans and machines
7Three RuleML Syntaxes (1)
8Three RuleML Syntaxes (2)
Serialization ? RuleML/XML Specified in XML
Schema and recently in Relax NG http//ruleml.org
Presentation ? RuleML/POSL Integrates Prolog
and F-logic, and translates to RuleML/XML http//
ojs.academypublisher.com/index.php/jetwi/article/v
iew/0204343353 Visualization ?
RuleML/Grailog Based on Directed Recursive
Labelnode Hypergraphs (DRLHs)http//www.dfki.uni
-kl.de/boley/drlhops.abs.html
9Grailog
- Graph inscribed logic provides intuition for
logic - Advanced cognitively motivated systematic graph
standard for visual-logic data knowledge
Features orthogonal ? easy to learn,e.g. for
(Business) Analytics - Generalized-graph framework as one uniform 2D
syntax for major (Semantic Web) logics - Pick subset for each targeted knowledge base,map
to/fro RuleML sublanguage, and exchange
validate it, posing queries again in Grailog
10Note on Grailog and API4KB
- Besides mapping Grailog to/fro RuleML,RDF and
UMLOCL can be targeted, with uniform access to
be provided by API4KB - Grailog and API4KB strive to cover maindata
knowledge representation paradigms - RDF (directed-labeled-graph) andRelational
(Datalog-fact-like) data - Ontology (RDFS and description-logic) andRule
(Horn- and general-logic) knowledge - An API can be (initially) designed and tested
with a human in the loop much like a GUI
11Generalized Graphsto Represent and Map Logic
LanguagesAccording to Grailog 1.0 Systematics
- We have used generalized graphs for representing
various logic languages, where basically - Graph nodes (vertices) represent individuals,
classes, etc. - Graph arcs (edges) represent relationships
- Next slidesWhat are the principles of this
representation and what graph generalizations are
required? - Later slidesHow are these graphs mapped
(invertibly) to logic,thus specifying Grailog as
a GUI for knowledge? - Final slidesWhat is the systematics of Grailog
features?
12Grailog Principles
- Graphs should make it easier for humans to read
and write logic constructs via 2D
state-of-the-art representation with shorthand
normal forms, from Controlled English to logic - Graphs should be natural extensions (e.g. n-ary)
of Directed Labeled Graphs (DLGs), often usedto
represent simple semantic nets, i.e. of atomic
ground formulas in function-free dyadic predicate
logic (cf. binary Datalog ground facts, RDF
triples, the Open Graph, and the Knowledge
Graph) - Graphs should allow stepwise refinements for all
logic constructs Description Logic
constructors,F-logic frames, general PSOA RuleML
terms, etc. - Extensions to boxes links should be orthogonal
13Informal Grailog Preview Searles Chinese Room
Argument
- John Searle (emphasis added)
- ... whatever purely formal principles you put
into the computer, they will not be sufficient
for understanding, since a human will be able to
follow the formal principles without
understanding anything.(Minds, Brains and
Programs, 1980)
14Searles Chinese Room Scenario Grailog for
Visual Controlled English
Classes with relationships
SubClassOf
understand
HasInstance
Language
negation
understand
understand
lang
hasLanguage
Chinese
English
lang
lang
lang
lang
with
to
for
ruleset
text
question
reply
with
for
apply
use
Searle
Wang
Searle-replyi
Wang-replyi
distinguishable
Instances with relationships
15Grailog Generalizations
- Directed hypergraphs For n-ary
relationships,directed relation-labeled (binary)
arcs will be generalized to directed
relation-labeled (n-ary) hyperarcs, e.g.
representing relational-database tuples - Recursive (hierarchical) graphs For nested
termsand formulas, modal logics, and
modularization, flat graphs will be generalized
to allow other graphs as complex nodes to any
level of depth - Labelnode graphs For allowing higher-order
logicsdescribing both instances and relations
(predicates),arc labels will also become usable
as nodes
16Graphical Elements Names
- Written into boxes (nodes)Unique (canonical,
distinct) names - Unique Name Assumption (UNA)refined to Unique
Name Specification (UNS) - Written onto boxes (node labels)Non-unique
(alternate, aka) names - Non-unique Name Assumption (NNA)refined to
Non-unique Name Specification (NNS) - Grailog combines UNS and NNS xNS, with x U or N
unique
non-unique
17Instances Individual Constantswith Unique Name
Specifications
mapping
General Graph (node) Logic
unique
unique
Examples Graph Logic
Warren Buffett
Warren Buffett
General Electric
General Electric
US 3 000 000 000
US 3 000 000 000
18Instances Individual Constants with Non-unique
Name Specifications
mapping
General Graph (node) Logic (vertical bar
for non-uniqueness)
non-unique
non-unique
Examples Graph Logic
WB
WB
GE
GE
US 3B
US 3B
19Graphical Elements Hatching Patterns
- No hatching (boxes) Constant
- Hatching (elementary boxes) Variable
20Parameters Individual Variables
General Graph (hatched node) Logic (italics
font, POSL uses ? prefix)
variable
variable
Examples Graph Logic
X
X
Y
Y
A
A
21Predicates Binary Relations (1)
General Graph (labeled arc) Logic
binrel
inst1
binrel(inst1, inst2)
inst2
Example Graph Logic
Trust
Trust(Warren Buffett, General Electric
)
Warren Buffett
General Electric
22Predicates Binary Relations (2)
General Graph (labeled arc) Logic
binrel
binrel(var1, var2)
var1
var2
Example Graph Logic
Trust
Trust(X,Y)
X
Y
23Ground EqualityIdentifying Pairs of Constants
General Graph (unlabeled Logic (with
equality) undirected arc)
inst1
inst1 inst2
inst2
Example Graph Logic
GE
GE General Electric
General Electric
Inspired by Charles Sanders Peirces line of
identity, as a co-reference link
24Ground Equality Defining Constants with
Constants
General Graph (unlabeled Logic (with
oriented undirected, equality) colon-tailed
arc)
inst1
inst1 inst2
inst2
Example Graph Logic
GE
GE General Electric
General Electric
25Ground EqualityDefining Symbolic Constants as
IRIs
General Graph (unlabeled Logic (with
oriented undirected, equality,
webized) colon-tailed arc)
inst
inst IRI
IRI
Example Graph Logic
GenElec
GenElec http//www.ge.com/
http//www.ge.com/
Definitional equality can also be used for the
prefix part of the CURIE notation
26Negated Predicates Binary Relations (Shorthand)
General Graph (dashed arc) Logic
binrel
inst1
? binrel(inst1, inst2)
inst2
Example Graph Logic
Trust
? Trust( Joe Smallstock, General
Electric )
Joe Smallstock
General Electric
27Negated Predicates Binary Relations(Long Form)
General Graph (dashed box) Logic
binrel
inst1
? (binrel(inst1, inst2))
inst2
Example Graph Logic
Trust
? (Trust( Joe Smallstock, General
Electric ))
Joe Smallstock
General Electric
28Ground Inequality Pairwise Difference(Shorthand)
General Graph (dashed Logic (with
equality) unlabeled undirected arc)
inst1
inst1 ? inst2
inst2
Example Graph Logic (with equality)
Joe Smallstock ? Warren Buffett
Warren Buffett
Joe Smallstock
29Ground Inequality Pairwise Difference(Long Form)
General Graph (dashed box, Logic (with
equality) unlabeled undirected arc)
inst1
? (inst1 inst2)
inst2
Example Graph Logic (with equality)
? (Joe Smallstock Warren Buffett)
Warren Buffett
Joe Smallstock
30Graphical Elements Arrows (1)
- Labeled arrows (directed links) for arcs and
hyperarcs (where hyperarcs cut through nodes
intermediate between first and last)
31Predicates n-ary Relations (ngt1)
General Graph (hyperarc) Logic
rel
rel(inst1, inst2, ..., instn-1, instn)
inst1
inst2
instn
instn-1
Example Graph Logic (n3)
Invest(WB, GE, US 3109)
Invest
WB
GE
US 3109
32Negated Predicates n-ary Relations(Shorthand)
General Graph (dashed hyperarc) Logic
rel
? rel(inst1, inst2, ..., instn-1, instn)
inst1
inst2
instn
instn-1
Example Graph Logic (n3)
? Invest(WB, GE, US
4109)
Invest
WB
GE
US 4109
33Negated Predicates n-ary Relations(Long Form)
General Graph (dashed box) Logic
rel
? (rel(inst1, inst2, ..., instn-1,
instn))
inst1
inst2
instn
instn-1
Example Graph Logic (n3)
? (Invest(WB, GE, US
4109))
Invest
WB
GE
US 4109
34Implicit Conjunction of Formula
GraphsCo-Occurrence on Graph Top-Level
General Graph (m hyperarcs) Logic
rel1(inst1,1, inst1,2, ..., inst1,n1) ?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm)
instm,1
instm,2
instm,nm
relm
Example Graph (2 hyperarcs) Logic
WB
GE
Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104)
US 2104
Invest
35Explicit Conjunction of Formula Graphs
Co-Occurrence in (parallel-processing) And Node
General Graph (solidlinear) Logic
(rel1(inst1,1, inst1,2, ..., inst1,n1) ?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm))
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
36 Not of And of Formula Graphs Co-Occurrence in
a Nots And Node
General Graph (dashed/solidlinear) Logic
?(rel1(inst1,1, inst1,2, ..., inst1,n1)
?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm))
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
?(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
37 Not of And (Nand) of Formula Graphs
Co-Occurrence in Nand Node (Shorthand)
General Graph (dashedlinear) Logic
?(rel1(inst1,1, inst1,2, ..., inst1,n1)
?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm))
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
?(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
38Disjunction of Formula Graphs Co-Occurrence in
Or Node
General Graph (solidwavy) Logic
(rel1(inst1,1, inst1,2, ..., inst1,n1) ?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm) )
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
39Not of Or of Formula Graphs Co-Occurrence in a
Nots Or Node
General Graph (dashed/solidlinear/wavy) Logic
?(rel1(inst1,1, inst1,2, ..., inst1,n1)
?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm) )
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
?(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
40Not of Or (Nor) of Formula Graphs
Co-Occurrence in Nor Node (Orthogonal Shorthand)
General Graph (dashedwavy) Logic
?(rel1(inst1,1, inst1,2, ..., inst1,n1)
?
inst1,1
inst1,2
inst1,n1
rel1
...
... ?
relm(instm,1, instm,2, ...,instm,nm) )
instm,1
instm,2
instm,nm
relm
Example Graph Logic
WB
GE
?(Invest(WB, GE, US 3109) ?
US 3109
Invest
JS
VW
Invest(JS, VW, US 2104))
US 2104
Invest
41From Hyperarc Crossings to Node Copies as a
Normalization Sequence (1)
Hypergraph (2 hyperarcs, crossing inside
a node)
DLG (4 arcs, do not specify to whom Latin is
shown or taught)
Show
Show
to
Paul
Paul
John
Latin
John
Latin
Mary
Mary
Kate
Kate
to
Teach
Teach
Symbolic Controlled English John shows Latin to
Kate. Mary teaches Latin to Paul.
42From Hyperarc Crossings to Node Copies as a
Normalization Sequence (1)
Hypergraph (2 hyperarcs, crossing outside
nodes)
DLG (4 arcs, do not specify to whom Latin is
shown or taught)
Show
Show
to
Paul
Paul
John
Latin
John
Latin
Mary
Kate
Mary
Kate
to
Teach
Teach
43From Hyperarc Crossings to Node Copies as a
Normalization Sequence (1)
Hypergraph (2 hyperarcs, parallel-cutting
a node)
DLG (4 arcs, do not specify to whom Latin is
shown or taught)
Show
to
Kate
John
Latin
John
Latin
Kate
Show
Mary
Paul
Mary
Paul
Teach
to
Teach
The hyperarc for, e.g., ternary
Show(John,Latin,Kate) can be seen as the path
composition of 2 arcs for binary Show(John,Latin)
and binary to(Latin,Kate)
44From Hyperarc Crossings to Node Copies ? Insert
on Correct Binary Reduction
Hypergraph (2 hyperarcs, parallel-cutting
a node)
DLG (8 arcs with 4 reified relation/ship nodes
to point to arguments)
Show
Show1
arg1
arg2
arg3
Kate
John
John
Latin
Latin
Kate
Show
Mary
Paul
Mary
Paul
Teach
arg1
arg2
arg3
Teach1
Teach
45From Hyperarc Crossings to Node Copies as a
Normalization Sequence (1)
Hypergraph (2 hyperarcs, employing a node
copy)
Logic (2 relations, employing a symbol copy)
Show(John, Latin, Kate) ? Teach(Mary, Latin,
Paul)
Kate
John
Latin
Show
Mary
Latin
Paul
Teach
Both Latin occurrences remain one node even
when copied for easier layout Having a unique
name, Latin copies can be merged again. This
fully node copied normal form can help to learn
the symbolic form, is implemented by Grailog KS
Viz, and demoed in the Loan Processor test suite
46From Predicate Labels on Hyperarcs to Labelnodes
Starting Hyperarcs
General Graph (hyperarc with Logic
rect4vex-shaped labelnode)
rel(inst1, inst2, ..., instn-1, instn)
rel
inst1
inst2
instn
instn-1
(Shorthand)
rel
inst1
inst2
instn
instn-1
(Normal Form)
Example Graph Logic (n3)
Invest(WB, GE, US 3109)
Invest
WB
GE
US 3109
WB
GE
Invest
US 3109
47From Predicate Labels on Arcsto Labelnodes
Starting Binary Hyperarcs
General Graph (arc) Logic
binrel
binrel(inst1, inst2)
inst1
inst2
binrel
inst1
inst2
Example Graph Logic
Trust(Warren Buffett, General Electric)
Trust
Warren Buffett
General Electric
Trust
Warren Buffett
General Electric
48Arities Smaller than in Binary DLGsLabelnodes
Starting Unary Hyperarcs (cf. Slide on Classes,
Concepts, Types)
General Graph Logic
unaryrel(inst1)
unaryrel
inst1
Example Graph Logic
Frugal(Warren Buffett)
Frugal
Warren Buffett
49Labelnodes Starting Hyperarcs Enable Second-Order
Predicates (e.g. Binary)Hyperarcs with
Labelnode Arguments
General Graph (2-adorned rect- Logic
4vex 2nd order)
binrel2ndord(rel1, rel2)
binrel2ndord
rel1
rel2
2
Example Graph Logic
Antonym(Frugal, Prodigal)
Prodigal
Frugal
Antonym
2
50Arities Smaller than in Binary DLGsLabelnodes
for Nullary Hyperarcs(cf. Propositional Logic)
General Graph Logic
nullaryrel()
nullaryrel
Example Graph Logic
Sunny()
Sunny
51Functions Actively Applied toArguments
(Shorthand)
General Graph (hyperarc with Logic
rect4cave-shaped labelnode)
fun(inst1, inst2, ..., instn-1, instn)
inst1
inst2
instn
instn-1
fun
Example Graph Logic (n3)
Profit(WB, YY, 2011)
WB
YY
2011
Profit
52Function Apps ? Value-Returning Active Call
(Long Form)
General Graph (round2cave-shaped Logic
enclosing box)
fun(inst1, inst2, ..., instn-1, instn)
inst1
inst2
instn
instn-1
fun
Example Graph Logic (n3)
Profit(WB, YY, 2011)
WB
YY
2011
Profit
53Function Apps ? Value-ReturningResult for
Definition of Next Slide
General Graph Logic
val
val
Example Graph Logic (n3)
US 2106
US 2106
54Function Apps ? Value-ReturningLogic with
Equality Definition (1)
General Graph (ground) Logic
fun(inst1, inst2, ..., instn-1, instn)
val
val
inst1
inst2
instn
instn-1
fun
Example Graph Logic (n3)
Profit(WB, YY, 2011)
US 2106
WB
YY
US 2106
2011
Profit
55Function Apps ? Value-ReturningLogic with
Equality Definition (2)
General Graph (inst/var terms) Logic
(?vari) fun(term1, term2, ..., termn)
val
val
term1
term2
termn
fun
Example Graph Logic (n1)
(? X) Double(X) Mult(X,
2)
Double
Mult
2
X
X
56Double Function Sample CallRewriting Trace (1)
Graph Logic
Double(3)
Double
3
Call/query of Double instantiates equality
definition of previous slide (X3)
57Double Function Sample CallRewriting Trace (1)
Graph Logic
Mult(3, 2)
Mult
3
2
Call/query of Mult assumed to be computed by a
built-in definition (32)
58Double Function Sample CallRewriting Trace (1)
Graph Logic
6
6
More in slides about Functional-Logic Programming
with (oriented) equations
59Function Apps ? Value-Denoting Passive Data
Construction
General Graph (rect2cave-shaped Logic
(POSL) enclosing box)
funinst1, inst2, ..., instn-1, instn
inst1
inst2
instn
instn-1
fun
Example Graph Logic (n3)
ProfitWB, YY, 2011
WB
YY
2011
Profit
60Predicates Unary Relations (Classes, Concepts,
Types)
General Graph (class applied Logic to
instance node)
class
class(inst1)
HasInstance
inst1
Example Graph Logic
Billionaire
Billionaire( Warren Buffett)
Warren Buffett
61Negated Predicates Unary Relations
General Graph (class dash-applied Logic to
instance node)
class
? class(inst1)
not HasInstance
inst1
Example Graph Logic
Billionaire
? Billionaire( Joe Smallstock)
Joe Smallstock
62Graphical Elements Arrows (2)
- Arrows for special arcs and hyperarcs
- HasInstance Connects class, as labelnode,with
instance (hyperarc of length 1) - As in DRLHs and shown earlier, labelnodes can
also be used (instead of labels) for hyperarcs of
length gt 1 - SubClassOf Connects subclass, unlabeled,with
superclass (arc, i.e. of length 2) - Implies Hyperarc from premise(s) to conclusion
- Object-IDentified slots and shelves Bulleted
arcs and hyperarcs
63Class Hierarchies (Taxonomies) Subclass Relation
General Graph (two nodes) (Description) L
ogic
class2
SubClassOf
class1 class2
class1
Example Graph (Description) Logic
Rich
Billionaire Rich
Billionaire
64Class Hierarchies (Taxonomies) Negated Subclass
Relation
General Graph (two nodes) (Description) L
ogic
class2
not SubClassOf
class1 class2
class1
Example Graph (Description) Logic
Poor
Billionaire Poor
Billionaire
65Intensional-Class Constructions
(Ontologies)Class Intersection
General Graph (solidlinear node, (Description)
as for conjunction) Logic
class1 class2 classn
class2
class1
classn
. . .
. . .
Example Graph (Description) Logic
Billionaire Benefactor Environmentalist
66Intensional-Class ApplicationsClass Intersection
General Graph (complex class
(xNS-Description) applied to instance node)
Logic
(class1 class2 classn)
(inst1)
class2
class1
classn
. . .
. . .
inst1
Example Graph (xNS-Description)
Logic
(Billionaire Benefactor
Environmentalist) (Warren Buffett)
Warren Buffett
67Intensional-Class Constructions
(Ontologies)Class Union
General Graph (solidwavy node, (Description) a
s for disjunction) Logic
class1 class2 classn
class2
class1
classn
. . .
. . .
Example Graph (Description) Logic
Billionaire Benefactor Environmentalist
68Intensional-Class ApplicationsClass Union
General Graph (complex class
(xNS-Description) applied to instance node)
Logic
(class1 class2 classn)
(inst1)
class2
class1
classn
. . .
. . .
inst1
Example Graph (xNS-Description)
Logic
(Billionaire Benefactor
Environmentalist) (Warren Buffett)
Warren Buffett
69Intensional Class Constructions
(Ontologies)Class Complement
General Graph (Description) (dashedlinear
node, Logic as for negation contains node to
be complemented)
Arbitrary class Atomic class
(shorthand)
? class
class
class
Example Graph (Description) Logic
? Billionaire
Billionaire
Billionaire
70Class Hierarchies (Taxonomy DAGs)Top and Bottom
General Top (special node) (Description)
Logic
- (owlThing)
General Bottom (special node) (Description)
Logic
-
- (owlNothing)
71Intensional Class Constructions
(Ontologies)Class-Property Restriction?Existenti
al (1)
General Graph (shorthand)
(Description) Logic
?binrel
?binrel . class
class
Example Graph (Description)
Logic
? Substance
Physical
?Substance . Physical
A kind of schema, where Top class is specialized
to have (multi-valued) attribute/property,
Substance, with at least one value typed by class
Physical
72Intensional Class Constructions (Ontologies)
Class-Property Restriction?Existential (1)
General Graph (normal) (Description)
Logic
?binrel
?binrel . class
class
Example Graph (Description)
Logic
? Substance
Physical
?Substance . Physical
A kind of schema, where Top class is specialized
to have (multi-valued) attribute/property,
Substance, with at least one value typed by class
Physical
73Instance Assertions (Populated Ontologies)
Using Restriction for ABox?Existential (1)
General Graph (shorthand) (xNS-Description)
Logic
?binrel
class
?binrel.class(inst0) ?
class(inst1) ?
binrel
binrel(inst0, inst1)
inst0
inst1
Example Graph (xNS-Description) Logic
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Substance(Socrates,
P1)
Physical
Substance
Socrates
P1
74Instance Assertions (Populated Ontologies)
Using Restriction for ABox?Existential (1)
General Graph (normal) (xNS-Description)
Logic
?binrel
class
?binrel.class(inst0) ?
class(inst1) ?
binrel
binrel(inst0, inst1)
inst0
inst1
Example Graph (xNS-Description) Logic
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Substance(Socrates,
P1)
Physical
Substance
Socrates
P1
75Intensional Class Constructions
(Ontologies)Class-Property Restriction?Universal
(1)
General Graph (shorthand)
(Description) Logic
?binrel
?binrel . class
class
Example Graph (Description)
Logic
? Substance
Physical
?Substance . Physical
A kind of schema, where Top class is specialized
to have (multi-valued) attribute/property,
Substance, with each value typed by class Physical
76Intensional Class Constructions
(Ontologies)Class-Property Restriction?Universal
(1)
General Graph (normal) (Description)
Logic
?binrel
?binrel . class
class
Example Graph (Description)
Logic
? Substance
Physical
?Substance . Physical
A kind of schema, where Top class is specialized
to have (multi-valued) attribute/property,
Substance, with each value typed by class Physical
77Instance Assertions (Populated Ontologies)
Using Restriction for ABox?Universal (1)
General Graph (shorthand)
(xNS-Description) Logic
?binrel
class
?binrel.class(inst0) ?
class(inst1) ?
. . .
class(instn) ?
. . .
binrel
inst1
inst0
binrel(inst0, inst1) ?
. . .
instn
. . .
binrel(inst0, instn)
binrel
Example Graph (xNS-Description)
Logic
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Physical(P2)
? Substance(Socrates, P1) ? Substance(Socrates,
P2)
Physical
Substance
P1
Socrates
P2
Substance
78Instance Assertions (Populated Ontologies)
Using Restriction for ABox?Universal (1)
General Graph (normal) (xNS-Description)
Logic
?binrel
class
?binrel.class(inst0) ?
class(inst1) ?
. . .
class(instn) ?
. . .
binrel
inst1
inst0
binrel(inst0, inst1) ?
. . .
instn
. . .
binrel(inst0, instn)
binrel
Example Graph (xNS-Description)
Logic
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Physical(P2)
? Substance(Socrates, P1) ? Substance(Socrates,
P2)
Physical
Substance
Substance
P1
Socrates
P2
Substance
79Existential vs. Universal Restriction(Physical/Me
ntal Assumed Disjoint Can Be Explicated via
Bottom Intersection)
Consistent
Example Graph (xNS-Description)
Logic
Mental
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Mental(P3)
? Substance(Socrates, P1) ? Substance(Socrates,
P3)
Physical
Substance
P1
Socrates
P3
Substance
Inconsistent
Example Graph (xNS-Description)
Logic
Mental
? Substance
?Substance.Physical
(Socrates) ? Physical(P1) ? Mental(P3)
? Substance(Socrates, P1) ? Substance(Socrates,
P3)
Physical
Substance
P1
Socrates
P3
Substance
80LuckyParent Example (1)
LuckyParent Person ?Spouse.Person
?Child.(?Poor ?Child.Doctor)
LuckyParent
EquivalentClasses
? Child
? Child
Poor
Person
Doctor
? Spouse
81LuckyParent Example (1)
LuckyParent Person ?Spouse.Person
?Child.(?Poor ?Child.Doctor)
LuckyParent
? Child
? Child
Poor
Person
Doctor
? Spouse
? Spouse
Person
82LuckyParent Example (1)
LuckyParent Person ?Spouse.Person
?Child.(?Poor ?Child.Doctor)
LuckyParent
Person
? Child
? Child
Poor
Doctor
? Spouse
Person
83LuckyParent Example (1)
LuckyParent Person ?Spouse.Person
?Child.(?Poor ?Child.Doctor)
LuckyParent
Person
? Child
? Child
Poor
Doctor
? Spouse
Person
84Object-Centered LogicGrouping Binary Relations
Around Instance
General Graph (Object-Centered) (inst0-
centered) Logic
class
class(inst0) ?
binrel1(inst0, inst1) ?
binrel1
inst1
. . .
inst0
. . .
binreln(inst0, instn)
instn
binreln
Example Graph (Object-Centered) (Socra
tes-centered) Logic
Philosopher
Philosopher(Socrates) ? Substance(Socrates, P1)
? Teaching(Socrates, T1)
Substance
P1
Socrates
T1
Teaching
85RDF-Triple (Subject-Centered) Logic Grouping
Properties Around Instance
General Graph (Subject-Centered) (inst0
-centered) Logic
class
(inst0, rdftype, class),
(inst0, property1, inst1),
property1
inst1
. . .
inst0
. . .
(inst0, propertyn, instn)
instn
propertyn
Example Graph (Subject-Centered) (Socr
ates-centered) Logic
Philosopher
(Socrates, rdftype, Philosopher), (Socrates,
Substance, P1), (Socrates, Teaching, T1)
Substance
P1
Socrates
T1
Teaching
86Logic of Frames (Records) AssociatingSlots
with OID-Distinguished Instance
General Graph (PSOA Frame) (bulleted
arcs) Logic
class
inst0class(
inst0 ? class, slot1 inst1, . . . slotn
instn
slot1-gtinst1
slot1
inst1
. . .
inst0
. . .
slotn-gtinstn)
instn
slotn
Example Graph (PSOA Frame)
Logic
Philosopher
SocratesPhilosopher( Substance-gtP1
Teaching-gtT1)
Substance
P1
Socrates
T1
Teaching
87Logic of Shelves (Arrays) AssociatingTuple(s)
with OID-Distinguished Instance
General Graph (PSOA Shelf) (bulleted
hyperarc) Logic
inst0class(
instm
inst1
. . .
inst1, , instm)
class
inst0
Example Graph (PSOA Shelf)
Logic
399 BC
c. 469 BC
Philosopher
SocratesPhilosopher( c. 469 BC, 399 BC)
Socrates
88Positional-Slotted-Term Logic Associating
Tuple(s)Slots with OID-Distinged Instance
General Graph (PSOA Positional-
Slotted-Term) Logic
instm
inst1
. . .
class
inst0class(
inst1, , instm slot1-gtinst1
slot1
inst1
inst0
. . .
instn
. . .
slotn
slotn-gtinstn)
Example Graph (PSOA Positional-
Slotted-Term) Logic
399 BC
c. 469 BC
Philosopher
SocratesPhilosopher( c. 469 BC, 399 BC
Substance-gtP1 Teaching-gtT1)
Substance
P1
Socrates
T1
Teaching
89Term and Formula DescriptionAssociating Slots
with Complex Node
Complex Node (e.g. Roundangle) having Outward
Slots
slot1
inst1
. . .
instn
slotn
. . .
Slots visible in outer context. Example Like for
elementary node
Complex Node (e.g. Roundangle) having Inward
Slots
slot1
inst1
. . .
instn
slotn
. . .
Slots visible in inner context. Example Later
slide with closure slot
90Rules Relations Imply Relations (1)
General Graph (ground, Logic
shorthand)
rel1
rel1(inst1,1, inst1,2, ..., inst1,n1) ?
inst1,1
inst1,2
inst1,n1
rel2(inst2,1, inst2,2, ...,inst2,n2)
inst2,1
inst2,2
inst2,n2
rel2
Example Graph Logic
Invest
WB
Invest(WB, GE, US 3109) ?
GE
US 3109
JS
VW
Invest(JS, VW, US 5103)
US 5103
Invest
91Rules Relations Imply Relations (1)
General Graph (ground, normal) Logic
rel1
rel1(inst1,1, inst1,2, ..., inst1,n1) ?
inst1,1
inst1,2
inst1,n1
rel2(inst2,1, inst2,2, ...,inst2,n2)
inst2,1
inst2,2
inst2,n2
rel2
Example Graph Logic
Invest
WB
Invest(WB, GE, US 3109) ?
GE
US 3109
Invest(JS, VW, US 5103)
JS
VW
Invest
US 5103
92Rules Relations Imply Relations (2)
General Graph (non-ground, Logic where
Implies arrow creates universal closure)
(?vari,j) rel1(var1,1, var1,2, ...,
var1,n1) ?
rel1
var1,1
var1,2
var1,n1
rel2(var2,1, var2,2, ...,var2,n2)
var2,1
var2,2
var2,n2
rel2
Example Graph Logic
Invest
(? X, Y, A, U, V, B) Invest(X, Y, A) ?
X
Y
A
Invest(U, V, B)
U
V
B
Invest
93Rules Relations Imply Relations (3)
General Graph (inst/var terms) Logic
rel1
(?vari,j) rel1(term1,1, term1,2, ...,
term1,n1) ?
term1,1
term1,2
term1,n1
rel2(term2,1, term2,2, ..., term2,n2)
term2,1
term2,2
term2,n2
rel2
Example Graph Logic
Invest
WB
(? Y, A) Invest(WB, Y, A) ?
Y
A
JS
Invest(JS, Y, US 5103)
Y
US 5103
Invest
94Rules Conjuncts Imply Relations (1)
General Graph (shorthand) Logic
rel1
(?vari,j) rel1(term1,1, term1,2, ...,
term1,n1) ?
term1,1
term1,2
term1,n1
rel2
term2,1
term2,2
term2,n2
rel2(term2,1, term2,2, ..., term2,n2)
?
rel3
term3,1
term3,2
term3,n3
rel3(term3,1, term3,2, ..., term3,n3)
Example Graph Logic
(? Y, A) Invest(WB, Y, A) ? Trust(JS, Y) ?
Invest
WB
Y
A
Trust
JS
Y
Invest(JS, Y, US 5103)
Invest
JS
US 5103
Y
95Rules Conjuncts Imply Relations (1)
General Graph (prenormal) Logic
(?vari,j) rel1(term1,1, term1,2, ...,
term1,n1) ?
term1,1
term1,2
term1,n1
rel1
term2,1
term2,2
term2,n2
rel2
rel2(term2,1, term2,2, ..., term2,n2)
?
term3,1
term3,2
term3,n3
rel3
rel3(term3,1, term3,2, ..., term3,n3)
Example Graph Logic
(? Y, A) Invest(WB, Y, A) ? Trust(JS, Y) ?
WB
Invest
Y
A
JS
Trust
Y
Invest(JS, Y, US 5103)
JS
Invest
Y
US 5103
96Rules Conjuncts Imply Relations (1)
General Graph (normal) Logic
closure
universal
(?vari,j) (rel1(term1,1, term1,2, ...,
term1,n1) ?
term1,1
term1,2
term1,n1
rel1
term2,1
term2,2
term2,n2
rel2
rel2(term2,1, term2,2, ...,
term2,n2) ?
term3,1
term3,2
term3,n3
rel3
rel3(term3,1, term3,2, ...,
term3,n3))
Example Graph Logic
closure
universal
(? Y, A) (Invest(WB, Y, A) ? Trust(JS, Y)
?
WB
Invest
Y
A
JS
Trust
Y
Invest(JS, Y, US 5103))
JS
Invest
Y
US 5103
97Rules Conjuncts Imply Relations (2)
Example RuleML/XML Logic
ltImplies closure"universal"gt ltAndgt
ltAtomgt ltRelgtInvestlt/Relgt
ltInd unique"no"gtWBlt/Indgt
ltVargtYlt/Vargt ltVargtAlt/Vargt
lt/Atomgt ltAtomgt
ltRelgtTrustlt/Relgt ltInd
unique"no"gtJSlt/Indgt ltVargtYlt/Vargt
lt/Atomgt lt/Andgt ltAtomgt
ltRelgtInvestlt/Relgt ltInd unique"no"gtJSlt/Ind
gt ltVargtYlt/Vargt ltDatagtUS
5103lt/Datagt lt! superscript 3 to be parsed
as Unicode U00B3 --gt lt/Atomgt lt/Impliesgt
(? Y, A) (Invest(WB, Y, A) ? Trust(JS, Y)
?
Invest(JS, Y, US 5103))
Proposing an attribute unique with value "no" for
NNS, and "yes" for UNS as the default
98Implication-Defined Predicate Odd RuleML/XML
Serialization
Datalog RuleML/XML Logic
ltImplies closure"universal"gt ltAndgt
ltAtomgt ltRelgtGreaterlt/Relgt
ltVargtXlt/Vargt ltDatagt2lt/Datagt
lt/Atomgt ltAtomgt
ltRelgtPrimelt/Relgt ltVargtXlt/Vargt
lt/Atomgt lt/Andgt ltAtomgt
ltRelgtOddlt/Relgt ltVargtXlt/Vargt
lt/Atomgt lt/Impliesgt
(? X) Greater(X, 2) ? Prime(X) ?
Odd(X)
Graph (prenormal)
X
Greater
2
Prime
X
Odd
Graph ? arrow normalizes to RuleML-like
closure"universal"
X
99Relations Equivalent to Relations
General Graph (inst/var terms) Logic
rel1
(?vari,j) rel1(term1,1, term1,2, ...,
term1,n1) ?
term1,1
term1,2
term1,n1
rel2(term2,1, term2,2, ..., term2,n2)
term2,1
term2,2
term2,n2
rel2
Example Graph Logic
Transfer
(? X, Y, A) Transfer(X, Y, A) ?
X
Y
A
Receive(Y, X, A)
X
Y
A
Receive
100Equivalence-Defined Predicate EvenRuleML/XML
Serialization
FOL RuleML/XML Logic
ltEquivalent oriented"yes" closure"universal"gt
ltAtomgt ltRelgtEvenlt/Relgt
ltVargtXlt/Vargt lt/Atomgt ltAtomgt
ltRelgtDivisiblelt/Relgt ltVargtXlt/Vargt
ltDatagt2lt/Datagt lt/Atomgt lt/Equivalentgt
(? X) Even(X) ? Divisible(X, 2)
Graph (prenormal)
Even
X
Divisible
2
X
Graph ? arrow normalizes to RuleML-like
closure"universal"
101Equality-Defined Function DoubleRuleML/XML
Serialization
Functional RuleML/XML Logic
ltEqual oriented"yes" closure"universal"gt
ltExprgt ltFun per"value"gtDoublelt/Fungt
ltVargtXlt/Vargt lt/Exprgt ltExprgt
ltFun per"value"gtMultlt/Fungt ltVargtXlt/Vargt
ltDatagt2lt/Datagt lt/Exprgt lt/Equalgt
(? X) Double(X) Mult(X, 2)
Graph (prenormal)
Double
X
Mult
2
X
Graph arrow normalizes to RuleML-like
closure"universal"
102Positional-Slotted-Term Logic Rule-defined
Anonymous Family Frame (Visualized from
IJCAI-2011 Presentation)
Example Graph (PSOA Positional-
Slotted-Term) Logic
family
Group ( Forall ?Hu ?Wi ?Ch
( ?1family(husb-gt?Hu
wife-gt?Wi
child-gt?Ch) -
And(married(?Hu ?Wi)
Or(kid(?Hu ?Ch)
kid(?Wi ?Ch))) )
married(Joe Sue)
kid(Sue Pete) )
?Hu
husb
wife
?Wi
?1
child
?Ch
?Hu
?Wi
Joe
Sue
?Hu
?Ch
?Ch
?Wi
Sue
Pete
103Positional-Slotted-Term Logic Ground Facts,
incl. Deduced Frame, Model Family Semantics
Example Graph (PSOA Positional-
Slotted-Term) Logic
family
Group (
ofamily(husb-gtJoe
wife-gtSue
child-gtPete)
married(Joe
Sue) kid(Sue Pete)
)
Joe
husb
Sue
wife
o
child
Pete
Previous slides existential variable ?1 in rule
head becomes new OID constant o in frame fact,
deduced from relational facts
Joe
Sue
Sue
Pete
For reference implementation of PSOA querying see
PSOATransRun
104Positional-Slotted-Term Logic Conversely,Given
Facts, Rule Can Be Inductively Learned
family
Example Graph
Mn
husb
. . .
Wn
wife
on
family
child
Cz
M1
husb
W1
wife
o1
child
C1
Mn
Wn
. . .
Abstracting OIDconstants o1, ... , onto regain
existentialvariable ?1 of previous rule, now
induced from matchingrelational and frame
facts Knowledge from data
M1
W1
Mn
Cx
Wn
Cy
. . .
M1
C1
W1
C1
105Modally Embedded Propositions
General Graph (Modal) Logic (complex
snip2vex node, used to encapsulate what
another agent believes, wants, etc.)
believe
agent
graph
believeagent(graph)
Example Graph (Modal) Logic
Invest
GE
GE
believe
WB
US 4109
believeGE(Invest(WB,
GE, US 4109))
Can be serialized in the evolving Modal RuleML/XML
106Beliefs and Desires asPropositional Attitudes (1)
Propositional attitude a mental state relating
a person to a proposition (which can involve
other persons)
If George desires action A and believes(the
proposition) that originator O will cause A, then
George supports O.
Grailog
George
107Beliefs and Desires asPropositional Attitudes (2)
- Example If John desires the negation of(state
of affairs) X, then he does not desire X.
John
Grailog
While variables A and O of the earlier example
are bound to an action and originator individual,
variable X here is bound to an entire proposition
or an arbitrarily complex set of propositions
108Graphical Elements Line Styles
- Solid lines (boxes links) Positive
- Dashed lines (boxes links) Negative
- Wavy lines (boxes) Disjunctive
- Light lines (unlabeled arrows) HasInstance
- Light lines (unlabeled undirected links)
SameIndividual - Heavy lines (unlabeled arrows) SubClassOf
- Heavy lines (unlabeled undirected links)
EquivalentClasses - Double lines (unlabeled arrows) Implies
- Double lines (unlabeled double-headed arrows)
Equivalence - Double lines (unlabeled undirected links)
Equality - Colon tails (unlabeled links) TailDefinedByHead
109Orthogonal Graphical Features? Axes of Grailog
Systematics
- Box axes
- Corners pointed vs. snipped vs. rounded
- To quote/copy vs. reify/instantiate vs. evaluate
contents(cf. Lisp, Prolog, Relfun, Hilog, RIF,
CL, and IKL) - Shapes (rectangle-derived) composed from sides
that are straight vs. concave vs. convex - For neutral vs. function vs. relation contents
- Contents elementary vs. complex nodes
- Arrow axes
- Shafts single vs. double
- Heads triangular vs. diamond
- Tails plain vs. bulleted vs. colonized
- Box Arrow (line-style) axessolid vs. dashed,
linear vs. (box only) wavy
110Mnemonics for Basic Box Shapes
skateboard halfpipe
function contents
concave
database barrel
convex
relation contents
111Graphical Elements Box Systematics ? Axes of
Shapes and Corners
Corner
Per Copy Instantiation
Value Rect- Snip- Round-
Shape
Neutral -angle Individual (Function
Application) -2cave Function -4cave Propositio
n (Relation Application) -2vex Relation (incl.
Class) -4vex
112Graphical Elements Boxes ? Function/Relation-Neu
tral Shape of Angles Varied w.r.t. Corner
Dimension
- Rectangle Neutral per copy nodes quote their
contents - Snipangle (octagon) Neutral per instantiation
nodes dereference contained variables to values
from context - Roundangle (rounded angles) Neutral per value
nodes evaluate their contents through
instantiation of variables and activation of
function/relation applications
2
X
2
Mult
X
Mult
X3
2
2
X
3
Mult
Mult
X3
Assuming Mult built-in function
2
X
Mult
6
X3
113Graphical Elements Boxes ? Concave
- Rect2cave (rectangle with 2 concave - top/bottom
- sides) Elementary nodes for individuals
(instances).Complex nodes for quoted
instance-denoting terms (constructor-function
applications) - Snip2cave (snipped) Elementary nodes for
variables. Complex nodes for instantiated
(reified)function applications - Round2cave (rounded) Complex nodes for
evaluatedbuilt-in or equation-defined function
applications - Rect4cave (4 concave sides) Elementary nodes for
fcts.Complex nodes for quoted functional
(function-denoting) terms - Snip4cave Complex nodes for instantiated functl
terms - Round4cave Complex nodes for evaluated
functional applications (active,
function-returning applications)
114Graphical Elements Boxes ? Convex
- Rect2vex (rectangle with 2 convex - top/bottom -
sides) Elementary nodes for truth constants
(true, false, unknown).Complex nodes for quoted
truth-denoting propositions (embedded relation
applications) - Snip2vex Complex nodes for instantiated
(reified)relation applications - Round2vex Complex nodes for evaluatedrelation
applications (e.g. as atomic formulas) and for
connective uses - Rect4vex Elementary nodes for relations, e.g.
unary ones (classes). Complex nodes for quoted
relational (relation-denoting) terms - Snip4vex Complex nodes for instantiated relatl
terms - Round4vex (oval) Complex nodes for evaluated
relatl applications (active, relation-returning
applications)
115Conclusions (1)
- Grailog 1.0 incorporates feedback on earlier
versions - Graphical elements for novel box arrow
systematics using orthogonal graphical features - Leaving color (except for variables and IRIs) for
other purposes, e.g. highlighting subgraphs (for
retrieval and inference) - Introducing Unique vs. Non-unique Name
Specification - Focus on mapping to a family of logics as in
RuleML - Use cases from cognition to technology to
business - E.g. Logical Foundations of Cognitive
Sciencehttp//www.ict.tuwien.ac.at/lva/Boley_LF
CS/index.html - Processing of earlier Grailog-like DRLHs studied
in Lisp, FIT, and Relfun - For Grailog, aligned with Web-rule standard
RuleMLhttp//wiki.ruleml.org/index.php/Grailog
(Loan Processor test suite)
116Conclusions (2)
- Symbolic-to-visual translators started as
Semantic Web Techniques Fall 2012 Projects - Team 1 A Grailog Visualizer for Datalog RuleML
via XSLT 2.0 Translation to SVG by Sven Schmidt
and Martin KochAn Int'l Rule Challenge 2013
paper demo introduced Grailog KS Viz - Team 8 Visualizing SWRLs Unary/Binary Datalog
RuleML in Grailog by Bo Yan, Junyan Zhang, and
Ismail AkbariA Canadian Semantic Web Symposium
2013 paper gave an overview - Grailog invites feature choice or combination
- E.g. n-ary hyperarcs or n-slot frames or both
- Grailog Initiative on open standardization calls
for further feedback for future 1.x versions
117Future Work (1)
- Refine/extend Grailog, e.g. along with API4KB
effort - Compare with other graph formalisms, e.g.
Conceptual Graphs (http//conceptualstructures.org
) and CoGui tool - Define mappings to/fro UML structure diagrams
OCL, adopting UML behavior diagrams
(http//www.uml.org) - Implement further tools, e.g. as use case for
(Functional) RuleML (http//ruleml.org/fun)
engines - More mappings between graphs, logic, and
RuleML/XMLGrailog generators Further
symbolic-to-visual mappingsGrailog
parsers Initial visual-to-symbolic mappings - Graph indexing querying (cf. http//www.hypergra
phdb.org) - Graph transformations (normal form, typing
homomorphism, merge, ...) - Advanced graph-theoretical operations (e.g., path
tracing) - Exploit Grailog parallelism in implementation
118Future Work (2)
- Develop a Grailog structure editor, e.g.
supporting - Auto-specialize of neutral application boxes
(angles) tofunction apps (2caves) or relation
apps (2vexes), depending on contents - Auto-specialize of neutral operator boxes
(angles) tofunctions (4caves) or relations
(4vexes), depending on context - Synergize with CmapTools/COE, Protégé
visualization plug-ins such as Jambalaya/OntoGraf
and OWLViz for OWL ontologies and Axiomé for SWRL
rules, etc. - Proceed from the 2-dimensional (planar) Grailog
to a 3-dimensional (spatial) one - Utilize advantages of crossing-free layout,
spatial shortcuts,and analogical representation
of 3D worlds - Mitigate disadvantages of occlusion andof harder
spatial orientation and navigation - Consider the 4th (temporal) dimension of
animations to visualize logical inferences, graph
processing, etc.