A basic, no-plugin version

→

Syntax: relationship + arrow

→

Support the following syntax for aspects (term to describe a “subject - relationship - object” phrase)

→
- [[some evidence]]
    - [[supports]] ->
        - [[a claim]]
→
- [[claim]]
    - <- [[supports]]
        - [[some evidence 1]]
        - [[some evidence 2]]
→
a claim (on the page)
- <- [[supports]]
	- [[some evidence]]
→
some evidence (on the page)
- [[supports]] ->
	- [[a claim]]
→

Pros

→

The arrow solves the problem of dealing with complements

→

Arrow provides a language agnostic relationship direction indicator

→

Uses existing block hierarchy structure already core to logseq

→

Familiar to discourse graph users

→

Cons

→

Less readable when the arrow is pointing “backwards” since default is not to create a separate phrase as the complement

→

Queries

→

I haven’t finished converting these to Logseq queries yet. Can see my work in progress here: knowledge graph queries.

→

x relationship ->: e.g. on evidence page, get claims it supports

1

for block x (e.g. current page)

→

for every block r that contains a page reference to x

→

get child block c of r

→

if c contains -> AND a page reference to [[relationship]]

→

return all children of c

→

get parent block p of r

→

if r contains <- AND a page reference to [[relationship]]

→

return parent of p

→

<- relationship x: e.g. claim page, get supporting evidence

1

for block x

→

for every block r that contains a page reference to x

→

get parent block p of r

→

if block p contains -> and a page reference to relationship

→

return parent of s

→

get child block c of r

→

if block c contains <- and a page reference to relationship

→

return all children of s

→