 
 (errors (datalog/knowledge (clojure.set/union stdlib example-b) rules))
 
-(q* (datalog/knowledge (clojure.set/union stdlib example-b) rules) [?id :match true] :return id)
+(q* (datalog/knowledge (clojure.set/union stdlib example-b) rules) [:vec :notebook/page ?id] :return id)

    (exclusive :pattern :data :pattern/any :pattern/bind :pattern/vector :pattern/map)]

   [(exclusive :step? :data :call :match)]

   [(rule [?page :page/args ?args] (:in ?arg ?args) :return [arg :arg page])
    (rule [?page :page/steps ?steps] (:in ?step ?steps) :return [step :step page])]

    })

(def example-a
  #{[:root_notebook :notebook/description "wooohoo"]
    [:root_notebook :notebook/pages [:root]]
    [:root :page/args [:arg_a :arg_b :arg_c]]
    [:root :page/steps [:b_squared :four :four_a_c :result]]
    [:b_squared :call/fun :fun_mult]
    [:b_squared :call/args [:arg_b :arg_b]]
