Logseq Functional Notes Plugin
query-table:: false
#+BEGIN_QUERY
{
:title [“supports ->”]
:query [
:find ?result-page
:in $ ?current-page ?function
:where
[?page :block/name ?current-page]
[?referring-blocks :block/refs ?page]
[?child :block/parent ?referring-blocks]
[?child :block/refs ?child-refs]
[?grandchild :block/parent ?child]
[?child :block/content ?child-content]
[(clojure.string/includes? ?child-content “->”)]
(page-ref ?child ?function)
[?grandchild :block/refs ?grandchild-page]
[?grandchild-page :block/name ?result-page]
]
:inputs [:current-page, “relationship/supports”]
:view (fn [result]
[:div.flex.flex-col
(for [page result]
[:a {:href (str “#/page/” page)} (clojure.string/capitalize page)])])}
}
#+END_QUERY
if supported by -> Deniz Aydemir, then Deniz Aydemir will show up when searching by relationship supported by ->
The problem is that these meaningful connections I want to make are not really metadata, they are actually the content of the notes themselves.
Properties are tied to the first block of a page, or the parent block itself. I wanted a way to create meaningful connections anywhere inside a page, in a child block, or even under a reference to a block.